운영체제(OS) - 9. 컨텍스트 스위칭

Walker·2021년 10월 17일
0

운영체제(OS)

목록 보기
9/14
post-thumbnail

컨텍스트 스위칭
스케쥴러가 CPU에서 실행되고 있는 프로세스를 변경할 때 각각의 프로세스에
해당하는 컨텍스트(ProgramCounter(PC)/StackPointer(SP) 등의 레지스터)를 변경하는 것

  • 빈번하게(10ms) 일어나므로 오버헤드가 있을 수 있어 어셈블리어로 작성된 경우가 있음
    (리눅스의 경우 컨텍스트 스위칭 코드가 각 CPU 별로 존재)

** 디스패치 : ready 상태의 프로세스를 running 상태로 바꾸는 것

PCB(Process Control Block)
각각의 프로세스의 컨텍스트(PC/SP 등)를 저장하는 메모리 장소로
프로세스의 전환이 이루어지면 해당 프로세스의 컨텍스트 정보를 저장해두었다가
다시 running 상태로 돌아오면 해당 컨텍스트를 CPU의 컨텍스트로 등록함

profile
I walk slowly, but I never walk backward. -Abraham Lincoln-

0개의 댓글