Process: Process Tree, Child Processes, Root Processes
포스트 난이도: HOO_Middle
# Process Tree
Process(프로세스)는 프로그램을 실행시키는 역할을 수행한다.
Process는 다른 프로세스들을 생성할 수가 있는데, 이렇게 새롭게 생성된 하위 프로세스를 Child processes들이라고 부른다.
Child processes들은 Root processes들이라고도 불리며 Process tree를 통해 쉽게 이해할 수 있다.
위의 예제 Process tree를 살펴보면 A는 Child processes로 B, C, D가 새롭게 생성되어 있는 걸 알 수 있다.
또한 B는 E라는 또 다른 Child process를 가지고 있고, C는 F를 가지고 있는 걸 알 수 있다.
반면에 D의 경우는 G와 H라는 두 개의 Child processes들을 가지고 있는 걸 볼 수 있다.
Unix에서는 다른 Processes들을 모두 가지고 있는, 여기서는 A에 해당하는 Process를 init process라고 한다.
또한 대부분 Unix의 경우에는 PID=1이 성립된다.
# Interprocess Communication
흔히 IPC라고 줄여서 부르는 Interprocess communication은 프로세스 간의 소통 방법을 의미한다.
위의 Process tree 예제를 보더라도 여러 프로세스들이 존재할 때 서로 간의 소통을 통한 효율적인 작업 수행이 이루어져야 한다.
효율성도 있지만 여러 프로세스가 하나의 작업을 동시에 수행할 경우 에러가 발생하여 문제가 생길 수 있기 때문에 이러한 경우를 방지하고자 IPC가 존재한다.
IPC에 구체적인 설명은 IPC 포스트를 통해서 살펴볼 수 있다.
'Computer Science' 카테고리의 다른 글
[Operating System] System Calls Example Tables (0) | 2022.03.04 |
---|---|
[Operating System] Shell과 System Call: Prompt, POSIX (0) | 2022.03.04 |
[Operating System] Process Associate: Address Space, Registers, Resources (0) | 2022.03.04 |
[Operating System] Operating System History (0) | 2022.03.03 |
[Operating System] Resource Manager Multiplexing: In Time, In Space (0) | 2022.03.03 |
댓글