본문 바로가기

운영체제 (이화여대 반효경)

운영체제 강의 12

📌  프로세스와 관련한 시스템 콜

‣ fork() : create a child (copy)

 

‣ exec() : overlay new image

 

‣ wait() : sleep until child is done

 

‣ exit() : frees all the resources, notify parent

 


 

📌  wait() 시스템 콜

 

- 프로세스 A가 wait() 시스템 콜을 호출하면

          ✓ 커널은 child가 종료될 때까지 프로세스 A를 sleep시킨다 (block 상태)

          ✓ Child process가 종료되면 커널은 프로세스 A를 깨운다 (ready 상태)

 

 

 

📌  exit() 시스템 콜

 

‣  프로세스의 종료

      ✓ 자발적 종료

               • 마지막 statement 수행 후 exit() 시스템 콜을 통해

               • 프로그램에 명시적으로 적어주지 않아도 main 함수가 리턴되는 위치에 컴파일러가 넣어줌

 

      ✓ 비자발적 종료

               • 부모 프로세스가 자식 프로세스를 강제 종료시킴

                           - 자식 프로세스가 한계치를 넘어서는 자원 요청

                           - 자식에게 할당된 태스크가 더 이상 필요하지 않음

               • 키보드로 kill, break 등을 친 경우

               • 부모가 종료하는 경우

                           - 부모 프로세스가 종료하기 전에 자식들이 먼저 종료됨

 

 

 

 

 

'운영체제 (이화여대 반효경)' 카테고리의 다른 글

운영체제 강의 14  (0) 2021.07.14
운영체제 강의 13  (0) 2021.07.14
운영체제 강의 11  (0) 2021.07.13
운영체제 강의 10  (0) 2021.07.13
운영체제 강의 9  (0) 2021.07.13