솔솔 개발블로그

[방통대/운영체제] 스레드(thread)란? 본문

공부/운영체제

[방통대/운영체제] 스레드(thread)란?

솔솔바람개발 2022. 3. 13. 19:40
반응형

 

 

<프로세스와 스레드>

 

1-1. 전통적인 프로세스

- 처리의 기본 단위

- 자원 소유의 단위 (하나의 주소 공간)

- 디스패칭의 단위 (하나의 제어 흐름)

   => (디스패칭 : cpu를 할당하는 것)

 

하지만, 단일 프로세스 내에서 동시 처리 불가능

-> 스레드 등장!

 

 

★1-2. 스레드(Thread)란?

- 프로세스 내에서 다중처리를 위해 제안된 개념

- 하나의 프로세스 내에는 하나 이상의 스레드가 존재함.

- 하나의 스레드 내에서는 하나의 실행점만 존재  (디스패칭의 단위)

  즉, 각 스레드마다 실행점(PC) 존재

- 실행에 필요한 최소한의 정보만을 가지며, 자신이 속해있는 프로세스의 실행환경을 공유

프로세스와 스레드

 

 

1-3. 다중 스레드의 장점

- 멀티 CPU 혹은 멀티코어 시스템에서는 병렬 처리 가능

- 처리 속도 별로 쓰레드가 나눠진 경우, 효율적인 처리 가능

(ex. cpu를 사용하는 계산용 스레드, I/O를 사용하는 입력용 쓰레드 등으로 쓰레드를 나누어 처리하는 것)

 

 

반응형
Comments