티스토리 뷰

운영체제/이론

(13) Process

geonwoopaeng@gmail.com 2020. 9. 16. 00:40

### Process ###

: storage에 저장되어 있는 프로그램을 기반으로 해서 메모리에 올려서 실행실 킬 수 있는 instance, 객체

=> 실행되고 있는 프로그램

< 제한된 computing resource가 제공되는 multi-processing >

: 단일 컴퓨팅 리소스에서 여러 프로세스가 실행할 때

(우선순위 process를 정해서 사용한다)

: cpu utilization(이용률 최대화시킨다 -> 노는 자원 없애기 위해서)

: user-interaction(process에 대해서 즉각적으로 받을 수 있어야 한다. )

: processing speed(프로세스를 최대한 빨리 처리할수록 컴퓨터가 좋은 성능을 가진다)

<Process in Memory>

출처: Operating System Concepts 10th Ed (John Wiley & Sons, Inc. 2018)

 

 

text: 프로세스를 처리할 수 있도록 하는 명령어

data: static/global variables(변수), process data

heap: 개발자가 직접 할당한 dynamic memory

(동적 메모리, malloc()) - run time 중간에 할당

stack: local variable, function parameter, return address 정보

<Process State(상태)>

: 임의의 한 시점에 대해서 단일 cpu 자원을 할당 받는 process는 1개이다.

 

출처: Operating System Concepts 10th Ed (John Wiley & Sons, Inc. 2018)

 

 

1. New: process가 작성 중인 상태

2. Ready: cpu자원을 할당 할 수 있는 상태(process가 processor에 지정되기를 기다리고 있는 상태)

3. Running: instructions(명령)이 실행되고 있는 상태

4. Waiting: process가 (i/o or 이벤트 상태)를 기다리고 있는 상태(cpu가 다른 process로 넘어갔을 때)

5. Terminated: process가 완료된 상태

반응형

'운영체제 > 이론' 카테고리의 다른 글

(15) Processing Scheduling  (0) 2020.09.17
(14) PCB  (0) 2020.09.17
(12) System Call & Trap & Timer  (0) 2020.09.16
(11) Dual-mode  (0) 2020.09.16
(10) MultiProgramming & MultiTasking  (0) 2020.09.16
공지사항
최근에 올라온 글