프로세스 관리
v1 개정 2024.12.31
2024.12.18
· Updated 2024.12.31

  • 누가 프로세스를 만드는가?
  • 부모 프로세스가 자식 프로세스를 만듦
  • 보통 복제해서 생성함
  • 부모 프로세스와 자원을 공유하는 경우도 있고 공유하지 않는 경우도 있음
  • Copy-on-write (COW) 기법이라고 함
  • 부모의 주소 공간을 그대로 복사. 운영체제에 있는 PCB, 자원들의 데이터도 똑같이 복사함
  • 그리고 자식은 그 공간에 새로운 프로그램을 덮어 씌움
  • fork()라는 시스템 콜
  • 그 다음 exec()이라는 시스템 콜로 새로운 프로그램을 메모리에 올림
  • exit() 시스템 콜로 종료가 됨
  • 프로세스가 종료될 때 부모에게 wait() 시스템 콜을 통해 output data를 전달
  • abort() 시스템 콜로 강제종료가 될 경우도 있음
  • 부모가 exit()되는 경우에는 자식 프로세스를 먼저 kill한 다음에 단계적으로 종료됨
  • fork() 함수를 실행하면, 자식 프로세스는 프로세스과 똑같이 문맥을 복사
  • pid = fork(); 시점 다음 시점부터 각자 실행되므로, 부모 프로세스는 Hello, I am parent!를 출력, 자식 프로세스는 Hello, I am child!를 출력하게 됨
  • exec()은 새로운 프로세스로 다시 태어나는 것

  • Loading comments...

    관련 포스트

    © Churnobyl 성철민
    Contact: tjdcjfals@gmail.com