기록

[Free RTOS_012] 우선순위 스케쥴링 본문

[2025~] Embedded/Free RTOS

[Free RTOS_012] 우선순위 스케쥴링

heylo 2025. 3. 7. 11:58


Priority 스케줄링

태스크를 중요도에 의해 가중치를 두어, 우선순으로 실행할 수 있도록 하는 개념

 

실시간 운영체제(RTOS)에서 펄스폭으로 지원하는 스케줄링 방법

 

선점형 스케줄링의 특성을 부여받음

 


우선순위가 높은 Task가 깨어나면,

 

현재 실행 중인 Task를 중단하고,

 

우선순위가 높은 Task가 선점

 

 

 



우선순위가 낮은 물고기가 먼저 실행된 이유?

악어가 태어나지 않았거나, 악어가 잠자고 있었거나.



악어가 선점을 하게 된 시점에는,

 

악어가 태어났거나, 악어가 잠에서 깨어났거나.

 


우선순위 스케쥴링과 선점형 스케쥴링은 

 

긴밀히 상호작용하는 하나의 원리.

 

 



악어가 실행되다가 어떻게 사람이 실행될 수 있었을까?

사람이 없었거나, 사람이 잠자고 있었을 것.

 

악어 Task가 우선순위가 낮음에도 불구하고

 

다시 실행할 수 있었던 이유는?

 

사람이 죽었거나, 사람이 잠자거나(waiting 으로 들어감).

 

 

스케쥴링 (scheduling):

처리할 일들의 진행 순서를 정하는 일

 

운영체제 커널이 하는 중요한 일 중 하나

 

각 Task들이 효율적으로 원할하게 실행되도록 하는 것

 

커널이 Task들에 CPU 시간을 할당해줌

 


프로세스, 쓰레드, 태스크

 

이 용어들이 엄밀한 의미에서는 

 

약간씩 다른 것을 표현하는 단어이긴 하지만,

 

동일한 의미로 이해해도 좋음

'[2025~] Embedded > Free RTOS' 카테고리의 다른 글

[Free RTOS_014] 블로킹 IO  (0) 2025.03.07
[Free RTOS_013] 인터럽트  (0) 2025.03.07
[Free RTOS_011] 라운드로빈 스케쥴링  (0) 2025.03.07
[Free RTOS_010] 비선점형 커널  (0) 2025.03.07
[Free RTOS_009] 선점형 커널  (0) 2025.03.07