프로세스 트리
위 트리에서, 가장 먼저 os에 의해 생성되는 프로세스는 init 프로세스. 이 때 init 프로세스의 pid는 0이다. sshd와 dockerd, gnome은 init process에 의해 생성된 자식 프로세스이며, 반대로 init프로세스는 이 프로세스들의 부모 프로세스이다. sshd와 dockerd는 sibling process 관계이다.
Process Identifier(PID)
사람이 주민등록을 가지는 것처럼 프로세스도 PID를 통해 자신을 나타낼 수 있는 정수값을 부여받는다. 일반적으로 init과 같은 가장 처음에 만들어지는 process의 PID는 0이다.
PPID : parent의 PID
프로세스의 생성
fork() : system call의 일종으로, 부모의 프로세스를 복사해 새 프로세스를 만든다. 포크처럼 하나에서 여러 개가 생성되는 것 같다고 해서 fork로 이름붙여졌다.
exec() : 새로 만들어진 프로세스에 실행 파일을 복사하고 메모리로 가져온다. execute에서 따왔다.
프로세스의 종료
프로세스의 종료
exit() : system call의 일종으로, 프로세스를 종료시킨다. 해당 프로셋가 가졌던 모든 자원은 OS에게 반환된다. (메모리, 열었던 파일, 입출력 장치 등)