OS #20 쓰레드 개념

underlier12·2020년 3월 30일
0

OS

목록 보기
20/35

20. 쓰레드 개념

Thread

Light Weight Process라고도 불리며 프로세스 내에 다중으로 존재할 수 있는 작업 단위이다. 스레드들은 동시에 실행 가능하다.

프로세스 간 데이터 접근이 불가한데 반해 스레드는 가능

프로세스와 스레드 차이

스레드들은 각기 실행가능한 스택이 존재하며 프로세스와 마찬가지로 레지스터 내 PC/SP를 가지게 된다.

Multi Thread

소프트웨어 병행 작업 처리를 위해 멀티 스레드를 사용하며 Stack 영역을 제외하고는 모든 영역을 부모 프로세스와 공유한다.

멀티 프로세스 vs 멀티 태스킹

최근 CPU는 멀티 코어를 가지므로 Thread를 여러 개 생성하여 멀티 코어의 활용도를 높인다. 오른쪽의 멀티 프로세싱을 구현하기위해서 하나의 JOB에 여러 쓰레드를 생성하여 진행하는 것이다.

또한 OS는 우측 하단과 같은 형태의 프로그램을 구동할 수 있도록 지원한다.

profile
logos and alogos

0개의 댓글