-
[운영체제] Process vs ThreadCS/운영체제 2021. 4. 22. 19:07
Process vs Thread
Process
- 실행중인 프로그램으로 디스크로부터 메모리에 적재되어 CPU의 할당을 받을 수 있는 것
- 각 프로세스는 별도의 주소 공간에서 실행되며, 한 프로세스는 다른 프로세스의 변수나 자료구조에 접근할 수 없다.
- 할당 받는 시스템 자원
- 스택 : 로컬 변수와 같은 임시 자료 저장
- 데이터 섹션 : 전역 변수 저장
- 힙 : 프로그램 실행 중에 동적으로 할당되는 메모리
Thread
- 프로세스 내에서 실행되는 여러 흐름의 단위
- 스레드는 프로세스 내에서 각각 스택만 따로 할당받고 데이터 섹션, 힙 영역은 공유한다.
프로세스 제어 블록 (Process Control Block)
특정 프로세스에 대한 중요한 정보를 저장하고 있는 운영체제의 자료구조이다.
프로세스는 CPU의 할당을 받아 작업을 처리하다가도, 전환이 발생하게 되면 CPU를 반환하게 되는데, 이 때 정보들을 모두 PCB에 저장하게 됩니다. 또한, 다시 CPU의 할당을 받게 될 때, PCB에 저장된 정보를 불러와 작업을 처리하게 됩니다.
'CS > 운영체제' 카테고리의 다른 글
[운영체제] Multi Process vs Multi Thread (0) 2021.04.22