[운영체제] 프로세스의 생성과 종료

yeonjkim·2021년 11월 11일
0

운영체제

목록 보기
9/11

프로세스의 생성과 종료

프로세스의 생성

  • 프로세스는 프로세스에 의해 성성됨.

    • 부모 프로세스
    • 자식 프로세스
    • sibling processes : 부모가 같은 프로세스
    • 프로세스 트리
      위 트리에서, 가장 먼저 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에게 반환된다. (메모리, 열었던 파일, 입출력 장치 등)

0개의 댓글