상세 컨텐츠

본문 제목

[TIL 전공] CPU Scheduling, Linux command

[TIL] 오늘의 공부

by 개발소연자 2023. 5. 4. 11:00

본문

CPU Scheduling

process: Process ID, Priority, Open files, Memory address space, Processor state, Signal handler

shared with Thread: Memory address space, Open files, Signal handler

fork():make new task struct

 

task_struct state
TASK_NEW(in the middle of being created)

TASK_RUNNING(ready to run)

TASK_RUNNING(running to CPU)

TASK_INTERRUPTIBLE

TASK_UNINTERRUPTIBLE

EXIT_ZOMBIE

EXIT_DEAD

TASK_DEAD

 

Process scheduler: schedulers work each CPU core

Kernel scheduler: core.c

Stop scheduler: stoptask.c

Deadline scheduler: deadline.c

RT scheduler: rt.c

CFS scheduler: fair.c {priority, nice quantum}

Idle-task scheduler: idle_task.c

 

CFS scheduler

Virtual runtime(i, t) = weight_0 / weight_i * physical runtime(i, t)

 

Linux command

  • 목차 작성하기
  • 목차에 따른 내용 쓰기
  • 마무리 (요약 혹은 마무리글, 내가 배운점을 간단히 남겨보기)
  • 참고한 자료가 있으면 링크 추가

관련글 더보기