WEB개발/TIL
Context Switching과 PCB/TCB
nanannannana
2023. 5. 8. 01:24
반응형
Context Switching
여러 프로세스 또는 스레드가 번갈아가며 실행되는 과정
즉, CPU가 현재 실행 중인 Task(프로세스 또는 스레드)의 상태 정보를 PCB에 저장하고, 다음 실행할 Task의 상태 정보를 읽어 적용하는 과정
이 때, 현재 실행 중인 프로세스 또는 스레드의 상태 정보는 PCB 또는 TCB에 저장되고 불러옴.
- CPU의 코어가 1개라면, 동시에 여러 작업을 처리할 수 없어 Context Switching를 통해 짧은 시간을 주기로 번갈아가며 여러 Task를 실행함.
- 빠른 속도로 Task를 바꿔가며 실행하기 때문에 사람의 눈으론 동시에 여러 Task가 실행되는 것처럼 보이는 장점이 있음
PCB(Process Control Block)
OS기 프로세스를 관리하기 위해 필요한 정보를 저장하는 곳
각 프로세스마다 할당되며, 프로세스가 종료될 때 제거됨
[ PCB의 구조 ] Pointer: 프로세스의 현재 위치를 저장하는 포인터 정보 Process State: 프로세스의 상태 정보 Process Number (PID): 각 프로세스를 구분하기 위한 고유 번호 Process Counter (PC): 해당 프로세스가 다음에 수행할 명령어의 주소 정보 ...etc |
TCB(Thread Control Block)
OS가 스레드를 관리하기 위해 필요한 정보를 저장하는 곳
PCB 내부에 TCB에 대한 정보 저장(멀티 스레드인 경우, 하나의 PCB에 여러 개의 TCB 연결되어 있음)
각 스레드마다 할당되며, 스레드가 종료될 때 제거됨.
내용 추가 예정......
반응형