반응형

 

 

 

 

 

 

 

 

1. 쓰레드 개요

: 프로세스에서 실행 제어만 분리한 실행 단위 = 경량 프로세스

: 쓰레드를 포함하는 프로세스 = 중량 프로세스

 

 

 

- 쓰레드 구조

 

 

 

 

 

 

 

- 단일 쓰레드 & 다중 쓰레드 모델

단일 쓰레드 : 프로세스 하나에 쓰레드 하나만 지원합니다.

다중 쓰레드 : 프로세스 하나에 여러 개의 쓰레드를 지원합니다.

 

 

 

 

2. 쓰레드란?

: 문맥 교환이 용이하지 않은 자원들을 공유합니다.

 

 

 

- 쓰레드의 장점

: 자원과 메모리의 공유가 가능합니다.(IPC 프로그램이 용이)

: 다중 프로세서 구조 활용이 가능합니다.

 

 

 

 

 

 

 

 

3. 쓰레드 라이브러리

: 프로그래머들에게 쓰레드를 생성하고 관리하기 위한 API를 제공합니다.

ex) POSIX Pthread, Win32, Java

 

 

 

즉, 프로세스는 직접 실행하는 것이고,

쓰레드는 이에 관해 만들어져있는 함수를 가져다 쓰는 것입니다.

 

쓰레드 프로그래밍 예시

 

 

 

 

 

 

 

 

 

 

 

* 정보처리기사 문제 풀어보기 *

 

1. 현재실행중이거나 실행가능한 CPU 할당받을 있는 프로그램? 프로세스

2. PCB가 포함하고 있는 정보 

-레지스터 보관 정보(), 프로세스의  상태포인터

3. 특정 프로세스의 작업이 중단되어 CPU 다른 프로세스에게 넘겨줄 , 전 프로세스의 레지스터들은 저장되고, 실행될 프로세스의 레지스터를 시스템에 적재하는 작업? Context Switching 문맥 교환

4. 쓰레드

- 모든 쓰레드는 프로레스의 자원과 상태를 공유함

- 다중 스레드의 개념을 도입하면 자원중복할당을 방지

- 하나의 프로세스에 여러개의 스레드를 생성하여 병행성 증진

반응형

+ Recent posts