3학년/운영체제

Chapter 2-1

김야키 2018. 3. 22. 20:04


프로세스와 스레드 관리 1

프로세스관리의 주요 목적

-       CPU자원 관리

-       CPU스케줄링 (=프로세스 스케줄링)

 

중앙처리장치 스케줄링 (CPU Scheduling)

-       정의 : 준비 완료된 상태에 있는 프로세스를 CPU에 할당 시키는 정책

-       목적 : CPU처리 효율을 위함

 

프로세스란?

-       실행 중인 프로그램 (=프로세스)

-       PCB (Process Control Block)

n  프로세스를 실행시킬 때 필요한 정보를 모아둔 집합체

n  주로 RAM(메인 메모리)에 저장시킴

n  프로그램 카운터를 가지고 있음 (지금 현제 실행중인 프로그램의 위치 = 포인터)

u  PC라고 함

u  Main( )함수를 가리킴

-       능동적인 개체로, 순차적으로 수행하는 프로그램

-       프로세스와 프로그램의 차이

n  프로그램 = 설치된 프로그램

n  프로세스 = 실행중인 프로그램

 

프로세스 관리

-       프로세스에 관련된 모든 것

-       프로세스 일시 중지, 재 수행

-       프로세스 스케줄링

-       프로세스 동기화

-       프로세스 간 통신

-       교착상태 처리


 

프로세스 구성 요소

-       임의의 프로그램이 실행되기위해 반드시 실행되기 전에 주 기억장치에 저장되어야 한다.

-       크게 프로그램의 코드영역(Code) 과 변수영역(데이터, 스택, 힙 영역)이 된다.

-       코드(Code) 영역

n  프로그램의 코드 (=Source Code)


-       데이터 영역

n  전역 변수와 정적 변수의 할당

n  정적 변수(static) : 프로그램이 실행될 때 만들어지는 변수

n  데이터 전체에서 Access 할 수 있는 정보


-       스택 영역

n  FILO

n  지역 변수 할당과 함수 호출 시 전달되는 인수 값

n  일시적으로 필요한 변수들을 사용할 때 할당되는 부분

n  함수의 지역변수를 관리


-       (Heap) 영역

n  동적 할당

n  객체 지향 언어에서 많이 사용됨

n  배열과 같은 부분을 동적으로 할당할 때 사용됨

n  메모리를 차지하는 부분

 

프로세스의 상태

-       New (Ready) (Run) Quit

(Wait)

-       Ready : 프로그램을 더블클릭 해서 실행시킨 상태

n  Queue : FIFO

n First In First Out


-       Run : CPU를 잡고있는 상태 (=CPU가 할당된 상태)

n  입출력을 하는 도중에는 Wait상태로 들어간다.

n  CPU스케쥴에 따라서 Ready상태로 돌아갈 수 있다

.

-       Wait : 인터럽트가 걸리면 해당 프로세스는 CPU를 놓고 Wait상태로 빠짐 그 후에 인터럽트가 끝나게 되면 Ready상태로 돌아 감


 

프로세스 제어 블록(PCB)

-       프로세스를 제어하기 위해 필요한 모든 정보들

-       Ready Q 시에 저장되는 전체 데이터 : PCB

-       PCB

n  프로세스 상태 : Ready, Run, Wait

n  프로세스 ID(번호)

u  중간에 프로세스가 종료되면 해당 번호를 주는 것이 아닌 최종 번호의 다음 번호를 준다.

u  같은 프로세스라도 해당 프로세스를 실행 시킬 때 마다 항상 바뀐다.

u  마지막 번호가 되면 중간에 비어 있는 번호를 부여한다.


n  프로그램 카운터

u  프로그램이 실행되는 순서


n  레지스터

u  Run상태에 있을 때 실행시키기 위해 변수가 잠시 저장되는 부분

u  프로세스 위치 저장

u  함께 사용된 프로그램 저장

u  그렇게 해야 Run상태에서 Wait상태로 갔다가 Ready상태가 되었을 때 레지스터에 저장된 상태 그대로 저장시키는 부분

 

PCB교환

-       Context Switch

-       모든 정보는 Queue에 저장 되어있음

 


'3학년 > 운영체제' 카테고리의 다른 글

Chapter4-1  (0) 2018.04.17
Chapter3  (0) 2018.04.13
Chapter2-3  (0) 2018.04.12
Chapter2-2  (0) 2018.03.28
Chapter1  (0) 2018.03.15