KR20030050860A - Task function processing method for multi processor system - Google Patents

Task function processing method for multi processor system Download PDF

Info

Publication number
KR20030050860A
KR20030050860A KR1020010081395A KR20010081395A KR20030050860A KR 20030050860 A KR20030050860 A KR 20030050860A KR 1020010081395 A KR1020010081395 A KR 1020010081395A KR 20010081395 A KR20010081395 A KR 20010081395A KR 20030050860 A KR20030050860 A KR 20030050860A
Authority
KR
South Korea
Prior art keywords
task
processor
work
master
slave
Prior art date
Application number
KR1020010081395A
Other languages
Korean (ko)
Other versions
KR100459417B1 (en
Inventor
이재학
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR10-2001-0081395A priority Critical patent/KR100459417B1/en
Publication of KR20030050860A publication Critical patent/KR20030050860A/en
Application granted granted Critical
Publication of KR100459417B1 publication Critical patent/KR100459417B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

PURPOSE: A method for processing a task function of a multiprocessor system is provided to register a task execution function of a divided slave processor in a master processor and manage the task execution function when designing a multiprocessor system. CONSTITUTION: If a master processor is started, a task allocated by a self-task dispatcher is recognized and managed(S401). A slave processor is started(S501), and a periodical polling is executed until the slave processor prepares a task registration. The slave processor transmits a task point list as a response to the polling of the master processor(S502,S503). A task execution with respect to the slave processor is managed using other task dispatcher for the salve processor besides a self task dispatcher of the master processor(S504). A task manager of the master processor registers functional information for controlling the slave processor and a task allocated from the self task dispatcher(S402,S403,S404). A task is executed in accordance with the schedule(S405,S406). If a task which does not executed in the master processor exists(S407), a task execution is instructed to the slave processor by a task pointer of the salve processor(S408,S410). If the salve processor receives a task instruction of a function in a corresponding pointer in the master processor(S505,S506,S507), the salve processor detects the instruction by an interrupt, executes a task instructed by an interrupt service routine(S508), and stores the result in a predetermined position, and the current task routine is returned(S509).

Description

다중 프로세서 시스템의 작업 함수 처리 방법{TASK FUNCTION PROCESSING METHOD FOR MULTI PROCESSOR SYSTEM}How to handle job functions in multiprocessor systems {TASK FUNCTION PROCESSING METHOD FOR MULTI PROCESSOR SYSTEM}

본 발명은 다중 프로세서(Multi-Processor) 시스템의 프로세서간 작업 함수 처리 방법에 관한 것으로, 특히 다중 프로세서 시스템의 설계 시 분할된 슬레이브 프로세서의 작업(Task) 수행 함수를 마스터 프로세서에 등록하여 관리하게 하는 다중 프로세서 시스템의 작업 함수 처리 방법에 관한 것이다.The present invention relates to a method for processing an inter-processor task function of a multi-processor system, and more particularly, to register and manage a task execution function of a divided slave processor in a master processor when designing a multi-processor system. The present invention relates to a method of processing a work function of a processor system.

일반적으로, 다중 프로세서 시스템은 메모리와 입출력 장치를 공유하는 두 개 이상의 프로세서를 가진 시스템을 의미한다.In general, a multiprocessor system refers to a system having two or more processors that share memory and input / output devices.

다중 프로세서와 다중 컴퓨터는 모두 병행적인 연산을 지원한다는 유사점이 있지만, 여러 개의 컴퓨터로 구성된 시스템과 여러 개의 프로세서로 구성된 시스템은 분명한 차이점이 있다.Although both processors and computers support parallel operations, there is a clear difference between systems with multiple computers and systems with multiple processors.

다중 컴퓨터는 컴퓨터들을 통신 라인으로 연결하여 독자적으로 다른 컴퓨터들과 통신을 하지만, 다중 프로세서 시스템은 하나의 운영체제(OS)에 의해 프로세서와 시스템의 다른 요소들 사이의 상호동작이 제어되며, 동일한 문제의 해결을 위해 모든 요소들이 협력한다.Multiple computers connect computers with communication lines to communicate with each other independently, but in a multiprocessor system, the interaction between the processor and other elements of the system is controlled by one operating system (OS). All elements work together to solve the problem.

또한, 다중 프로세서에서는 한 프로세서의 고장이나 에러가 나머지 부분에 미치는 영향이 제한되기 때문에 시스템의 신뢰성을 향상시키게 되는데, 이것은 다수의 독립적인 작업(Task)들이 병렬 적으로 수행되거나, 하나의 작업이 여러 부분으로 나뉘어 각각이 병렬 적으로 수행될 수 있기 때문이다.In addition, multiprocessors can improve the reliability of a system because of the limited impact of one processor failure or error on the rest of the system, which can lead to multiple independent tasks being executed in parallel, This is because they can be divided into parts, each of which can be performed in parallel.

또한, 그 작업은 특정 형태의 처리를 매우 효과적으로 수행하도록 설계된 특별한 프로세서(가령, DSP 프로세서 등)에 할당되어 수행될 수도 있다.In addition, the work may be assigned and performed on a particular processor (eg, a DSP processor, etc.) designed to perform a particular type of processing very effectively.

상기와 같은 다중 처리에서는 프로그램을 병렬로 실행 가능한 작업들로 분할함으로써, 성능을 향상시킬 수 있다.In such multiprocessing, performance can be improved by dividing the program into tasks that can be executed in parallel.

프로그램의 분할(Sharing)은 사용자가 명시적으로 병렬 실행이 가능한 작업을 선언하거나, 보다 효과적인 방법으로 컴파일러가 자동적으로 사용자의 프로그램에서 병렬성을 감지해 냄으로써 구현될 수 있다.Shading of a program can be implemented by declaring tasks that the user can explicitly execute in parallel, or in a more efficient way by the compiler automatically detecting the parallelism in the user's program.

종래의 경우 각 프로세서의 사이클 타임(Cycle Time) 및 프로세싱 속도(Processing Speed)에 차이가 있는 관계로, 각 프로세서 개발자들은 많은 시험에 의해 최적의 작업 분할 및 신호를 추가하거나, 삭제 및 수정하는 방법으로 최대 성능이 수행될 수 있도록 하였다.In the conventional case, there is a difference in the cycle time and the processing speed of each processor, and each processor developer uses a lot of tests to add, delete, and modify the optimal work partition and signal. Maximum performance can be achieved.

그럼, 종래 다중 프로세서 시스템의 작업 함수 처리 방법을 도1을 참조하여 설명한다.The operation function processing method of the conventional multiprocessor system will now be described with reference to FIG.

도1은 종래 다중 프로세서 시스템에서 마스터 프로세서와 슬레이브 프로세서간 IPC(Inter Processor Communication)에 의한 작업 함수 처리 방법을 보인 순서도이다.1 is a flowchart illustrating a method of processing a work function by IPC (Inter Processor Communication) between a master processor and a slave processor in a conventional multiprocessor system.

이에 도시된 바와 같이 마스터 프로세서와 슬레이브 프로세서가 기동을 하면, 각기 자체의 작업 분배기(Task Dispatcher)에 의해 할당된 작업을 프로세서 상호간 인지시키고 관리하게 된다(S101, S201).As shown in FIG. 2, when the master processor and the slave processor are activated, the processors assigned to their respective task dispatchers are recognized and managed between the processors (S101 and S201).

또한, 두 프로세서 상호간 작업 요청과 응답에 대한 IPC 메시지를정의하여(S301), 자체 작업을 수행하던 중 필요에 따라 작업을 요청하고 그 결과를 통보 받을 수 있도록 한다.In addition, by defining the IPC message for the work request and response between the two processors (S301), it is possible to request the work as needed during the operation itself and to be notified of the result.

다음, 마스터 프로세서의 작업 메니저(Task Manager)는 할당된 작업을 소정시간에 걸쳐 등록한 후(S102, S103, S104), 그 스케쥴에 따라 작업을 수행하게 된다(S105).Next, the task manager of the master processor registers the assigned task over a predetermined time period (S102, S103, S104), and then performs a task according to the schedule (S105).

이 과정에서 슬레이브 프로세서에 의한 작업이 있을 경우, 즉 IPC에 의해 슬레이브 프로세서에 작업을 요청해야 될 경우(S106), 기 정의된 IPC 메시지로 슬레이브 프로세서에 전송한다(S107).In this process, when there is a job by the slave processor, that is, when it is necessary to request a job by the slave processor by IPC (S106), it transmits to the slave processor as a predefined IPC message (S107).

한편, 자체의 작업 메니저에서 관리하는 작업 루틴을 수행하던 슬레이브 프로세서는(S202, S203, S204), IPC에 의해 마스터 프로세서에서 작업 요청을 받으면 인터럽트에 의해 이를 검출하여(S203), 인터럽트 서비스 루틴에 의해 요청한 작업을 수행하고(S205) 그 결과를 IPC 메시지로 마스터 측에 전송한 후, 다시 원래 수행하던 작업 루틴으로 복귀하게 된다(S206).On the other hand, the slave processor that has performed the work routine managed by its own work manager (S202, S203, S204), when receiving a work request from the master processor by the IPC detects it by an interrupt (S203), by the interrupt service routine After performing the requested operation (S205) and transmitting the result to the master side in the IPC message, it returns to the work routine that was originally performed again (S206).

물론, IPC에 의해 작업을 요청한 마스터 측은 기 수행하던 작업 루틴으로 복귀하고(S108), 추후 슬레이브 측에서 보내온 작업 수행 결과를 보고 받는다.Of course, the master requesting the work by the IPC returns to the previously performed work routine (S108), and receives a report on the result of the work performed from the slave later.

그러나, 상기 종래의 방법은 각 프로세서간 작업 내용과 IPC(Inter Processor Communication)가 명확하고 성능 개선에 상당한 장점이 있으나, IPC 구성의 난이도가 상대적으로 정교해야 하며 실험에 의한 검증 미흡 시, 각 프로세서(마스터, 슬레이브 프로세서) 개발자가 모두 IPC를 수정 적용해야 하므로 개발에 어려운 문제점이 있다.However, the conventional method has a clear advantage of work between each processor and IPC (Inter Processor Communication), and has a significant advantage in improving performance.However, the difficulty of IPC configuration must be relatively sophisticated. Master and Slave Processor) There is a problem in development because all developers have to modify and apply IPC.

따라서, 본 발명은 상기와 같은 종래의 문제점을 해결하기 위하여 창출한 것으로, 다중 프로세서 시스템의 설계 시 분할된 슬레이브 프로세서의 작업(Task) 수행 함수를 마스터 프로세서에 등록하여 관리하게 하는 다중 프로세서 시스템의 작업 함수 처리 방법을 제공함에 그 목적이 있다.Accordingly, the present invention has been created to solve the above-mentioned conventional problems, the task of the multi-processor system to register and manage the task execution function of the divided slave processor in the design of the multi-processor system to the master processor The purpose is to provide a function handling method.

이와 같은 목적을 달성하기 위한 본 발명은, 다중 프로세서 시스템에 있어서, 슬레이브 프로세서에서 수행 가능한 작업 함수에 대한 정보를 마스터 프로세서에 등록하는 제1단계와; 상기 등록 정보를 바탕으로 마스터 프로세서는 자체에서 수행할 작업과 슬레이브 프로세서에서 수행할 작업을 스케쥴링 하는 제2단계와; 상기 작업 스케쥴에 따라 자체에서 작업을 수행하거나, 슬레이브 프로세서에 작업 수행을 지시하는 제3단계와; 상기 작업 지시 후 자체에서 수행하는 작업으로 복귀와 아울러 슬레이브 프로세서의 작업이 완료될 적절한 시간 후에 작업 결과를 인출해 가는 제4단계로 이루어진 것을 특징으로 한다.In order to achieve the above object, the present invention provides a multiprocessor system comprising: a first step of registering information on a work function that can be performed in a slave processor with a master processor; A second step of scheduling, by a master processor, a task to be performed by itself and a task to be performed by a slave processor based on the registration information; Performing a task in itself according to the task schedule or instructing a slave processor to perform a task; And a fourth step of returning to the work performed by the self after the work instruction and withdrawing the work result after an appropriate time for the work of the slave processor to be completed.

도 1은 종래 다중 프로세서 시스템에서 마스터 프로세서와 슬레이브 프로세서간 IPC에 의한 작업 함수 처리 방법을 보인 순서도.1 is a flowchart illustrating a method of processing a work function by an IPC between a master processor and a slave processor in a conventional multiprocessor system.

도 2는 본 발명에 따른 다중 프로세서 시스템에서 마스터 프로세서와 슬레이브 프로세서간 작업 수행 방법을 보인 순서도.2 is a flow chart illustrating a method for performing operations between a master processor and a slave processor in a multiprocessor system according to the present invention.

본 발명은 마스터 프로세서와 슬레이브 프로세서간 분할된 작업 지시 권한을 마스터 프로세서에서 일괄 관리하게 함으로써, IPC에 의한 프로세서 상호간의 메시지 통신 방식이 아닌, 슬레이브 프로세서에 등록되어진 작업 코드 포인터를 인자로 하여, 마스터 프로세서가 원하는 작업의 수행을 지시하고, 그 수행 결과를 마스터 프로세서에서 직접 인출해 가는 특징이 있다.According to the present invention, the master processor collectively manages the divided work instruction authority between the master processor and the slave processor, so that the master processor is based on the work code pointer registered in the slave processor, rather than the message communication method between the processors by the IPC. Instructs the user to perform a desired task, and the result is directly withdrawn from the master processor.

즉, 종래의 경우에는 마스터 프로세서에서 IPC 메시지에 의해 작업 요청을하면, 슬레이브 프로세서에서 그 작업 결과를 다시 IPC 메시지에 의해 통보하는 방식이었으나, 본 발명에서는 마스터 프로세서에서 슬레이브 프로세서의 함수 수행 위치를 알고 그 위치에 있는 함수의 수행을 직접 지시하며, 또한 작업을 완료한 슬레이브 프로세서는 그 결과를 통보하지 않고, 소정 위치에 저장하고 있으면 마스터 측에서 소정시간 후에 그 위치에서 직접 인출해 가므로, IPC 메시지를 정의할 필요가 없다.That is, in the conventional case, when the master processor requests a work by the IPC message, the slave processor notifies the work result again by the IPC message. However, in the present invention, the master processor knows the function execution position of the slave processor. It directly instructs the execution of the function in the position, and the slave processor that has completed the task does not notify the result, and if it is stored in the predetermined position, the master side draws the IPC message directly after the predetermined time. There is no need to define it.

다시 말해, 본 발명에서 슬레이브 프로세서는 마스터 프로세서와 독립된 작업을 하지만, 실질적으로 마스터 프로세서에 종속된 함수 처리 전용 프로세서의 역할을 수행하는 것으로, IPC와는 전혀 관계없이 작업 처리 함수를 수행할 수 있도록 설계하고, 그 함수 포인터를 마스터 측에서 알고 제어할 수 있도록 하면 되는 것이다.In other words, in the present invention, the slave processor performs a task independent of the master processor, but serves as a function processor dedicated to function processing substantially dependent on the master processor, and is designed to perform a task processing function regardless of the IPC. In other words, the function pointer can be known and controlled on the master side.

그럼, 본 발명에 따른 다중 프로세서 시스템의 작업 수행 방법을 도2를 참조하여 설명한다.Next, a method of performing a task of a multiprocessor system according to the present invention will be described with reference to FIG.

도2는 본 발명에 따른 다중 프로세서 시스템에서 마스터 프로세서와 슬레이브 프로세서간 작업 수행 방법을 보인 순서도이다.2 is a flowchart illustrating a method of performing a task between a master processor and a slave processor in a multiprocessor system according to the present invention.

이에 도시된 바와 같이 마스터 프로세서가 기동을 하면, 자체의 작업 분배기(Task Dispatcher)에 의해 할당된 작업을 인지하고 관리하게 된다(S401).As shown in FIG. 4, when the master processor starts up, the master processor recognizes and manages a task assigned by its task dispatcher (S401).

그 동작의 하나로 마스터 프로세서 기동 후 슬레이브 프로세서를 기동시켜(S501), 슬레이브 프로세서가 작업 등록 준비가 될 때까지 주기적 폴링을 한다.One of the operations is to start the slave processor after starting the master processor (S501) and perform periodic polling until the slave processor is ready for job registration.

상기 마스터 프로세서에 의해 기동된 슬레이브 프로세서는, 마스터 프로세서의 폴링에 대한 응답으로 등록할 작업 포인터 리스트를 마스터 측으로 전송한다(S502, S503).The slave processor started by the master processor transmits a job pointer list to be registered in response to polling of the master processor to the master (S502 and S503).

이때, 상기 리스트에 포함되는 정보에는 작업 함수에 대한 위치 정보가 담긴 포인터뿐만 아니라, 그 함수가 수행되는데 걸리는 시간에 대한 정보 등이 더 포함되어 있어서, 마스터 프로세서에서 작업 스케쥴링을 하는데 참조할 수 있도록 한다.In this case, the information included in the list includes not only a pointer containing position information of a work function but also information on a time taken for the function to be executed, so that the master processor can refer to the work scheduling. .

즉, 마스터 프로세서에서 상기 함수 처리 시간을 참조하여 작업 수행을 지시하고 그 결과가 출력될 시간에 맞춰, 작업 결과를 인출해 갈 수 있도록 하는 것이다.That is, the master processor instructs the execution of the operation with reference to the function processing time and allows the operation result to be fetched at the time when the result is output.

상기와 같이 슬레이브 프로세서에 대한 작업 수행 관리는 마스터 측 자체의 작업 분배기(Self Task Dispatcher) 외에, 슬레이브 측을 위한 작업 분배기(Other Task Dispatcher)를 더 두어 관리하게 된다(S504).As described above, the task execution management for the slave processor further manages another task dispatcher for the slave side in addition to the master task dispatcher (Self Task Dispatcher) (S504).

상기와 같이, 슬레이브 프로세서로부터 작업의 함수 포인터, 속성 그리고 기타 명세들이 등록되면, 슬레이브 작업 분배기(Other Task Dispatcher)는 이를 자체 작업 메니저(Task Manager)에 통보한다.As described above, when a function pointer, an attribute, and other specifications of a task are registered from the slave processor, the slave task distributor (Other Task Dispatcher) informs its task manager.

이에 따라, 상기 마스터 프로세서의 작업 메니저(Task Manager)는 상기 슬레이브 프로세서 제어를 위한 함수 정보와, 자체의 작업 분배기(Self Task Dispatcher)로부터 할당된 작업을 소정시간에 걸쳐 등록한 후(S402, S403, S404), 그 스케쥴에 따라 작업을 수행하게 된다(S405, S406).Accordingly, the task manager of the master processor registers the function information for controlling the slave processor and the task assigned from its own task dispatcher over a predetermined time period (S402, S403, S404). In step S405 and S406, the operation is performed according to the schedule.

만약, 마스터 프로세서 자체에서 수행할 수 없는 작업이 있을 경우(S407), 상기 등록되어 관리하고 있던 슬레이브 측의 작업 포인터에 의해 슬레이브 프로세서로 작업 수행을 지시한다(S408, S410).If there is a task that cannot be performed in the master processor itself (S407), the slave processor instructs the slave processor to perform a task by the task pointer of the registered and managed slave side (S408 and S410).

한편, 자체의 작업 메니저에서 관리하는 작업 루틴을 수행하던 슬레이브 프로세서는(S505, S506, S507), 마스터 프로세서에서 해당 포인터에 있는 함수의 작업 지시를 받으면(S506), 인터럽트에 의해 이를 검출하여 인터럽트 서비스 루틴에 의해 지시 받은 작업을 수행하고(S508), 그 결과를 임의의 위치에 저장한 후 다시 원래 수행하던 작업 루틴으로 복귀하게 된다(S509).On the other hand, the slave processor performing the work routine managed by its own work manager (S505, S506, S507), when the master processor receives the work instruction of the function in the pointer (S506), it detects this by interrupt and interrupt service After performing the work instructed by the routine (S508), the result is stored in an arbitrary position and returned to the original work routine again performed (S509).

즉, 종래의 경우에는 작업이 완료되면 즉시 IPC에 의해 마스터 측과 통신하는 과정이 수행되어 그 결과를 통보해 주어야 하나, 본 발명에서는 이미 그 작업이 수행되는 시간이 마스터 측에 등록되어 있으므로, 작업 완료 즉시 지정된 위치에 저장된 결과를 마스터 측에서 인출해 갈 수 있으므로, 작업 효율을 높일 수 있고 IPC 통신에 의해 발생할 수 있는 문제점을 방지할 수 있게 된다.That is, in the conventional case, when the operation is completed, the process of communicating with the master side is performed immediately by IPC, and the result should be notified. However, in the present invention, since the time for performing the operation is already registered in the master side, Immediately after completion, the result stored in the designated location can be withdrawn from the master side, thereby increasing work efficiency and preventing problems caused by IPC communication.

이상에서 설명한 바와 같이 본 발명 다중 프로세서 시스템의 작업 함수 처리 방법은, 프로세서(Processor)간 작업(Task) 부하나 동기(Synch)가 이루어지지 않는 다중 프로세서 시스템의 설계 시, 슬레이브 프로세서의 작업(Task) 수행 함수를 마스터 프로세서에 등록하여 관리하게 함으로써, 시스템의 유지 및 관리를 편리하게 할 수 있도록 하는 효과가 있다.As described above, the task function processing method of the multiprocessor system of the present invention is a task of a slave processor when designing a multiprocessor system in which no task load or synchronization between processors is performed. By registering and managing the execution function in the master processor, it is effective to make the maintenance and management of the system convenient.

Claims (5)

다중 프로세서 시스템에 있어서,In a multiprocessor system, 슬레이브 프로세서에서 수행 가능한 작업 함수에 대한 정보를 마스터 프로세서에 등록하는 제1단계와;A first step of registering information on a work function that can be performed in the slave processor with the master processor; 상기 등록 정보를 바탕으로 마스터 프로세서는 자체에서 수행할 작업과 슬레이브 프로세서에서 수행할 작업을 스케쥴링 하는 제2단계와;A second step of scheduling, by a master processor, a task to be performed by itself and a task to be performed by a slave processor based on the registration information; 상기 작업 스케쥴에 따라 자체에서 작업을 수행하거나, 슬레이브 프로세서에 작업 수행을 지시하는 제3단계와;Performing a task in itself according to the task schedule or instructing a slave processor to perform a task; 상기 작업 지시 후 자체에서 수행하는 작업으로 복귀와 아울러 슬레이브 프로세서의 작업이 완료될 적절한 시간 후에 작업 결과를 인출해 가는 제4단계로 이루어진 것을 특징으로 하는 다중 프로세서 시스템의 작업 함수 처리 방법.And a fourth step of returning to the work performed by the self after the work instruction and fetching the work result after a suitable time for the work of the slave processor to be completed. 제1항에 있어서, 상기 제1단계는 마스터 프로세서 기동 후, 슬레이브 프로세서에 폴링 방식에 의해 주기적으로 작업 등록을 요구하고, 그 응답으로 마스터 프로세서에 작업 함수에 대한 다양한 정보가 포함된 명세 리스트를 전송함으로써 이루어지는 것을 특징으로 하는 다중 프로세서 시스템의 작업 함수 처리 방법.The method of claim 1, wherein the first step requests the slave processor to periodically register a job by polling after starting the master processor, and in response, sends a specification list including various information about the job function to the master processor. Method of processing a job function of a multi-processor system, characterized in that is made by. 제2항에 있어서, 상기 슬레이브 프로세서에서 마스터 프로세서에 등록하는 작업 함수에 대한 명세 리스트는, 작업 함수에 대한 포인터, 속성 및 함수 처리 시간에 대한 정보가 포함되어 이루어진 것을 특징으로 하는 다중 프로세서 시스템의 작업 함수 처리 방법.The task list of claim 2, wherein the specification list for the work function registered in the slave processor in the master processor includes information on a pointer, a property, and a function processing time for the work function. How to handle a function. 제1항에 있어서, 상기 제3단계의 마스터 프로세서로부터 작업을 지시받은 슬레이브 프로세서는, 자체의 작업 메니저에 의해 관리하던 작업 루틴의 수행을 일시 중단하는 제1과정과;The method of claim 1, wherein the slave processor instructed by the master processor of the third step comprises: a first step of suspending the execution of a work routine managed by its own work manager; 인터럽트 서비스 루틴에 의해 상기 지시 받은 작업을 수행하는 제2과정과;A second step of performing the operation indicated by the interrupt service routine; 상기 작업이 완료되면 그 결과를 기 설정되어 있는 임의의 위치에 저장한 후, 다시 원래 수행하던 작업 루틴으로 복귀하는 제3과정으로 이루어진 것을 특징으로 하는 다중 프로세서 시스템의 작업 함수 처리 방법.And a third process of storing the result in a predetermined position when the operation is completed and returning to the original work routine. 제1항에 있어서, 상기 마스터 프로세서는 자체에서 수행하는 작업의 분배 및 관리를 위한 작업 분배 유니트(Self Task Dispatcher) 외에 슬레이브 프로세서에 대한 작업 수행 관리를 위한 작업 분배 유니트(Other Task Dispatcher)를 더 구비하여, 슬레이브 프로세서에 대한 작업 함수 등록 및 제어에 이용하도록 이루어진 것을 특징으로 하는 다중 프로세서 시스템의 작업 함수 처리 방법.The master processor of claim 1, wherein the master processor further includes a task distribution unit for managing task execution for a slave processor, in addition to a self task dispatcher for distributing and managing tasks performed by the master processor. The method for processing a work function of a multi-processor system, characterized in that used to register and control a work function for a slave processor.
KR10-2001-0081395A 2001-12-19 2001-12-19 Task function processing method for multi processor system KR100459417B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0081395A KR100459417B1 (en) 2001-12-19 2001-12-19 Task function processing method for multi processor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0081395A KR100459417B1 (en) 2001-12-19 2001-12-19 Task function processing method for multi processor system

Publications (2)

Publication Number Publication Date
KR20030050860A true KR20030050860A (en) 2003-06-25
KR100459417B1 KR100459417B1 (en) 2004-12-03

Family

ID=29576548

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0081395A KR100459417B1 (en) 2001-12-19 2001-12-19 Task function processing method for multi processor system

Country Status (1)

Country Link
KR (1) KR100459417B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016093521A1 (en) * 2014-12-12 2016-06-16 삼성전자 주식회사 Arithmetic processor and method for operating arithmetic processor
CN109684051A (en) * 2018-12-17 2019-04-26 杭州玳数科技有限公司 A kind of method and system of the hybrid asynchronous submission of big data task
KR20220134956A (en) * 2021-03-29 2022-10-06 숭실대학교산학협력단 Processor capable of processing external service requests using a symmetrical interface
US12014215B2 (en) 2020-12-02 2024-06-18 Samsung Electronics Co., Ltd. Active scheduling method and computing apparatus

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102315432B1 (en) * 2021-06-22 2021-10-20 주식회사 크라우드웍스 Method and apparatus for managing project using data pointer

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CS164932B2 (en) * 1971-09-07 1975-11-28
JPH02208772A (en) * 1989-02-09 1990-08-20 Mitsubishi Electric Corp Task schedule system in multiprocessor system
ES2104580T3 (en) * 1989-02-24 1997-10-16 At & T Corp ADAPTIVE PLANNING OF TASKS FOR MULTIPROCESS SYSTEMS.
US5257372A (en) * 1990-12-19 1993-10-26 Cray Research, Inc. Methods for efficient distribution of parallel tasks to slave processes in a multiprocessing system
KR19990062330A (en) * 1997-12-31 1999-07-26 유기범 Interrupt Control in Multi-Processor Systems

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016093521A1 (en) * 2014-12-12 2016-06-16 삼성전자 주식회사 Arithmetic processor and method for operating arithmetic processor
US11062425B2 (en) 2014-12-12 2021-07-13 Samsung Electronics Co., Ltd. Arithmetic processor and method for operating arithmetic processor
CN109684051A (en) * 2018-12-17 2019-04-26 杭州玳数科技有限公司 A kind of method and system of the hybrid asynchronous submission of big data task
CN109684051B (en) * 2018-12-17 2020-08-11 杭州玳数科技有限公司 Method and system for asynchronously submitting hybrid big data task
US12014215B2 (en) 2020-12-02 2024-06-18 Samsung Electronics Co., Ltd. Active scheduling method and computing apparatus
KR20220134956A (en) * 2021-03-29 2022-10-06 숭실대학교산학협력단 Processor capable of processing external service requests using a symmetrical interface

Also Published As

Publication number Publication date
KR100459417B1 (en) 2004-12-03

Similar Documents

Publication Publication Date Title
Wieder et al. On spin locks in AUTOSAR: Blocking analysis of FIFO, unordered, and priority-ordered spin locks
Puffitsch et al. Off-line mapping of multi-rate dependent task sets to many-core platforms
Burns et al. A schedulability compatible multiprocessor resource sharing protocol--MrsP
US20090271796A1 (en) Information processing system and task execution control method
US6625638B1 (en) Management of a logical partition that supports different types of processors
JP2829078B2 (en) Process distribution method
US10423446B2 (en) Data processing
US9063783B2 (en) Coordinating parallel execution of processes using agents
CN111176801B (en) Multi-process management method, device, equipment and storage medium
CN109997113B (en) Method and device for data processing
CN103793255A (en) Configurable multi-main-mode multi-OS-inner-core real-time operating system structure and starting method
JP2011232956A (en) Computer system and program
Becker et al. Scheduling multi-rate real-time applications on clustered many-core architectures with memory constraints
US9015517B2 (en) Information processing apparatus and time-of-day control method
KR100459417B1 (en) Task function processing method for multi processor system
JP4862056B2 (en) Virtual machine management mechanism and CPU time allocation control method in virtual machine system
Casini et al. Addressing analysis and partitioning issues for the Waters 2019 challenge
US11106395B2 (en) Application execution apparatus and application execution method
Tamura et al. A real-time operating system supporting distributed shared memory for embedded control systems
JP2012160045A (en) Virtualized environment resource management configuration change system and program
JP7054688B2 (en) Synchronous control system and synchronous control method
JP5505522B2 (en) Program execution method
Zhang et al. Implementation and empirical comparison of partitioning-based multi-core scheduling
US20090019259A1 (en) Multiprocessing method and multiprocessor system
Chouteau et al. Design and implementation of a Ravenscar extension for multiprocessors

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121015

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20131016

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20141023

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee