Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 인터락 함수
- 프로세스 제어 블록
- Reentrant
- 유저 모드의 동기화
- Activity
- 모니터(Monitor)
- Process Control Block
- 프로세스 상태 전이도
- 커널 모드
- Stack영역
- 커널 모드의 동기화
- 스레드
- The Banker's Algorithm
- Light Weight Process
- 프로세스
- 동기 비동기
- Non-Preemptive
- 문맥 교환
- Heap영역
- 스레드 동기화
- Multi-level Queue
- 블로킹 논블로킹
- 방금 그 곡
- 경량 프로세스
- 유저 모드
- 뮤텍스(Mutex)
- The DIning Philosopher Problem
- 은행원 알고리즘
- 교착 상태
- 임계 구역
Archives
Blog For Me
[운영체제] PCB(Process Control Block) 본문
PCB는 무엇인가?
PCB는 프로세스 제어 블록(Process Control Block)의 줄임말로, 운영체제가 프로세스에 대한 중요한 정보를 저장해 놓을 수 있는 일종의 자료 구조이다. 어떤 작업을 처리하는 와중에 갑자기 급한 이벤트가 발생했을 때, 기존에 작업하던 프로세스를 어딘가에 저장을 해놓아야 하는데, 그러한 기능을 하는 곳이 PCB이다. Context Switching이 발생할 때 기존에 실행하던 프로세스를 PCB에 저장 후 중단시키고 새로 실행하는 프로세스의 PCB를 불러온다.
PCB 저장내용
- Process State: 프로세스의 각 상태를 저장한다. 생성, 준비, 실행, 대기, 종료 중 해당 상태 정보를 저장한다.
- Process Number: 프로세스의 아이디 정보이다.
- Process counter: 이 프로세스에서 다음에 실행할 명령어의 주소를 가리키는 카운터를 저장한다.
- CPU Register: 누산기, 인덱스 레지스터, 스택 포인터 등을 포함하며, 이 상태 정보는 인터럽트 발생시, 해당 프로세스가 다시 작업을 재개할 때 중단된 위치에서부터 시작할 수 있도록 하기 위해 PCB에 저장되어야 한다.
- CPU-scheduling information: 이 정보는 프로세스 우선순위, 스케줄링 큐 포인터, 그리고 다른 스케줄링 파라미터 등을 포함한다.
- Memory-management information: 프로세스의 메모리 관리 시스템에 대한 정보가 포함된다. 페이지 테이블, 세그먼트 테이블 등이 있다.
- Accounting information: CPU 사용시간, 실제 사용시간 등의 정보가 포함되어 있다.
- I/O status information: 프로세스에 할당된 입출력 장치들 목록, 열려 있는 파일 목록 등등이 포함되어 있다.
'컴퓨터과학 > 운영체제' 카테고리의 다른 글
프로그램과 프로세스의 차이점 (0) | 2021.11.10 |
---|---|
[운영체제] 스레드(Thread)의 개념 (0) | 2021.10.30 |
[운영체제] Context Switching(문맥 교환) (0) | 2021.10.29 |
[운영체제]프로세스(Process) 상태 전이도 (0) | 2021.10.29 |
[운영체제]프로세스(process) 메모리 구조 (0) | 2021.10.28 |
Comments