스레드의 정의
- CPU 스케줄러가 CPU에 전달하는 일 하나
- CPU가 처리하는 작업의 단위는 프로세스로부터 전달받은 스레드
- 운영체제 입장에서의 작업 단위는 프로세스
- CPU 입장에서의 작업 단위는 스레드
더보기
프로세스의 코드에 정의된 절차에 따라 CPU에 작업 요청을 하는 실행 단위
멀티태스크와 멀티스레드의 차이
- 멀티태스크 : 여러 개의 프로세스로 구성된 것
- 멀티스레드 : 하나의 프로세스에 여러 개의 스레드로 구성된 것 , 프로세스 내 작업을 여러 개의 스레드로 분할함으로써 작업의 부담을 줄이는 프로세스 운영 기법
CPU 멀티스레드
- 한 번에 하나씩 처리해야 하는 스레드를 파이프라인 기법을 이용하여 동시에 여러 스레드를 처리하도록 만든 병렬 처리 기법
- 멀티스레드 : 운영체제가 소프트웨어적으로 프로세스를 작은 단위의 스레드로 분할하여 운영 기법
- CPU 멀티스레드 : 하드웨어적인 방법으로 하나의 CPU에서 여러 스레드를 동시에 처리하는 벙렬 처리 기법
멀티스레드의 장점
- 응답성 향상
- 자원 공유
- 효율성 향상
- 다중 CPU 지원
멀티스레드의 단점
- 모든 스레드가 자원을 공유하기 때문에 한 스레드에 문제가 생기면 전체 프로세스에 영향을 미침
- 여러 개의 화면을 동시에 띄웠는데 그중 하나에 문제가 생기면 전체 종료가 됨
'Operating system' 카테고리의 다른 글
교착 상태 (0) | 2023.06.05 |
---|---|
CPU 스케줄링 (0) | 2023.06.04 |
프로세스의 구조 , 복사 (fork), 전환(exec) (0) | 2023.04.23 |
프로세스 (process) (1) | 2023.04.23 |
인터럽트 (0) | 2023.04.22 |