Context Switching과 PCB/TCB
2023. 5. 8. 01:24ㆍWEB개발/TIL
반응형
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 연결되어 있음)
각 스레드마다 할당되며, 스레드가 종료될 때 제거됨.
내용 추가 예정......
반응형
'WEB개발 > TIL' 카테고리의 다른 글
CORS (0) | 2023.06.27 |
---|---|
프로그램, 프로세스, 스레드 (0) | 2023.05.08 |
NestJS 애플리케이션 Docker로 배포하기 (0) | 2023.05.01 |
ORM - JPA (0) | 2023.03.27 |
Lombok (0) | 2023.03.24 |