자식은 부모의 주소 공간과 열린 파일을 논리적으로 물려받고, 실제 메모리는 copy-on-write로 늦게 복사됩니다.
프로세스 생성 단계
fork, exec, wait, 좀비, 고아, Windows CreateProcess를 한 흐름에 놓으면 부모 자식 관계와 종료 처리의 책임이 보입니다.
01fork
02child 분기
03exec 교체
04exit 상태
05wait 회수
PID와 일부 열린 파일은 유지한 채 현재 프로세스 이미지가 새 프로그램으로 바뀝니다.
부모가 종료 상태를 회수해야 프로세스 테이블 엔트리가 정리되고 좀비가 사라집니다.
부모가 먼저 종료되면 init이나 systemd 계열 프로세스가 새 부모가 되어 회수 책임을 맡습니다.