티스토리 뷰

운영체제/이론

(17) Process Management(Process creation)

geonwoopaeng@gmail.com 2020. 9. 17. 16:03

### Process creation ###

< 참고자료: https://www.tutorialspoint.com/process-vs-parent-process-vs-child-process >

: 다른 작업을 위해 시스템에서 process를 만든다(process 시작)

: 프로세스는 fork()를 이용해 다른 process에 의해 생성 될수있습니다.

(process 2개관리)

<*parent process>

: 시작 process를 제외한 fork() 시스템 호출을 실행 할 때 os의 모든 process

(상위 process)

<*child process>

: fork() 시스템 호출을 사용하여 os의 parent process에 의해 생성 된 process

(하위 process, parent process 복사판)

 

 

<Tree of process>

: process간 관계를 맺는 형태가 tree

: process는 'pid'를 사용하여 식별한다(pid: process 식별자)

<Resource sharing>

: 자원 공유

: child process가 생성이 되면

1. os를 통해서 computing resource를 별도 할당

2. parent resource의 일부 할당

3. parent 와 resource 공유

<Execution>

: 실행

: parent 와 child가 동시에 실행된다(병렬)

: parent는 child가 끝날 때 까지 기다립니다.

<Process Creation Commands>

1. fork()

: parent process copying을 위한 System call

2. exec()

: child process 메모리 공간을 *새로운 program으로 교체하기 위한 System call

3. wait()

: parent process가 child process가 완료 될 때 까지 기다린다 하면 자신의 process를 block 상태로 만들어 기다린다.

 

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

 

 

 

<Process Creation Example>

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

반응형

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

(19) Thread  (0) 2020.09.19
(18) Process Management(Process termination)  (0) 2020.09.17
(16) Context Switching  (0) 2020.09.17
(15) Processing Scheduling  (0) 2020.09.17
(14) PCB  (0) 2020.09.17
공지사항
최근에 올라온 글