728x90
반응형
- 같은 address space 안에 살고 있다
- 병렬 처리가 가능해 진다
- 전역변수를 통한 데이터 공유가 가능하다
- 일반적으로 프로세스가 생성되면 싱글 스레드로 동작한다
- thread를 사용하면 CPU core가 하나만 있는 경우라도 코드의 동시 실행이 가능하다
* parallelism: 시스템이 둘 이상의 작업을 동시에 수행할 수 있음
실제 물리적으로 동시에 동작(코어 2개 이상)
* concurrency: 두 개 이상의 작업을 지원하여 진행 중
단일 프로세서 코어, 동시성을 제공하는 스케쥴러
- 일반적인 thread 간 통신은 큐를 사용
- 프로세스당 프로그램 카운터가 여러 개인 것을 고려한다
- 여러 위치를 동시에 실행할 수 있음(다중 제어 스레드 -> 스레드)
- thread 세부 정보를 저장할 수 있어야 한다. PCB에 여러 프로그램 카운터가 있어야 한다.
- thread 대신 process 사용도 가능하나, thread가 더 가볍고 응답성이 좋다
- many-to-one: one thread blocking causes all to block
728x90
반응형
'📖 이론 > 운영체제' 카테고리의 다른 글
Porable Operating System Interface(POSIX) (0) | 2022.05.10 |
---|---|
Process Control Block(PCB) (0) | 2022.05.10 |
process state diagram (0) | 2022.05.10 |
monolithic kernel VS micro kernel (0) | 2022.04.28 |
fork()_C언어(Linux) (0) | 2022.04.28 |