KR101349561B1 - Apparatus and method for scheduling partition based criticality - Google Patents
Apparatus and method for scheduling partition based criticality Download PDFInfo
- Publication number
- KR101349561B1 KR101349561B1 KR1020110113379A KR20110113379A KR101349561B1 KR 101349561 B1 KR101349561 B1 KR 101349561B1 KR 1020110113379 A KR1020110113379 A KR 1020110113379A KR 20110113379 A KR20110113379 A KR 20110113379A KR 101349561 B1 KR101349561 B1 KR 101349561B1
- Authority
- KR
- South Korea
- Prior art keywords
- partition
- period
- execution time
- cycle
- task
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
Abstract
본 발명은 주기 별 실행 시간을 다르게 결정함으로써, 임계성 값에 대응하도록 파티션의 태스크 실행 순서를 결정하는 장치 및 방법이 개시된다.
파티션 스케줄링 장치는 파티션의 태스크의 주기를 기초로 파티션의 주기를 결정하는 파티션 주기 결정부; 및 파티션의 주기를 기초로 파티션의 주기 별 실행 시간을 결정하는 파티션 실행 시간 결정부를 포함할 수 있다.The present invention discloses an apparatus and method for determining a task execution order of a partition to correspond to a threshold value by differently determining execution time for each cycle.
The partition scheduling apparatus may include: a partition period determination unit configured to determine a period of a partition based on a period of a task of the partition; And a partition execution time determiner configured to determine an execution time for each cycle of the partition based on a cycle of the partition.
Description
본 발명은 파티션 스케줄링 장치 및 방법에 관한 것으로, 보다 상세하게는 파티션의 주기 별 실행 시간을 다르게 결정함으로써, 임계성 값에 대응하도록 파티션의 주기 및 실행시간을 결정하는 파티션 스케줄링 장치 및 방법에 관한 것이다.The present invention relates to a partition scheduling apparatus and method, and more particularly, to a partition scheduling apparatus and method for determining the period and the execution time of the partition to correspond to the threshold value by differently determining the execution time for each period of the partition.
최근 들어 크기, 무게, 전원(Power)등의 이유로 다양한 실시간 어플리케이션(파티션)들이 하나의 컴퓨팅 보드에서 실행되도록 구성되는 시스템들이 개발되고 있다.Recently, various real-time applications (partitions) have been developed to be executed on a single computing board for reasons of size, weight, power, and the like.
그러나, 상기 시스템에 포함되는 복수의 어플리케이션들은 각각 다른 기업에서 제작되는 경우가 많으므로 단일 컴퓨팅 환경에서 다양한 어플리케이션을 통합하여 실시간성과 임계성을 보장하는 방법 및 장치가 필요한 실정이다.However, since a plurality of applications included in the system are often produced by different companies, there is a need for a method and apparatus for integrating various applications in a single computing environment to guarantee real time and criticality.
한국공개특허 제10-2007-0073916호(공개일 2007년 07월 10일)에는 컴퓨터 운영시스템(OS)에서, 서로 다른 임계성(criticality)을 가진 작업을 실행하는데 필요한 프로세서들이 수행되는 경우, 인터럽트가 크리티컬 인터럽트인지 여부에 따라 인터럽트의 수행 여부를 결정하는 기술이 개시되어 있다. 그러나, 종래의 기술은 크리티컬 인터럽트가 발생하는 경우 프로세스의 수행을 인터럽트 하는 것이므로, 최초에 스케줄링 한 프로세스의 실행 순서가 변경될 가능성이 높다.Korean Patent Publication No. 10-2007-0073916 (published Jul. 10, 2007) discloses that when a processor required to execute a task having different criticality is executed in a computer operating system (OS), an interrupt is generated. A technique for determining whether to perform an interrupt according to whether or not it is a critical interrupt is disclosed. However, since the prior art interrupts the execution of a process when a critical interrupt occurs, the execution order of the originally scheduled process is likely to be changed.
따라서, 임계성을 고려하여 파티션의 실행 순서와 실행 시간을 스케줄링 함으로써 인터럽트 없이도 실시간성과 임계성을 보장할 수 있는 방법이 요청되고 있다.Therefore, there is a demand for a method that can guarantee real time and criticality without interruption by scheduling an execution order and execution time of a partition in consideration of the criticality.
본 발명은 주기 별로 파티션의 실행 시간을 다르게 결정함으로써, 시스템의 사용률을 높이는 장치 및 방법을 제공한다.The present invention provides an apparatus and method for increasing the utilization of the system by differently determining the execution time of a partition for each cycle.
또한, 본 발명은 임계성 값(Criticality Level)이 높은 파티션의 태스크가 임계성 값이 낮은 파티션의 태스크 보다 먼저 실행되도록 파티션의 실행시간 및 주기를 결정함으로써 임계성 값이 낮은 파티션의 태스크가 임계성 값이 높은 파티션의 태스크를 선점하는 것을 방지하는 장치 및 방법을 제공한다. In addition, the present invention determines a partition's execution time and period so that tasks of a partition having a high criticality level are executed before tasks of a partition having a low criticality value, so that tasks of a partition having a low criticality value have a high threshold value. An apparatus and method for preventing preemption of a task are provided.
본 발명의 일실시예에 따른 파티션 스케줄링 장치는 파티션의 태스크가 갖는 의 주기를 기초로 파티션의 주기를 결정하는 파티션 주기 결정부; 및 파티션의 주기를 기초로 파티션의 주기 별 실행 시간을 결정하는 파티션 실행 시간 결정부를 포함할 수 있다.Partition partitioning apparatus according to an embodiment of the present invention includes a partition period determination unit for determining the period of the partition based on the period of the task of the partition; And a partition execution time determiner configured to determine an execution time for each cycle of the partition based on a cycle of the partition.
본 발명의 일실시예에 따른 파티션 스케줄링 장치의 실행 순서 결정부는 임계성 값이 높은 파티션의 태스크가 임계성 값이 낮은 파티션의 태스크 보다 먼저 실행되도록 파티션의 주기 및 실행시간을 결정할 수 있다.The execution order determination unit of the partition scheduling apparatus according to an embodiment of the present invention may determine the period and execution time of a partition so that a task of a partition having a high threshold value is executed before a task of a partition having a low threshold value.
본 발명의 일실시예에 따른 파티션 스케줄링 방법은 파티션의 태스크의 주기를 기초로 파티션의 주기를 결정하는 단계; 및 파티션의 주기를 기초로 파티션의 주기 별 실행 시간을 결정하는 단계를 포함할 수 있다.Partition partition method according to an embodiment of the present invention comprises the steps of determining the period of the partition based on the period of the task of the partition; And determining an execution time for each cycle of the partition based on the cycle of the partition.
본 발명의 일실시예에 의하면, 주기 별로 파티션의 실행 시간을 다르게 결정함으로써, 시스템의 사용률을 높일 수 있다. According to an embodiment of the present invention, the utilization rate of the system can be increased by differently determining the execution time of the partition for each cycle.
또한, 본 발명의 일실시예에 의하면, 임계성 값(Criticality Level)이 높은 파티션의 태스크가 임계성 값이 낮은 파티션의 태스크 보다 먼저 실행되도록 파티션의 실행시간 및 주기를 결정함으로써 임계성 값이 낮은 파티션의 태스크가 임계성 값이 높은 파티션의 태스크를 선점하는 것을 방지할 수 있다.Further, according to an embodiment of the present invention, a task of a partition having a low criticality value is determined by determining an execution time and a period of a partition such that a task of a partition having a high criticality level is executed before a task of a partition having a low criticality value. Can prevent preemption of tasks in partitions with high criticality values.
도 1은 본 발명의 일실시예에 따른 파티션 스케줄링 장치를 도시한 블록 다이어그램이다.
도 2는 본 발명의 일실시예에 따른 파티션 스케줄링 장치를 적용한 시스템의 일례이다.
도 3은 종래의 스케줄링에 따른 파티션 스케줄과 본 발명의 일실시예에 따른 파티션 스케줄의 일례이다.
도 4는 본 발명의 일실시예에 따른 파티션 스케줄링 방법을 도시한 플로우차트이다.1 is a block diagram illustrating a partition scheduling apparatus according to an embodiment of the present invention.
2 is an example of a system to which a partition scheduling apparatus according to an embodiment of the present invention is applied.
3 is an example of a partition schedule according to a conventional scheduling and a partition schedule according to an embodiment of the present invention.
4 is a flowchart illustrating a partition scheduling method according to an embodiment of the present invention.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다. 본 발명의 일실시예에 따른 파티션 스케줄링 방법은 파티션 스케줄링 장치에 의해 수행될 수 있다. 이때, 파티션은 어플리케이션과 같이 복수의 프로세스로 구성된 프로그램이며, 파티션 별로 임계성 값(Criticality Level)이 설정될 수 있다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. The partition scheduling method according to an embodiment of the present invention may be performed by a partition scheduling apparatus. In this case, the partition is a program composed of a plurality of processes, such as an application, and a criticality level may be set for each partition.
이때, 임계성 값은 각 파티션의 중요도일 수 있다. 예를 들어 항공기 시스템에 비행을 유지시켜주는 비행 파티션과 특정 경로로 이동 시키는 미션 파티션이 있는 경우, 비행을 유지시켜주는 비행 파티션의 임계성 값이 미션 파티션보다 높을 수 있다.In this case, the criticality value may be the importance of each partition. For example, if an aircraft system has a flight partition for maintaining flight and a mission partition for moving to a specific path, the criticality value of the flight partition for maintaining flight may be higher than that of the mission partition.
도 1은 본 발명의 일실시예에 따른 파티션 스케줄링 장치를 도시한 블록 다이어그램이다. 1 is a block diagram illustrating a partition scheduling apparatus according to an embodiment of the present invention.
본 발명의 일실시예에 따른 파티션 스케줄링 장치(100)은 도 1에 도시된 바와 같이 파티션 주기 결정부(110)와 파티션 실행 시간 결정부(120)를 포함할 수 있다.The
파티션 주기 결정부(110)는 파티션에 포함된 태스크의 주기를 기초로 파티션의 주기를 결정할 수 있다. 구체적으로, 파티션 주기 결정부(110)는 수학식 1을 사용하여 파티션의 주기를 결정할 수 있다.The partition period determiner 110 may determine a period of a partition based on a period of a task included in the partition. In detail, the partition period determiner 110 may determine a period of a
이때, 는 j번째 파티션의 주기이고, 는 파티션 스케줄링 장치(100)가 스케줄링 하는 모든 파티션들에 포함된 태스크의 주기 값 중에서 가작 작은 주기 값일 수 있다. 예를 들어 파티션 주기 결정부(110)는 수학식 2를 사용하여 를 계산할 수 있다.At this time, Is the period of the jth partition, May be a minimum period value among period values of a task included in all partitions scheduled by the
또한, 파티션들에 포함된 태스크들의 주기는 으로 나누어 지는 값일 수 있다.In addition, the period of tasks included in the partitions It can be a value divided by.
이때, 는 j번째 파티션에 포함된 태스크의 주기 값 중에서 가장 작은 주기 값일 수 있다.At this time, May be the smallest period value among the period values of the task included in the j-th partition.
파티션 실행 시간 결정부(120)는 파티션 주기 결정부(110)가 결정한 파티션의 주기를 기초로 파티션의 주기 별 실행 시간을 결정할 수 있다. The partition execution time determiner 120 may determine an execution time for each cycle of a partition based on the cycle of the partition determined by the partition cycle determiner 110.
이때, 파티션 실행 시간 결정부(120)는 파티션의 실행 시간을 주기 별로 다르게 결정할 수 있다. 예를 들어 rth 번째 주기에서의 j번째 파티션의 실행 시간과 (r-1)th 번째 주기에서의 j번째 파티션의 실행 시간은 서로 다를 수 있다. 또한, 파티션 실행 시간 결정부(120)는 파티션의 주기 별 실행 시간이 일정 주기 마다 동일한 패턴으로 변화하도록 결정할 수 있다.In this case, the partition execution time determiner 120 may determine the execution time of the partition differently for each cycle. For example r th Execution time of the jth partition in the first period and (r-1) th The execution time of the jth partition in the first period may be different. In addition, the partition execution time determiner 120 may determine that the execution time of each partition cycle changes in the same pattern every predetermined period.
구체적으로 파티션 실행 시간 결정부(120)는 수학식 3을 사용하여 rth 번째 주기에서의 j번째 파티션의 실행 시간을 결정할 수 있다. 이때, r은 수학식 4를 만족할 수 있다.In more detail, the partition execution time determiner 120 uses r th to form r th. The execution time of the jth partition in the first period can be determined. In this case, r may satisfy
이때, 는 rth 번째 주기에서의 j번째 파티션의 실행 시간이고, 는 j 번째 파티션에 포함된 k 번째 태스크의 실행 시간이며, 는 파티션 스케줄링 장치(100)가 스케줄링 하는 모든 파티션들에 포함된 태스크의 주기 값 중에서 가작 큰 주기 값일 수 있다.At this time, R th Execution time of the jth partition in the first cycle, Is the execution time of the kth task contained in the jth partition, May be the largest period value among period values of a task included in all partitions scheduled by the
또한, 는 j 번째 파티션에 포함된 k 번째 태스크인 가 다른 태스크들의 실행 시간을 할당하고 난 후에 가장 작은 주기에 실행 시간이 할당되었는지 여부일 수 있다. 이때, 는 불리언(Boolean) 값을 가질 수 있으며 파티션 실행 시간 결정부(120)는 수학식 5를 사용하여 를 계산할 수 있다.Also, Is the k th task contained in the j th partition After allocating execution times of other tasks, the execution time may be allocated in the smallest period. At this time, May have a Boolean value and the partition execution time determiner 120 may use
이때, 는 j 번째 파티션에 포함된 k 번째 태스크의 주기일 수 있다.At this time, May be a period of the k th task included in the j th partition.
그리고, 은 (r-1)th 번째 주기에서 할당하지 못한 워크로드(workload)일 수 있다. 이때, 는 에 따라 rth 번째 이후의 주기에서 실행 시간을 할당할 수 있다. 또한, 파티션 실행 시간 결정부(120)는 수학식 6을 사용하여 를 계산할 수 있다.And, May be a workload not allocated in the (r-1) th cycle. At this time, The According to r th The execution time can be allocated in the cycle after the second. In addition, the partition execution time determiner 120 uses
이때, 은 rth 번째 주기의 유휴 시간(idle time)이며, 파티션 실행 시간 결정부(120)는 수학식 7을 사용하여 를 계산할 수 있다. At this time, Is an idle time of the r th th cycle, and the partition execution time determiner 120 uses Equation 7 below. Can be calculated.
또한, 파티션 실행 시간 결정부(120)는 파티션의 주기 별 실행 시간을 결정하는 동안, 태스크 k의 번째 주기마다의 워크 로드 값인 과 유휴시간(idle time)인 을 업데이트하여 스케줄 가능성(Schedulability) 테스트를 수행할 수도 있다.In addition, while the partition execution
이때, 파티션 실행 시간 결정부(120)는 수학식 8을 사용하여 를 계산하고, 수학식 9를 사용하여 를 계산할 수 있다.At this time, the partition execution time determiner 120 uses Equation 8 , And using Equation 9 Can be calculated.
파티션 실행 시간 결정부(120)는 이고, 인 경우 결정된 파티션의 주기 별 실행 시간으로는 스케줄링이 불가능하다고 판단할 수 있다. 이때, 파티션 실행 시간 결정부(120)는 파티션의 r을 증가시킨 파티션의 다음 주기 별 실행 시간을 재결정함으로써 스케줄링이 가능하도록 파티션의 주기 별 실행 시간을 결정할 수 있다. 그리고, 파티션 실행 시간 결정부(120)는 r이 값과 같아지고도 스케줄링을 만족시키지 못하는 경우, 스케줄링이 가능한 파티션의 주기 별 실행 시간을 결정할 수 없다고 판단할 수 있다.Partition execution
본 발명에 따른 파티션의 스케줄링 장치는 주기 별로 파티션의 실행 시간을 다르게 결정함으로써, 파티션의 사용률을 높일 수 있다. 또한, 임계성 값(Criticality Level)이 높은 파티션의 태스크가 임계성 값이 낮은 파티션의 태스크 보다 먼저 실행되도록 파티션의 태스크 실행 순서를 결정함으로써 임계성 값이 낮은 파티션의 태스크가 임계성 값이 높은 파티션의 태스크를 선점하는 것을 방지할 수 있다.The scheduling apparatus of a partition according to the present invention can increase the utilization rate of a partition by differently determining an execution time of the partition for each period. Also, by determining the task execution order of partitions so that tasks in partitions with a higher criticality level run before tasks in partitions with a lower criticality value, tasks in partitions with lower criticality preempt tasks in partitions with higher criticality. Can be prevented.
도 2는 본 발명의 일실시예에 따른 파티션 스케줄링 장치를 적용한 시스템의 일례이다.2 is an example of a system to which a partition scheduling apparatus according to an embodiment of the present invention is applied.
도 2는 리눅스에서 ARINC 653을 구현한 시스템에 본 발명의 일실시예에 따른 파티션 스케줄링 장치를 적용한 일례이다. 이때, ARINC 653은 주기적 파티션과 항공기를 위해서, 운영체제와 소프트웨어 간의 인터페이스를 정의해 놓은 표준이다. 2 is an example of applying a partition scheduling apparatus according to an embodiment of the present invention to a system implementing ARINC 653 in Linux. The ARINC 653 is a standard that defines the interface between the operating system and software for periodic partitions and aircraft.
이때, 파티션((210)들은 도 2에 도시된 바와 같이 복수의 프로세스(211)과 에러 핸들러(Error Handler)(212)를 포함할 수 있다. In this case, the
또한, 상기 시스템은 유저 영역에 복수의 파티션((210), XML(220), 스타트용 프로세스(Startup press)(230) 및 ARINC 653 라이브러리(240)를 포함할 수 있다.In addition, the system may include a plurality of
그리고, 상기 시스템은 커널 영역에 EDF알고리즘을 사용하는 프로세스 스케줄러(251)를 포함한 리눅스 커널(250)과 데드라인 미스가 발생시 해당 파티션의 에러 핸들러(212)를 실행시키는 헬스 모니터(Health Monitor)(261)를 포함한 ARINC 653 커널(260)를 포함할 수 있다. In addition, the system monitors the Linux
이때, 파티션의 스케줄링 장치(100) 중 하나인 파티션 스케줄러(200)은 리눅스 커널(250)과 ARINC 653 커널(260)에 공통으로 포함되어 파티션(210)들을 스케줄링 할 수 있다.In this case, the
도 3은 본 발명의 일실시예에 따른 파티션 스케줄의 일례이다.3 is an example of a partition schedule according to an embodiment of the present invention.
스케줄(310)은 파티션 스케줄링 장치가 표 1과 같은 파티션들에게 수학식 10을 사용하여 파티션의 주기를 계산하고, 수학식 11을 사용하여 파티션의 실행 시간을 계산하여 생성한 스케줄의 일례이다.The
이때, i는 파티션에 포함된 태스크가 파티션의 몇 번째 태스크인지를 나타내는 식별 정보이고, p는 태스크의 주기이며, e는 태스크의 실행 시간일 수 있다.In this case, i is identification information indicating the task of the partition included in the task, p is the period of the task, e may be the execution time of the task.
이때, 파티션 스케줄링 장치는 수학식 10과 수학식 11을 사용하여 파티션 1인 , 파티션 2인 로 결정할 수 있다.At this time, the partition scheduling apparatus is
그러나, 스케줄(310)은 시간 6(311)에서 수행되어야 할 가 임계성 값이 낮은 에 의해 선점되는 임계성 역전(inversion) 현상이 발생하여 가 시간 62(321)까지 실행이 지연되고 있다. 따라서, 스케줄(310)은 태스크의 오버런이 발생한 경우 더 높은 임계성을 갖는 파티션의 태스크 실행을 방해하여 시스템에 치명적 결함을 야기 할 수 있다. However,
스케줄(320)은 파티션 스케줄링 장치가 표 1과 같은 파티션들에게 수학식 12를 사용하여 파티션의 주기를 계산하고, 수학식 13을 사용하여 파티션의 실행 시간을 계산하여 생성한 스케줄의 일례이다.The
이때, 는 수학식 14를 만족하는 r 중에서 가장 작은 r일 수 있다.At this time, May be the smallest r among r satisfying Equation (14).
파티션 스케줄링 장치는 수학식 12과 수학식 13을 사용하여 임계성 값이 높은 파티션의 태스크의 실행 시간을 여유 있게 예약하여 임계성 값이 높은 파티션의 태스크가 임계성 값이 낮은 파티션의 태스크보다 먼저 실행되도록 함으로써, 임계성 역전 현상을 방지할 수 있다.By using Equation 12 and Equation 13, the partition scheduling apparatus reserves the execution time of a task of a partition with a high threshold value to allow the task of a partition with a high threshold value to run before a task of a partition with a low threshold value. Critical reversal can be prevented.
그러나, 파티션 스케줄링 장치는 수학식 12와 수학식 13을 사용하는 경우, 파티션 1인 P1=(20,18), 파티션 2인 P2=(40,20)로 결정하게 되므로, 리소스 효율성이 수학식 15을 만족하지 않는다. 따라서, 스케줄(320)는 시간 18(321), 시간 338(322)와 같이 파티션 2의 실행 시간이 짧으므로 데드라인 미스(323)이 발생할 수 있다.However, when the partition scheduling apparatus uses Equation 12 and Equation 13, the partition scheduling apparatus determines P1 = (20,18), which is
본 발명의 일실시예에 따른 파티션 스케줄링 장치(100)는 표 1과 같은 파티션들에게 수학식 3을 사용하여 표 2와 같이 주기 별 파티션의 실행 시간을 계산하여 생성한 스케줄(330)을 생성함으로써, 파티션의 사용률을 높이고, 임계성 값이 낮은 파티션의 태스크가 임계성 값이 높은 파티션의 태스크를 선점하는 것을 방지할 수 있다.
예를 들어, 는 스케줄(310)에서는 시간 62(321)까지 실행이 지연되고 있으나 스케줄(330)에서는 시간 14(331)에 실행됨으로써, 태스크의 오버런이 발생했을 때 데드라인 미스 없이 태스크를 실행할 수 있다. E.g, Although the execution is delayed until the time 62 (321) in the
도 4는 본 발명의 일실시예에 따른 파티션 스케줄링 방법을 도시한 플로우차트이다.4 is a flowchart illustrating a partition scheduling method according to an embodiment of the present invention.
단계(S410)에서 파티션 주기 결정부(110)는 파티션의 태스크의 주기를 기초로 파티션의 주기를 결정할 수 있다. In operation S410, the partition
단계(S420)에서 파티션 실행 시간 결정부(120)는 단계(S410)에서 결정된 파티션의 주기를 기초로 파티션의 주기 별 실행 시간을 결정할 수 있다. 이때, 파티션 실행 시간 결정부(120)는 파티션의 실행 시간을 주기 별로 다르게 결정할 수 있다. In operation S420, the partition
본 발명은 주기 별로 파티션의 실행 시간을 다르게 결정함으로써, 파티션의 사용률을 높일 수 있다. 또한, 임계성 값(Criticality Level)이 높은 파티션의 태스크가 임계성 값이 낮은 파티션의 태스크 보다 먼저 실행되도록 파티션의 태스크 실행 순서를 결정함으로써 임계성 값이 낮은 파티션의 태스크가 임계성 값이 높은 파티션의 태스크를 선점하는 것을 방지할 수 있다.The present invention can increase the utilization rate of a partition by differently determining the execution time of the partition for each cycle. In addition, by determining the task execution order of partitions so that tasks in partitions with high criticality levels run before tasks in partitions with low criticality values, tasks in partitions with low criticality preempt tasks in partitions with high criticality. Can be prevented.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described by way of limited embodiments and drawings, but the present invention is not limited to the above embodiments, and those skilled in the art to which the present invention pertains various modifications and variations from such descriptions. This is possible.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined by the equivalents of the claims, as well as the claims.
100: 파티션 스케줄링 장치
110: 파티션 주기 결정부
120: 파티션 실행 시간 결정부100: partition scheduling device
110: partition cycle determination unit
120: partition execution time determination unit
Claims (4)
상기 파티션 주기 결정부가 파티션의 태스크의 주기를 기초로 파티션의 주기를 결정하는 단계; 및
상기 파티션 스케줄링 장치가 상기 파티션의 주기를 기초로 파티션의 주기 별 실행 시간을 결정하는 단계
를 포함하고,
상기 주기 별 실행 시간은,
파티션이 실행되는 주기에 따라 일정 패턴으로 변화하는 파티션 스케줄링 방법.A partition scheduling method performed by a partition scheduling apparatus including a partition period determining unit and a partition execution time determining unit,
Determining, by the partition period determiner, a period of a partition based on a period of a task of the partition; And
Determining, by the partition scheduling apparatus, an execution time for each cycle of a partition based on the cycle of the partition;
Lt; / RTI >
The execution time for each cycle is
Partition scheduling method that changes in a certain pattern according to the period in which partitions are executed.
상기 파티션 주기 결정부가 결정한 파티션의 주기를 기초로 파티션의 주기 별 실행 시간을 결정하는 파티션 실행 시간 결정부
를 포함하고,
상기 주기 별 실행 시간은,
파티션이 실행되는 주기에 따라 일정 패턴으로 변화하는 파티션 스케줄링 장치.A partition period determination unit that determines a period of a partition based on a period of a task of the partition; And
Partition execution time determining unit for determining the execution time of each partition cycle based on the partition period determined by the partition period determination unit
Lt; / RTI >
The execution time for each cycle is
Partition scheduling device that changes in a certain pattern according to the period in which partitions are executed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110113379A KR101349561B1 (en) | 2011-11-02 | 2011-11-02 | Apparatus and method for scheduling partition based criticality |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110113379A KR101349561B1 (en) | 2011-11-02 | 2011-11-02 | Apparatus and method for scheduling partition based criticality |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130048504A KR20130048504A (en) | 2013-05-10 |
KR101349561B1 true KR101349561B1 (en) | 2014-01-08 |
Family
ID=48659540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110113379A KR101349561B1 (en) | 2011-11-02 | 2011-11-02 | Apparatus and method for scheduling partition based criticality |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101349561B1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102169869B1 (en) * | 2014-05-13 | 2020-10-27 | 한국전자통신연구원 | Partition control apparatus and method of operating system |
KR102528130B1 (en) * | 2018-02-27 | 2023-05-03 | 주식회사 알티스트 | Method for scheduling partitions |
KR102353602B1 (en) * | 2021-07-13 | 2022-01-21 | 국방과학연구소 | Apparatus and method for partition scheduling |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001513239A (en) * | 1997-02-25 | 2001-08-28 | セクスタン アビオニク | Highly secure method and apparatus for performing multiple functions of different importance by a single processor |
JP2002342097A (en) | 2001-05-17 | 2002-11-29 | Matsushita Electric Ind Co Ltd | Task allocatable time deciding device and task allocatable time deciding method |
JP2006268754A (en) | 2005-03-25 | 2006-10-05 | Toshiba Corp | Scheduling possibility determination method, real-time system and program |
KR20110061587A (en) * | 2008-08-28 | 2011-06-09 | 엔이씨 유럽 리미티드 | Method and system for scheduling periodic processes |
-
2011
- 2011-11-02 KR KR1020110113379A patent/KR101349561B1/en not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001513239A (en) * | 1997-02-25 | 2001-08-28 | セクスタン アビオニク | Highly secure method and apparatus for performing multiple functions of different importance by a single processor |
JP2002342097A (en) | 2001-05-17 | 2002-11-29 | Matsushita Electric Ind Co Ltd | Task allocatable time deciding device and task allocatable time deciding method |
JP2006268754A (en) | 2005-03-25 | 2006-10-05 | Toshiba Corp | Scheduling possibility determination method, real-time system and program |
KR20110061587A (en) * | 2008-08-28 | 2011-06-09 | 엔이씨 유럽 리미티드 | Method and system for scheduling periodic processes |
Also Published As
Publication number | Publication date |
---|---|
KR20130048504A (en) | 2013-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Delgado et al. | Kairos: Preemptive data center scheduling without runtime estimates | |
Herman et al. | RTOS support for multicore mixed-criticality systems | |
US9778943B2 (en) | Timer based virtual processor scheduling and suspension on physical processor for use of physical processor by other processing | |
US20150058858A1 (en) | Dynamic task prioritization for in-memory databases | |
US9298504B1 (en) | Systems, devices, and techniques for preempting and reassigning tasks within a multiprocessor system | |
EP2581829B1 (en) | Dynamic scheduling for frames representing views of a geographic information environment | |
JP2008186136A (en) | Computer system | |
KR101703328B1 (en) | Apparatus and method for optimizing data processing over the heterogeneous multi-processor environment | |
WO2019214608A1 (en) | User space pre-emptive real-time task scheduler | |
Wang et al. | Global fixed priority scheduling with preemption threshold: Schedulability analysis and stack size minimization | |
KR101349561B1 (en) | Apparatus and method for scheduling partition based criticality | |
Bertout et al. | Minimizing a real-time task set through task clustering | |
CN111597044A (en) | Task scheduling method and device, storage medium and electronic equipment | |
Sousa et al. | Unified overhead-aware schedulability analysis for slot-based task-splitting | |
US10853133B2 (en) | Method and apparatus for scheduling tasks to a cyclic schedule | |
Agung et al. | Preemptive parallel job scheduling for heterogeneous systems supporting urgent computing | |
Erickson et al. | Recovering from overload in multicore mixed-criticality systems | |
EP2840513B1 (en) | Dynamic task prioritization for in-memory databases | |
KR20130051076A (en) | Method and apparatus for scheduling application program | |
US10761512B2 (en) | Numerical controller | |
Liu et al. | Leveraging dependency in scheduling and preemption for high throughput in data-parallel clusters | |
Capota et al. | P_FENP: a multiprocessor real-time scheduling algorithm | |
Nosrati et al. | Task scheduling algorithms introduction | |
Küttler et al. | Probabilistic analysis of low-criticality execution | |
Souto et al. | Overhead-aware schedulability evaluation of semi-partitioned real-time schedulers |
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 | ||
FPAY | Annual fee payment |
Payment date: 20161228 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20180102 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |