[OS] 사용자 스레드(User Thread)와 커널 스레드(Kernel Thread)
·
Computer Science/Operating System
사용자 스레드 (User Thread) 커널과 상관없이 완전한 사용자 수준(User-level)의 패키지 사용자 수준의 스레드 라이브러리(Library)를 통해 구현됨 스레드 라이브러리는 커널 지원없이 스레드 생성, 동기화, 스케줄링, 관리 기능 제공 장점 성능 (속도가 빠름) 복잡한 비동기 기법을 ‘라이브러리’가 제공] 커널 스레드 (Kernel Thread) 운영체제(Kernel)가 지원하는 스레드 기능으로 구현됨 스레드 생성, 동기화, 스케줄링, 관리가 커널에 의해 커널 공간에서 행해짐 일반적으로 ‘사용자 스레드’에 비해 ‘생성’,’관리’가 너무 느림 다중 스레드 모델 3가지 다-대-일 (Many-to-One) 많은 ‘사용자 스레드’를 하나의 ‘커널 스레드’로 매핑 스레드 관리는 사용자 공간의 스레..
[OS] 스레드(Thread)란?
·
Computer Science/Operating System
스레드 개발 동기 DB 서버의 요구 처리 과거 서버는 클라이언트 요구가 도착할 때마다, 새로운 프로세스를 생성 - fork() 단점 프로세스 생성에 대한 오버헤드 (생성 비용 비쌈) 프로세스간 통신 비용 큼(메시지 패싱, 공유 메모리) 네트워크와 같은 자원 공유가 어려움 프로세스를 처리기에 전달하고, 결과를 다시 수집하는 오버헤드 전통적인 PCB(Process Control Block) 구성 스레드 (Threads) CPU 이용의 기본단위 경량 프로세스 (LWP: Light Weight Process) 애플리케이션 내에서 실행 커널은 일반적으로 다중 스레드(Multi Thread) 프로세스 생성은 무겁고, 스레드 생성은 가벼움 구성 고유한 스레드 ID, 프로그램 카운터, 레지스터 집합, 스택 등 같은 프..
HaSeon9
'스레드' 태그의 글 목록