CS/Real Time System
-
Scheduling of Reactive Systems - Priority-Driven SchedulingCS/Real Time System 2023. 6. 14. 22:57
Priority-Driven Scheduling 내용에 들어가기 앞서, 스케줄링 조건에 대해 정의부터 하고 들어가자. 개념에 대한 이해가 쉬울 수 있도록, 최대한 단순하게 조건을 설정하자. - 싱글 프로세서를 사용한다. - 서로에 대해 독립적인 잡들로 구성된, 고정된 수 n개의 period task들에 대해 스케줄링 한다. - 이 잡들은 preemptive하며, 자기 스스로 중지되지 않는다. - aperiodic job과 sporadic job은 없다. - resource에 대한 고려는 하지 않는다. - 스케줄링 decision들은 release of a job 혹은 completion of job 시간에 결정된다. - 문맥 전환(context switch)에 따르는 오버헤드는 무시할만큼 작다고 가정한다..
-
Scheduling of Reactive SystemsCS/Real Time System 2023. 6. 13. 20:37
이 전 포스팅에서는 개별적인 잡들에 대한 스케줄을 다뤘다. 지금부터는 reactive system에 대한 스케줄링을 다뤄볼것이다. 이전에 task들의 종류에 대하여 다루었다.(Periodic, Aperiodic, Sporadic) 이런 task들의 대한 스케줄링은 개별적인 잡들의 스케줄링과는 다른 방법으로 접근해야한다. Periodic Tasks periodic task Ti는 일정한 간격을 두고 주기적으로 발생하는, 일정한 execution time과 relative deadline을 가진 잡들의 집합으로 볼 수 있다. Phase ϕi : Task Ti의 첫 번째 잡인 Ji,1의 release time ri,1. 즉 가장 처음 실행되어야 하는 잡이 등장하는 시간이다. Period pi : Task Ti..
-
Scheduling of Individual JobsCS/Real Time System 2023. 5. 30. 16:59
개별적인 job들이 스케줄링의 대상이 될 수도 있고, 이러한 개별적인 job들이 반복되는 task들이 스케줄링의 대상이 될 수도 있다. 이번에는 개별적인 job들에 대한 스케줄링에 대해 다뤄볼것이다. 스케줄링은 다양한 조건에 따라 사용할 알고리즘이 달라진다. 일단 베이직한 조건에서부터 시작해보자. 기본 조건 : - 싱글프로세서를 사용하며, {J1, , , Jm}까지의 잡을 스케줄링 한다. - 또한 각각의 잡 Ji는 ri의 release time을 가지며 ei의 execution time, di의 absolute deadline을 가진다 하자. - Hard real - time constraints를 가진다고 가정할 것이다. 위 조건에 대한 optimal한 알고리즘이 있느냐는 것을 확인해 보자. 아래의 순..
-
Real-Time Scheduling – Formal ModelCS/Real Time System 2023. 5. 29. 19:39
Real time system 모델의 기본 개념 실시간 시스템의 구성 요소로는 아래 세 가지가 있다. - 실행해야 할 객체 (A workload model that describes applications supported by the system) Job들과 task들이 여기에 속한다. - 실행하기 위해 필요한 자원 (A resource model that describes the system resources available to applications) processor들과 passive resource들이 여기에 속한다. - 실행하기 위해 순서를 정하는 등의 역할을 하는 알고리즘 (Algorithms that define how the application uses the resources at..