프로세스 관리

2023. 11. 11. 14:26스터디/OS 스터디

728x90

프로세스는 실행 중에 새로운 프로세스를 생성할 수 있다. 이때, 프로세스 생성 순서를 저장하고 부모-자식 관계를 유지하여 계층적으로 생성한다.

자식 프로세스는 OS에서 직접 자원을 얻거나, 부모 프로세스의 자원을 일부 사용할 수 있다.

또한, 부모 프로세스는 자식 프로세스의 자원을 제한할 수 있다.

 

OS에서 프로세서의 생성 로직은 다음과 같다.

맨 처음. 새로운 프로세스에 프로세스 식별자를 할당한다.

그 다음, 주소 공간 및 PCB 공간을 할당한다.

이후, PCB를 조기화 한 후 링크를 건 다음, 준비 큐에 삽입한다.

 

 

프로세스의 중단 & 재시작

 

프로세스의 준비/실행/대기 상태만 사용하면 시스템이 대부분 유휴 상태일 것이다.

입출력 동작이 일반 연산 보다 느리기 떄문이다.

이러한 문제는 프로세스 중단(일시정지) 상태를 이용하여 해결할 수 있다.

중단 상태로 전환하면서 시스템 전체의 부하를 증가시키지 않으면서 프로세스에 서비스를 제공할 수 있다.

이를 통해 해당 이벤트가 발생 시 즉시 실행 상태로 바꿀 수 있는 이점도 있다.

대기와 중단에 대해 좀 더 자세히 말하면,

자원을 할당받으려고 기다리는 상태가 대기,

할당받은 자원을 기다리는 상태가 중단이다.

 

프로세스의 우선순위

프로세서 스케줄러는 PCB에 있는 우선순위를 사용해서 준비 리스트의 프로세스를 처리한다.

준비 리스트의 프로세스는 프로세서 중심 프로세스와 입출력 중심 프로세스로 구분 가능하다.

입출력 중심 프로세스는 속도가 느리면서 빠른 응답을 요구하는 단말에 높은 우선순위를 부여한다.

즉, 입출력 중심 프로세스는 프로세서를 짧게 자주 사용하고, 프로세서 중심 프로세스는 프로세서를 길게 사용하되, 사용 횟수룰 줄여서 균형을 유지한다.

 

프로세서의 문맥 교환

 

 현재 실행하는 프로세스와 별도 외부에서 이벤트가 일어나면 인터럽트가 발생한다. 

인터럽트 유형은 입출력 인터럽트와 클록 인터럽트가 있다.

참조 : 한빛아카데미 - 그림으로 배우는 구조와 원리 운영체제 - 구현회 저

728x90

'스터디 > OS 스터디' 카테고리의 다른 글

병행 프로세스와 상호배제  (0) 2023.11.11
스레드  (0) 2023.11.11
프로세스 상태 변화와 상태 정보  (0) 2023.11.11
프로세스의 개념과 상태 변화  (0) 2023.11.11
운영체제의 소개  (0) 2023.11.01