진짜 개발자
본문 바로가기

CS(Computer Science)/운영체제

프로세스 개요

728x90

프로세스는 실행중인 프로그램을 일컫는 말이다

하드디스크에는 많은 프로그램들이 적재되어 있고 그 프로그램들이 메인메모리에 적재되기 위해서는 Job Scheduler의 할당을 기다려야하고 또 메인 메모리에는 많은 프로세스들이 적재되어 있고 그 프로세스들이 CPU 할당을 받기 위해 Cpu Scheduler의 할당을 기다려야한다



프로세스

       - 하드디스크에 있는 프로그램이 메인 메모리에 적재된 것

  - 실행중인 프로그램

  - 프로그램카운터의 값 , 레지스터의 내용 , 스택 , 데이터섹션, 힙 을 포함한다

  

1. Job Scheduler ( Long Term Scheduler ) - 하드 디스크의 프로그램들이 메인 메모리에 할당 되기위해 Job Queue에서 대기중일 때

그것을 관장하여 메인메모리에 프로그램들을 할당하는 것


2. CPU Scheduler ( Short Term Scheduler ) - 메인 메모리에 적재되어 있는 프로세스들을 Ready 상태에 있다고 하는데

  이들은 Ready Queue에서 대기하며 CPU할당을 받기를 기다린다

                                                           이를 관리하는 것이 CPU Scheduler 이다.   



프로세스 종류

1. I.O 위주 프로세스 : I.O와 같은 입출력을 위해 Device를 주로 사용하는 프로세스


2. CPU 연산 위주 프로세스 : CPU 연산을 위주의 작업을 요하는 프로세스



PCB(프로세스 제어 블록) 

- 프로세스는 운영체제에서 PCB에의해 표현된다

     - 프로세스 상태 , PC , CPU 레지스터들 , CPU스케쥴링정보 , 메모리관리정보 , 회계정보 , 입출력 상태정보 를 포함.

     - PC, 레지스터 정보들은 인터럽트 발생시 나중에 프로세스가 계속해서 정상 실행되기 위해 저장된다.



프로세스 생명주기    

(출처 - http://yimoyimo.tk/OS-Process/)


'CS(Computer Science) > 운영체제' 카테고리의 다른 글

스레드 개요  (0) 2018.10.06
프로세스 스케줄링  (0) 2018.09.24
메모리관리(메모리 낭비 방지)  (0) 2018.09.06
멀티프로그래밍 , 멀티프로세싱  (0) 2018.09.06
메모리 관리(개요)  (0) 2018.09.06