개발

요리책 운영체제. Chapter 3 프로세스와 스레드 연습문제 풀이

mycloudy 2021. 10. 10. 16:51

Part 2 프로세스 관리

Chapter 3 프로세스와 스레드

연습문제

  1. 프로그램이 프로세스가 되려면 운영체제로부터 무엇을 받아야 하는가?
    • PCB (Process Control Block)
  2. 프로세스의 상태 중 CPU를 할당받기 위해 기다리는 상태는 무엇인가?
    • 준비상태
  3. 프로세스의 상태 중 입출력 작업을 하기 위해 이동하는 상태는 무엇인가?
    • 대기상태
  4. CPU 스케줄러가 준비 상태에 있는 프로세스 중 하나를 골라 CPU를 할당하는 작업을 무엇이라고 하는가?
    • CPU 스케줄링
  5. 유닉스에서 ctr + z 키를 눌러 프로세스가 중단되면 프로세스는 어떤 상태로 바뀌는가?
    • 휴식 상태
  6. 실행 상태에서 하나의 프로세스가 나가고 새로운 프로세스가 들어오는 상황을 무엇이라고 하는가?
    • 문맥 교환(context switching)
  7. 실행 중인 프로세스로부터 새로운 프로세스를 복사하는 시스템 호출은 무엇인가?
    • fork()
  8. 프로세스의 골격은 그대로 둔 채 코드 영역만 바꾸는 시스템 호출은 무엇인가?
    • exec()
  9. 부모 프로세스가 기다리지 않아 자원이 회수되지 못하고 계속 살아있는 프로세스는 무엇인가?
    • 고아 프로세스
  10. 프로세스의 코드에 정의된 절차에 따라 CPU에 작업 요청을 하는 실행 단위로서 가벼운 프로세스라고 불리는 것은 무엇인가?
    • 스레드
  11. 고아 프로세스를 방지하기 위해 부모 프로세스는 어떤 시스템 호출을 사용하는가?
    • wait()
  12. 작업이 끝난 프로세스의 자원을 회수하는 행위를 무엇이라고 하는가?
    • Garbage Collection
  13. 모든 프로세스를 부모-자식 관계로 만들어 자원 회수를 용이하게 하는 프로세스의 구조는 무엇인가?
    • 프로세스 계층 구조