728x90
프로세스
- 일반적으로 프로세서에 의해 처리되는 사용자 프로그램, 시스템 프로그램, 즉 실행중인 프로그램을 의미, 작업, 태스크라고 함
- 실기억장치에 저장된 프로그램, 프로시저가 활동중인 것, 비동기적 행위를 일으키는 주체, 운영체제가 관리하는 실행 단위
PCB(프로세스 제어 블록)
- 운영체제가 프로세스에 대한 중요한 정보를 저장해 놓은 곳
- 저장되어 있는 정보 : 프로세스의 현재 상태, 포인터, 프로세스 고유 식별자, 스케줄링 및 프로세스의 우선 순위, CPU 레지스터 정보
프로세스 상태 전이
- 제출(Submit) : 작업을 처리하기 위해 사용자가 작업을 시스템에 제출한 상태
- 접수(Hold) : 제출된 작업이 스풀 공간이 디스크의 할당 위치에 저장된 상태
- 준비(Ready) : 프로세스가 프로세서를 할당받기 위해 기다리고 있는 상태, 프로세스는 준비상태 큐에서 실행 준비
- 실행(Run) : 준비상태 큐에 있는 프로세스가 프로세서를 할당받아 실행되는 상태
- 대기(Wait) : 입,출력 처리가 완료될 때까지 대기하고 있는 상태
- 종료(Exit) : 프로세스 할당이 해제된 상태
프로세스 상태 전이 관련 용어
- Dispatch : 준비 상태 -> 실행 상태
- Wake Up : 대기 상태 -> 준비 상태
- Spooling : 시스템 성능 향상을 위해 입출력 데이터를 나중에 한꺼번에 입출력하기 위해 디스크에 저장하는 과정
스레드
- 프로세스 내에서의 작업 단위로서 시스템의 여러 자원을 할당받아 실행하는 프로그램의 단위
- 경량 프로세스라고도 함
- 독립적인 스케줄링의 최소 단위
- 동일 프로세스 환경에서 서로 독립적인 다중 수행이 가능
- 사용자 수준의 스레드 : 라이브러리를 사용해 스레드 운용, 커널 모드로 전환이 없어 오버헤드가 줄어들음, 속도가 빠르지만 구현이 어려움
- 커널 수준의 스레드 : 운영체제 커널에 의해 스레드 운영, 여러 스레드가 커널에 동시에 접근, 구현이 쉽지만 속도가 느림
- 장점 : 병행성 증진, 프로그램의 처리율 향상, 응용 프로그램 응답시간 단축, 기억장소 낭비가 줄어듬
'자격증 > 정보처리기사' 카테고리의 다른 글
161. 인터넷(A) (0) | 2023.02.06 |
---|---|
158. 주요 스케줄링 알고리즘(A) (0) | 2023.02.06 |
154~155. 가상기억장치 구현 기법 / 페이지 교체 알고리즘 / 기타 관리 사항(A) (0) | 2023.02.05 |
151. UNIX / LINUX / MacOS(A) (0) | 2023.02.05 |
142~146. 절차적, 객체지향, 스크립트, 선언형 언어, 라이브러리(A) (0) | 2023.02.05 |