[CS] PCB

Daeyoung Nam·2021년 5월 13일
1

CS

목록 보기
6/8

정의

Process Control Block(이하 PCB)는 특정한 프로세스를 관리할 필요가 있는 정보를 포함하는 운영체제 커널의 자료구조이다.
즉 PCB는 OS가 프로세스를 표현한 것이라고 할 수 있다.

OS가 프로새스 스케줄링을 위해 프로세스에 관한 모든 정보를 가지고 있는 DB를 PCB라 한다.

프로세스가 생성될 때 UNIQUE한 PCB가 하나 생성되고 프로세스가 끝나면 사라지게 됨

구조

  1. PID = 프로세스 식별자
  2. Process State = CREATE, READY, RUNNING, WAITING, TERMINATED의 상태가 있다.
  3. Program Counter = 프로세스가 다음에 실행할 명령어의 주소를 가르킴
  4. Cpu Register 및 일반 레지스터
  5. Cpu Scheduler 정보 = 우선순위, 최종 실행시각, CPU점유시간 등
  6. 메모리 관리 정보 = 해당 프로세스의 주소 공간 등
  7. 프로세스 계정 정보 = 페이지 테이블, 스케줄링 큐 포인터, 소유자, 부모
  8. I/O 상태 정보 = 프로세스의 할당된 입출력 장치 목록, 열린 파일 목록 등
  9. 포인터 = 부모 프로세스에 대한 포인터, 자식 프로세스에 대한 포인터, 프로세스가 위치한 메모리 주소에 대한 포인터, 할당된 자원에 대한 포인터 정보 등
profile
내가 짠 코드가 제일 깔끔해야하고 내가 만든 서버는 제일 탄탄해야한다 .. 😎

0개의 댓글