이론/운영체제
[OS] 프로세스 생성/종료
ohojee
2023. 7. 22. 22:34
프로세스 상태
디스패처: 처리기를 한 프로세스로부터 다른 프로세스로 교체해주는 프로그램
프로세스 A → 디스패처 → 프로세스 B → 디스패처 → 프로세스 C → 디스패처 → 프로세스 A
프로세스 생성/종료
프로세스 생성
프로세스를 관리하기 위해 필요한 자료구조를 만들고 그 프로세스에게 주기억장치 내의 주소공간 할당
프로세스 생성 이유
- 새로운 일괄처리 작업: 작업이 제출될 때
- 대화형 로그온: 새로운 사용자가 로그온할 때
- 운영체제가 생성: ex) 사용자가 인쇄 요청 → 프린트 작업 관리하는 프로세스 생성
- 기존 프로세스에 의한 생성: 부모 프로세스(생성한 프로세스) - 자식 프로세스(생성된 프로세스)
프로세스 종료
프로세스가 수행 완료를 표시할 수 있는 수단 제공
프로세스 종료 이유
- 정상 완료: 프로세스가 수행 완료되었다는 사실을 운영체제에게 알림
- 시간 한도 초과: 전체 시간 한도보다 더 오래 수행
- 메모리 부족: 시스템이 제공할 수 있는 메모리보다 더 많은 용량 요청
- 경계범위 위반: 접근 허용되지 않은 메모리 위치에 접근 시도
- 보호 오류: 파일을 잘못 사용 ex) 사용 금지된 자원이나 파일 사용 시도
- 산술 오류: 금지된 계산 수행, 하드웨어가 수용할 수 있는 것보다 큰 숫자 저장 시도 ex) 0 나누기 연산 실행
- 시간 초과: 어떤 이벤트 발생을 명시된 최대 시간 초과하여 기다림
- 입출력 실패: ex) 원하는 파일 찾을 수 x, 결함있는 부분을 만났을 때 read/write 실패
- 무효 명령어: 존재하지 않는 명령어 수행 시도
- 특권 명령어: 운영체제만 사용하도록 예약된 명령어 사용 시도
- 데이터 오용: 데이터 일부 타입이 잘못되었거나 초기화되지 x
- 오퍼레이터나 운영체제 간섭: 어떤 이유로 인해 오퍼레이터나 운영체제가 프로세스 종료시킴
- 부모 종료: 부모 프로세스가 종료될 때 자식 프로세스 종료
- 부모 요청: 부모 프로세스는 자신이 생성한 임의의 자식 프로세스 종료 권한 지님