본문 바로가기
CS

PCB

by 원만사 2020. 8. 29.
반응형

Process Control Block

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

- PCB는 운영체제가 프로세스를 표현한 것이라고 볼 수 있다.

- 운영체제가 프로세스 스케줄링을 위해 프로세스에 관한 모든 정보를 가지고 있는 데이터베이스

- 운영체제에서 프로세스는 PCB로 나타내어지며, PCB는 프로세스에 대한 중요한 정보를 가지고 있다. 각 프로세스가 생성될때마다 고유의 PCB가 생성되고, 프로세스가 완료되면 PCB는 제거된다.

 

- 프로세스가 CPU를 점유하여 작업을 처리하다가 상태가 전이되면, 진행하던 작업 내용들을 모두 정리하고 CPU를 반환해야 하는데, 이 때 진행하던 작업들을 모두 저장하지 않으면 다음에 자신의 순서가 왔을 때 어떠한 작업을 해야하는지 알 수 없다.

 

- 따라서, 프로세스는 CPU가 처리하던 작업의 내용들을 자신의 PCB에 저장하고, 다음에 다시 CPU를 점유하여 작업을 수행해야 할 때, PCB로부터 해당 정보들을 CPU에 넘겨와서 계속해서 하던 작업을 진행할 수 있다.

 

PCB

(1) 프로세스 식별자

- 각 프로세스는 고유한 ID를 가지고 있다.

 

(2) 프로세스 상태

- 프로세스의 상태를 나타낸다(new, running, waiting, executing, blocked, suspended, terminated)

 

(3) 프로그램 카운터

- 다음에 실행할 명령의 주소

 

(4) 레지스터 정보

- 프로세스와 관련된 레지스터

 

(5) 스케줄링 정보

- 프로세스 우선순위에 관한 정보

 

(6) 메모리 관리 정보

- 페이지 및 세그먼트 테이블로 구성

 

(7) 계정 정보

- CPU 활용 및 실행시간에 관한 세부사항

 

(8) input / output과 관련된 상태 정보

- 프로세스 실행 중에 열린 파일 및 리소스 활용에 관한 세부 정보

 

※ 참고

https://www.includehelp.com/operating-systems/process-control-block-in-operating-system.aspx

https://jwprogramming.tistory.com/16

 

 

 

 

반응형

'CS' 카테고리의 다른 글

Inheritance와 Delegation (상속과 위임)  (0) 2020.09.05
디자인 패턴(Design Pattern)  (0) 2020.09.04
Process / Thread  (0) 2020.08.28
REST  (1) 2020.08.22
Gradle  (0) 2020.08.22

댓글