Process란
- 실행중인 프로그램
- 프로그램 실행을 위해선 반드시 메인메모리에 적재되어야한다.
- 하나의 프로세스내에 여러일이 동시에 일어난다 ⇒ 멀티 쓰레드
- is a unit of work
Process Concept
- process의 4요소 ~ 메모리에 로드된 프로그램
- text section (program code)
- stack : current activity (return 주소, 지역변수)
- data section (전역변수)
- heap : for dynamic 할당 of memory during 프로세스 실행중
- stack & heap ⇒ 프로그램의 현재상태 저장
- process가 active하다 ⇒ 하나의 프로그램에서 생긴 프로세스라도 heap, stack의 모습이 다르다 ⇒ 현재 상태가 다르다. 레지스터, PC등을 사용하는 모습
PCB (Process Control Block)
- OS에서 Process를 관리하기 위한 정보들을 담아둔 것 (현 상태, PC..)
Thread란
- an independent stream of instructions
- 독립적으로 실행되는 명령어들의 흐름(묶음)
- 동일한 프로그램 안에서 일어나는 다양한 일들
- multi thread : 하나의 프로세스(process)를 여러 thread로 분할하여 처리
multithread process
- thread ID, PC가 있고
- data & context를 share한다
- 현재 상태 (stack & heap)은 다르다
'Master Piece of jun > 컴퓨터개론' 카테고리의 다른 글
Context Switching VS Swapping CPU와 메모리에 있는 프로세스 관리하기 (0) | 2021.11.08 |
---|---|
multi-processing VS multi-thread (0) | 2021.11.08 |
System Call / API(Application Programming Interface) (0) | 2021.11.08 |
I/O sub system (memory management of I/O) (0) | 2021.11.08 |
Process와 Process Concept (0) | 2021.11.08 |