티스토리 뷰
### 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 상태로 만들어 기다린다.
<Process Creation Example>
'운영체제 > 이론' 카테고리의 다른 글
(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 |