본문 바로가기
운영체제

프로세스 제어 블록(PCB)

by 핫동경 2022. 4. 8.
반응형

프로세스 제어 블록(PCB)

프로세스를 관리할 필요가 있는 정보를 포함하는 운영 체제 커널의 자료 구조이다

[즉 운영 체제가 프로세스를 표현한 것이다]

 

프로세스 제어 블록

프로세스 상태 : 프로세스의 상태를 나타낸다(실행,대기,종료 등등)

 

프로세스 번호 : 각 프로세스는 번호를 가진다

 

프로세스 카운터 : 다음에 실행할 명령어의 주소를 가지고 있다

 

CPU 레지스터 : 모든 프로세스-관련 레지스터 내용

 

CPU 스케줄링 정보 : 프로세스 우선선위, 스케줄링 큐에 대한 포인터와 다른 스케줄링 매개변수

 

메모리 관리 정보 : 프로세스에게 할당된 메모리

 

회계 정보 : CPU가 사용된 양, 시간제한, 계정 번호, 프로세스 번호 등을 포함

 

입출력 상태 정보 : 프로세스에게 할당된 입출력 장치들과 열린 파일의 목록 포함

PCB를 사용하는 예를 보자


프로세스 사이의 CPU 전환

프로세스 P0 과 프로세스 P1이 있다고 가정하자.

 

1. 프로세스 P0가 실행중이였지만 인터럽트가 들어왔다.

 

2. 인터럽트가 들어왔기 때문에 현재 상태를 PCB0에 저장한다.

 

3. 프로세스P0의 인터럽트가 수행될 동안 우리는 PCB1에 있던 상태를 읽어서 처리기에 할당한다.

 

4. 프로세스 P1에 인터럽트가 들어와 현재 작업중이던 상태를 다시 PCB1에 저장한다

 

5. PCB0의 상태를 다시 읽어 처리기에 할당한다.

 

 

이런한 방법으로 프로세스 제어 블록(PCB)은 프로세스마다 달라지는 모든 정보를 저장하는 저장소의 역활을 한다

 

 

반응형

댓글