공부/운영체제
[방통대/운영체제] 스레드(thread)란?
솔솔바람개발
2022. 3. 13. 19:40
반응형
<프로세스와 스레드>
1-1. 전통적인 프로세스
- 처리의 기본 단위
- 자원 소유의 단위 (하나의 주소 공간)
- 디스패칭의 단위 (하나의 제어 흐름)
=> (디스패칭 : cpu를 할당하는 것)
하지만, 단일 프로세스 내에서 동시 처리 불가능
-> 스레드 등장!
★1-2. 스레드(Thread)란?
- 프로세스 내에서 다중처리를 위해 제안된 개념
- 하나의 프로세스 내에는 하나 이상의 스레드가 존재함.
- 하나의 스레드 내에서는 하나의 실행점만 존재 (디스패칭의 단위)
즉, 각 스레드마다 실행점(PC) 존재
- 실행에 필요한 최소한의 정보만을 가지며, 자신이 속해있는 프로세스의 실행환경을 공유
1-3. 다중 스레드의 장점
- 멀티 CPU 혹은 멀티코어 시스템에서는 병렬 처리 가능
- 처리 속도 별로 쓰레드가 나눠진 경우, 효율적인 처리 가능
(ex. cpu를 사용하는 계산용 스레드, I/O를 사용하는 입력용 쓰레드 등으로 쓰레드를 나누어 처리하는 것)
반응형