KR100678249B1 - Apparatus and method for managing memory and ipc task - Google Patents
Apparatus and method for managing memory and ipc task Download PDFInfo
- Publication number
- KR100678249B1 KR100678249B1 KR1020000056725A KR20000056725A KR100678249B1 KR 100678249 B1 KR100678249 B1 KR 100678249B1 KR 1020000056725 A KR1020000056725 A KR 1020000056725A KR 20000056725 A KR20000056725 A KR 20000056725A KR 100678249 B1 KR100678249 B1 KR 100678249B1
- Authority
- KR
- South Korea
- Prior art keywords
- task
- token
- resource
- tasks
- real
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/80—Actions related to the user profile or the type of traffic
- H04L47/805—QOS or priority aware
Abstract
가. 청구범위에 기재된 발명이 속한 기술분야end. The technical field to which the invention described in the claims belongs
타스크와 메모리를 관리하기 위한 장치 및 방법에 관한 기술이다.The present invention relates to an apparatus and a method for managing a task and a memory.
나. 발명이 해결하고자 하는 기술적 과제I. The technical problem to be solved by the invention
피소스를 이용해 개발되는 시스템에서 토큰의 관리 및 자원의 관리를 수행할 수 있도록 메모리 및 타스크를 관리할 수 있는 장치 및 방법을 제공한다.It provides a device and method that can manage memory and tasks so that token management and resource management can be performed in a system developed using PIOS.
다. 발명의 해결방법의 요지All. Summary of Solution of the Invention
본 발명은 적어도 둘 이상의 타스크로부터 사용되는 자원과, 소정 시스템 내에서 상기 자원을 할당을 요구하는 타스크들로부터 자원을 관리하기 위한 방법으로서, 토큰 요구가 존재할 경우 자원을 할당하는 단계와, 상기 할당 중에 다른 타스크로부터 자원 할당 신호가 수신되는 경우 실시간 요구 값을 검사하는 단계와, 상기 실시간 요구 값이 성공인 경우 상기 자원이 할당된 타스크로부터 토큰을 반납받고 진행 중이던 작업을 홀드시키는 단계와, 상기 토큰을 반납한 타스크의 우선순위를 최고로 설정하는 단계와, 상기 실시간 요구 값이 성공인 타스크로 자원을 할당하는 단계와, 상기 실시간 요구 값이 성공이 아닌 경우 상기 타스크를 대기 목록에 등록하는 단계와, 상기 토큰이 반납이 존재하는 경우 대기목록의 우선순위가 높은 타스크부터 토큰을 할당하는 단계로 이루어짐을 특징으로 한다.The present invention provides a method for managing a resource from at least two tasks and from tasks requiring allocation of the resource in a system, the method comprising: allocating a resource when a token request exists; Checking a real-time request value when a resource allocation signal is received from another task; if the real-time request value is successful, returning a token from a task to which the resource is allocated and holding a work in progress; Setting a priority of the returned task to the highest level, allocating a resource to a task whose real-time request value is successful, registering the task in a waiting list when the real-time request value is not successful, and If tokens are returned, the tokens must be retrieved from the priority task on the queue. It is characterized by consisting of the steps of assigning.
라. 발명의 중요한 용도la. Important uses of the invention
피소스를 이용하는 시스템의 개발 시에 메모리와 타스크를 관리할 경우에 적 용한다.
This is applied when managing memory and tasks when developing a system using a picos.
자원 관리, 메모리 관리, 타스크 관리Resource Management, Memory Management, Task Management
Description
도 1은 본 발명에 따른 소정 시스템에서 자원을 할당하고 이를 관리하기 위한 관리기와 자원을 요구하는 타스크 및 자원간의 관계를 도시한 블록 구성도,1 is a block diagram illustrating a relationship between a manager for allocating and managing resources in a predetermined system according to the present invention, and a task for requesting resources and resources;
도 2는 본 발명의 바람직한 실시 예에 따라 관리기에서 수행되는 제어 흐름도.
2 is a control flowchart performed in the manager according to a preferred embodiment of the present invention.
본 발명은 소정의 시스템에서 타스크와 메모리를 관리하는 방법에 관한 것으로, 특히 피소스(pSOS)로 개발되는 시스템에서 타스크 및 메모리를 관리하는 방법에 관한 것이다.The present invention relates to a method for managing a task and a memory in a given system, and more particularly, to a method for managing a task and a memory in a system developed by a pSOS.
통상적으로 전송 시스템 또는 교환 시스템 등과 같이 규모가 큰 시스템에서는 피소스라는 프로그램을 이용하여 동작 프로그램(OS)을 개발하게 된다. 이와 같이 개발된 동작 프로그램들은 자원(Resource)을 공유하여 사용하는 여러 개의 타스 크들로 구성되는 경우가 대부분이다. 따라서 하나의 자원을 사용하기 위해서는 이를 관리하는 관리기(Semaphore)를 두어 각 타스크들의 접속 순서에 따라 자료를 사용할 수 있도록 토큰(Token)을 주도록 구성된다. 즉, 특정한 자원 A를 서로 다른 3개의 타스크가 사용하고자 하는 경우에 예를 들어 타스크 A와 타스크 B와 타스크 C에서 하나의 자원을 사용하고자 하는 경우에 동시에 하나의 자원을 사용할 수 없다. 따라서 자원을 할당받기 위해서 관리기로 할당을 요구하게 되며, 이와 같은 방법을 통해서 자원이 할당되는 타스크로는 토큰을 주어 사용하고자 하는 자원을 사용할 수 있도록 한다. 즉, 타스크 A가 토큰을 부여받은 경우 다른 타스크들은 토큰의 획득이 이루어질 때까지 대기해야 한다. 그리고 타스크 A가 자원을 사용한 후 관리기로 토큰을 반납해야만 다음 타스크 즉, 타스크 B 또는 타스크 C가 이를 사용할 수 있다.In general, in a large system such as a transmission system or an exchange system, an operating program (OS) is developed by using a program called PISOS. Most of the operation programs developed as above are composed of several tasks that share and use resources. Therefore, in order to use one resource, it is configured to have a Semaphore that manages it and to give tokens so that data can be used according to the connection order of each task. That is, when three different tasks want to use a specific resource A, for example, when one resource is used in task A, task B, and task C, one resource cannot be used at the same time. Therefore, in order to allocate resources, an allocation is requested to the manager. In this way, a resource is allocated to a task so that a resource to be used can be used by giving a token. In other words, when task A is granted a token, other tasks must wait until the acquisition of the token is made. After task A has used the resource, it must return the token to the manager so that it can be used by the next task, either task B or task C.
그런데 이러한 실제로 관리기는 상기한 토큰의 획득과 반납에 대한 정확한 관리기 이루어지지 않는다. 즉, 토큰을 가져간 타스크에 대한 관리가 이루어지지 않아 토큰의 획득과 반납이 정확하게 이루어지지 않는 문제가 있었다. 또한 타스크들 간에 우선순위(Priority)가 다른 경우 우선순위가 높은 타스크에게 자원을 할당하게 된다. 따라서 타스크의 동기화를 위해 사용되는 중에 놀은 우선 순위를 가진 타스크로부터 자원의 사용이 요구되는 경우 동기화가 실패할 수 있는 소지가 있었다. 뿐만 아니라 타스크들간 우선순위의 도치(Inversion)가 발생할 수 있는 문제가 있었다.
However, such a manager is not an accurate manager for obtaining and returning the token. In other words, there is a problem that the acquisition and return of tokens are not made correctly because the management of the task that took the tokens is not made. In addition, when priority is different among tasks, resources are allocated to the task having high priority. Therefore, while being used for task synchronization, Knoll could have failed to synchronize if the use of resources from prioritized tasks is required. In addition, there was a problem that inversion of priorities between tasks could occur.
따라서 본 발명의 목적은 피소스를 이용해 개발되는 시스템에서 토큰의 관리 및 자원의 관리를 수행할 수 있도록 메모리 및 타스크를 관리할 수 있는 장치 및 방법을 제공함에 있다.Accordingly, an object of the present invention is to provide an apparatus and method capable of managing a memory and a task to perform token management and resource management in a system developed using PIOS.
본 발명의 다른 목적은 피소스를 이용해 개발되는 시스템에서 자원의 할당을 원활하게 하며, 우선순위의 도치가 발생하지 않고 시스템의 동기를 정확히 맞출 수 있는 메모리 및 타스크 관리 장치 및 방법을 제공함에 있다.Another object of the present invention is to provide a memory and task management apparatus and method for smoothly allocating resources in a system developed by using a source, and accurately synchronizing the system without inverting priorities.
상기한 목적들을 달성하기 위한 본 발명은 아이피시 타스크 및 메모리를 관리하기 위한 타스크들 관리 장치로서, 시스템의 소정 동작을 수행하며, 자원의 할당을 요구할 경우 자원 할당 요구신호와 함께 실시간 요구 신호를 전달하는 타스크들과, 적어도 둘 이상의 타스크들로부터 사용되는 자원과, 상기 자원의 할당하기 위해 토큰을 관리하며, 타스크로부터 자원 할당 요구시 우선순위를 검사하고, 우선순위가 높은 타크스부터 자원을 할당하며, 만일 자원이 할당중인 경우에 실시간 요구 신호가 성공인 타스크로부터 자원 할당이 요구되는 경우 자원을 사용중이던 타스크로부터 토큰을 회수하여 실시간 요구신호 성공인 타스크에 토큰을 부여하여 자원을 할당하고, 상기 자원을 사용중이던 타스크의 우선순위를 최고로 하여 대기 목록에 등재하는 관리기로 구성됨을 특징으로 한다.The present invention for achieving the above objects is a task management apparatus for managing the IP task and memory, and performs a predetermined operation of the system, when the resource allocation request, and transmits the real-time request signal with the resource allocation request signal Manage tasks, resources used from at least two tasks, and tokens to allocate the resources, check priorities when requesting resource allocation from tasks, and allocate resources from higher priority tasks; If a resource allocation is requested from a task in which the real-time request signal is successful when the resource is being allocated, the token is recovered from the task in which the resource is used, the token is assigned to the task in which the real-time request signal is successful, and the resource is allocated. That queues the task with the highest priority of the task in use Characterized by a configured group.
상기한 목적들을 달성하기 위한 본 발명은 적어도 둘 이상의 타스크로부터 사용되는 자원과, 소정 시스템 내에서 상기 자원을 할당을 요구하는 타스크들로부터 자원을 관리하기 위한 방법으로서, 토큰 요구가 존재할 경우 자원을 할당하는 단계와, 상기 할당 중에 다른 타스크로부터 자원 할당 신호가 수신되는 경우 실시간 요구 값을 검사하는 단계와, 상기 실시간 요구 값이 성공인 경우 상기 자원이 할당된 타스크로부터 토큰을 반납받고 진행 중이던 작업을 홀드시키는 단계와, 상기 토큰을 반납한 타스크의 우선순위를 최고로 설정하는 단계와, 상기 실시간 요구 값이 성공인 타스크로 자원을 할당하는 단계와, 상기 실시간 요구 값이 성공이 아닌 경우 상기 타스크를 대기 목록에 등록하는 단계와, 상기 토큰이 반납이 존재하는 경우 대기목록의 우선순위가 높은 타스크부터 토큰을 할당하는 단계로 이루어짐을 특징으로 한다.
The present invention for achieving the above objects is a method for managing resources from resources used from at least two or more tasks and tasks requiring the allocation of the resources in a given system, the resource allocation in the presence of a token request Checking a real-time request value when a resource allocation signal is received from another task during the allocation; and holding a work in progress by returning a token from the task to which the resource is allocated if the real-time request value is successful. Setting a priority of the task returning the token to the highest priority, allocating a resource to the task for which the real-time request value is successful, and waiting the task if the real-time request value is not successful. Registering with the token, and if there is a return of the token, Characterized by the steps of: ranking made of an assigned token from the high task.
이하 첨부된 도면을 참조하여 본 발명을 상세히 설명한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명에 따른 소정 시스템에서 자원을 할당하고 이를 관리하기 위한 관리기와 자원을 요구하는 타스크 및 자원간의 관계를 도시한 블록 구성도이다. 이하 도 1을 참조하여 각 블록들의 동작 및 이들의 연결 관계를 상세히 설명한다.1 is a block diagram illustrating a relationship between a manager for allocating and managing resources in a predetermined system according to an embodiment of the present invention, and a task for requesting resources and resources. Hereinafter, an operation of each block and a connection relationship thereof will be described in detail with reference to FIG. 1.
각 타스크들(11, 12, 13)은 본 발명이 적용되는 시스템에서 소정의 동작을 수행 및 제어하는 블록들이다. 상기 각 블록들에 위선순위는 타스크 A(11) 우선순위 1을 가지며, 타스크 B(12)가 우선 순위 2를 가지고, 타스크 C(13)가 우선순위 2를 가진다고 가정한다. 상기 각 타스크들은 토큰의 사용을 원할 경우 즉, 소정 자원을 사용하고자 할 경우 실시간 요구(Real Time Requst) 값(True(이하 T로 표기함) or Fail(이하 F로 표기함))을 우선순위와 함께 요구한다. 따라서 각 타스크들 은 토큰의 요구시 이를 항상 관리기 (21)로 함께 전송하여 토큰의 할당을 대기한 후 토큰이 할당되면 그에 따라 자원(31)을 점유하여 사용한다.The
관리기(21)는 토큰의 인증 및 로그를 확인하며, 자원을 할당한다. 이때 자원의 할당은 우선순위와 실시간 요구 값에 따라 할당하게 된다. 즉, 우선순위가 높은 타스크가 먼저 자원을 사용할 수 있으나, 만일 실시간 요구 값이 성공(T)인 타스크가 접속하게 되면 현재 자원을 할당한 타스크의 상태에 따라 자원의 할당이 변경된다. 만일 타스크 A(11)가 자원을 사용하는 중에 타스크 C(13)가 관리기(21)로 토큰을 요구하는 경우를 예로 설명한다. 만일 타스크 A(11)가 먼저 관리기(21)로부터 자원(31)을 할당받아 사용하고 있는 중에 타스크 C(13)가 자원(31)의 할당을 요구하는 경우 3가지 경우로 살펴볼 수 있다.The
첫째로 상기 타스크 A(11)가 실시간 요구 값이 성공(T)인 경우에는 타스크 A(11)에 자원(31)을 계속 할당한다.First, the
둘째로 상기 타스크 A(11)가 실시간 요구 값이 실패(T)인 경우에는 상기 타스크 C(13)의 실시간 요구 값이 실패(T)인 경우에 자원(31)은 계속 상기 타스크 A(11)에 할당된다.Second, when
셋째로 상기 타스크 A(11)가 실시간 요구 값이 실패(T)인 경우에는 상기 타스크 C(13)의 실시간 요구 값이 성공(T)인 경우 제어기(21)는 자원(31)을 타스크 C(13)에 할당한다. 그리고 상기 타스크 A(11)은 수행중이던 작업을 홀딩(Holding) 시키고, 타스크 A(11)의 우선순위를 최고 우선순위로 변경한다.Third, when the
즉 상기한 방법을 통해서 동기화가 이루어진 실시간 요구 값이 성공인 타스 크가 먼저 자원을 사용할 수 있도록 함으로써 동기가 틀어지는 현상을 방지할 수 있다. 또한 만일 다른 타스크가 자원(31)을 점유중인 경우에 점유 중이던 타스크의 우선 순위를 최고로 변경함으로써 그 이후에 접속된 다른 타스크의 우선순위보다 높게 책정함으로써 작업을 원활하게 수행하도록 제어가 가능하다.That is, the above-described method can prevent the synchronization from being lost by allowing the task whose success value of the synchronized real-time request to succeed to use the resource first. In addition, if another task is occupying the
도 2는 본 발명의 바람직한 실시 예에 따라 관리기에서 수행되는 제어 흐름도이다. 이하 도 1 내지 도 2를 참조하여 본 발명에 따라 관리기(21)에서 수행되는 제어 동작을 상세히 설명한다.2 is a control flowchart performed in the manager according to a preferred embodiment of the present invention. Hereinafter, the control operation performed by the
제어기(21)는 100단계에서 대기상태를 유지한다. 그리고 102단계로 진행하여 소정 타스크로부터 자원 할당 요구가 존재하는가를 검사한다. 상기 검사결과 자원 할당 요구가 존재하는 경우 104단계로 진행하여 자원을 할당한다. 즉, 이를 통해 해당하는 타스크가 작업을 수행할 수 있도록 해주는 것이다. 그리고 106단계로 진행하여 상기 토큰이 할당된 자원으로부터 토큰의 반납이 존재하는가를 검사한다. 즉, 자원(31)을 사용하고 있는 타스크가 작업을 마친 경우 토큰을 반납하므로 작업이 종료되는가를 검사하는 것이다. 만일 토큰 반납이 있으면 100단게로 진행하고 그렇지 않은 경우 108단계로 진행하여 다른 타스크로부터 토큰의 요구가 존재하는가를 검사한다. 만일 토큰의 요구가 있는 경우 110단계로 진행하고 토큰의 요구가 없는 경우 106단계로 진행한다.The
상기 108단계의 검사결과 토큰의 요구가 있는 경우 상기 토큰을 요구한 타스크의 실시간 요구(RTR:Real Time Requst) 값이 성공(T)인가를 검사한다. 만일 RTR 값이 성공인 경우 116단계로 진행하고 그렇지 않은 경우 112단계로 진행한다. 먼저 112단계로 진행하는 경우를 살펴본다. 상기 관리기(21)는 토큰을 요구한 타스크를 우선순위에 따라 대기목록에 등록한다. 그리고 114단계로 진행하여 토큰이 반납되는가를 검사한다. 만일 토큰이 반납되면 104단계로 진행하여 대기중인 타스크들 중 우선순위가 높은 타스크에 토큰을 할당한다. 그러나 토큰의 반납이 존재하지 않는 경우 108단계로 진행한다.If there is a request of the token as a result of the check in
이와 달리 110단계의 검사결과 RTR 값이 성공인(T) 경우 관리기(21)는 116단계로 진행하여 현재 작업을 수행중인 타스크로부터 토큰을 반납받고 작업을 홀딩시킨다. 그런 후 118단계로 진행하여 작업중이던 타스크의 우선 순위를 최고로 설정하여 대기목록에 기재한다. 그리고 상기 관리기(21)는 120단계로 진행하여 RTR 값이 성공인 타스크에 자원을 할당한 후 108단계로 진행한다.
On the contrary, if the RTR value of the check result of
상술한 바와 같이 타스크의 할당이 RTR 값에 따라 할당되므로 타스크간 동기화를 이룰 수 있는 이점이 있으며, 동시에 우선순위가 전치되는 경우를 방지할 수 있는 이점이 있다. 그리고 자원을 할당하기 위한 토큰을 원활히 관리할 수 있는 이점이 있다.As described above, since the assignment of the task is allocated according to the RTR value, there is an advantage of achieving synchronization between tasks, and at the same time, there is an advantage of preventing the case of priority being transposed. It also has the advantage of smoothly managing tokens for allocating resources.
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020000056725A KR100678249B1 (en) | 2000-09-27 | 2000-09-27 | Apparatus and method for managing memory and ipc task |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020000056725A KR100678249B1 (en) | 2000-09-27 | 2000-09-27 | Apparatus and method for managing memory and ipc task |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20020024895A KR20020024895A (en) | 2002-04-03 |
KR100678249B1 true KR100678249B1 (en) | 2007-02-01 |
Family
ID=19690680
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020000056725A KR100678249B1 (en) | 2000-09-27 | 2000-09-27 | Apparatus and method for managing memory and ipc task |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100678249B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014099501A1 (en) * | 2012-12-20 | 2014-06-26 | Volcano Corporation | Resource management in a multi-modality medical system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR930015457A (en) * | 1991-12-30 | 1993-07-24 | 경상현 | Local area communication device using shared bus |
KR970056274A (en) * | 1995-12-06 | 1997-07-31 | 양승택 | Media access control device of virtual token bus network and its method |
-
2000
- 2000-09-27 KR KR1020000056725A patent/KR100678249B1/en not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR930015457A (en) * | 1991-12-30 | 1993-07-24 | 경상현 | Local area communication device using shared bus |
KR970056274A (en) * | 1995-12-06 | 1997-07-31 | 양승택 | Media access control device of virtual token bus network and its method |
Also Published As
Publication number | Publication date |
---|---|
KR20020024895A (en) | 2002-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020001320A1 (en) | Resource allocation method, device, and apparatus | |
US5313638A (en) | Method using semaphores for synchronizing communication between programs or processes resident in a computer system | |
JP5243405B2 (en) | Method and system for managing computing resources | |
US6725455B2 (en) | Method for assigning tasks, data processing system, client data processing nodes and machine-readable storage medium | |
US20050138621A1 (en) | Method of resource allocation using an access control mechanism | |
US6697901B1 (en) | Using secondary resource masters in conjunction with a primary resource master for managing resources that are accessible to a plurality of entities | |
US7228351B2 (en) | Method and apparatus for managing resource contention in a multisystem cluster | |
JP2004213628A (en) | Method and device for managing resource contention | |
CN111163140A (en) | Method, apparatus and computer readable storage medium for resource acquisition and allocation | |
CN112148480A (en) | Task processing method, device and equipment based on multithreading and storage medium | |
KR100678249B1 (en) | Apparatus and method for managing memory and ipc task | |
KR101227885B1 (en) | Channel multiplexing method and apparatus in shared memory | |
JP3255759B2 (en) | Multiprocessor system | |
US20030131042A1 (en) | Apparatus and method of sharing a device between partitions of a logically partitioned computer system | |
US9015717B2 (en) | Method for processing tasks in parallel and selecting a network for communication | |
CN113703930A (en) | Task scheduling method, device and system and computer readable storage medium | |
JPH10232849A (en) | Disk controller | |
JPH1069402A (en) | Automatic test control method for software | |
CN116266143A (en) | Coroutine management method, device, equipment and medium | |
JP7173337B2 (en) | RESOURCE MANAGEMENT DEVICE, RESOURCE MANAGEMENT METHOD AND PROGRAM | |
KR101642027B1 (en) | Method and apparatus for synchronizing internet shared resource | |
JPH10134100A (en) | Fault simulation system and allocating method for job | |
JPH11191076A (en) | Information processor | |
JPH08263428A (en) | Information processor for applying split transfer system and bus arbitrating method for same | |
JPH07120301B2 (en) | Task debugging method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |