04. Thread management

한강섭·2025년 1월 2일

자원할당 + 자원제어 = 프로세서
제어부분만 가져온 것이 Thread

스레드(Thread)

Light Weight Process (LWP)
프로세서 활용의 기본 단위
구성요소 Thread ID, Register set(PC, SP등), Stack(i.e. local data)
제어 요소 외 코드, 데이터 및 자원들은 프로세스 내 다른 스레드들과 공유

제어요소는 개인! 데이터 및 자원들은 공유!

스레드의 장점

사용자 응답성 일부 스레드의 처리가 지연되어도, 다른 스레드는 작업을 계속 처리 가능
자원 공유 자원을 공유해서 효율성 증가
경제성 프로세스의 생성, context switch에 비해 효율적
멀티 프로세서 활용 병렬 처리를 통해 성능 향상

예제

사용자 수준 스레드 (n:1)

사용자 영역의 스레드 라이브러리로 구현 됨

커널은 스레드의 존재를 모름

커널 수준 스레드 (1:1)

OS(Kernel)가 직접 관리
커널 영역에서 스레드의 생성, 관리 수행 (단점)
커널이 각 스레드를 개별적으로 관리 (장점)

혼합형 스레드 (n:m)

n개 사용자 수준 스레드 - m개의 커널 스레드 (n>m)

profile
기록하고 공유하는 개발자

0개의 댓글