1

의 다음과 같은 특성을 설명하십시오 그가중단 과정

로 일시 중단 된 프로세스의 특성을 설명하는 "운영 시스템, 내부 및 설계 원칙"윌리엄 스탈 링스로부터 다음과 같은 과정은 또는하지 않을 수 있습니다 이벤트를 기다리고있다. 그럴 경우이 차단 된 조건은 일시 중단 조건과 관련이 없으며 차단 이벤트가 발생해도 즉시 프로세스가 실행되거나 실행되지 않습니다.

이 시점을 이해하지 못했지만 차단 된 상태와 일시 중지 상태는 무엇입니까? 누군가이 점을 설명해 주시겠습니까?

답변

1

프로세스가 이벤트를 기다리고 있거나 기다리지 않고있을 수 있습니다. 이 경우,이 차단 조건은 일시 중단 조건과 관련이 없으며 차단 이벤트가 발생해도 즉시 프로세스가 실행됩니다.

하자 가 일시 중지되었습니다 프로세스는 클라이언트 소켓에서 들어오는 요청 (연결 요청을 수락의 사건으로이 전화를) 받아들이는 프로세스 A는 가정합니다. 따라서 이것은 본질적으로 차단 호출입니다. 그리고이 프로세스가 사용자 (/ system)에 의해 일시 중지되었다고 가정 해 봅시다. 그리고 자연에서도 차단되고 있습니다.

그래서 클라이언트가이 프로세스에 요청을 전달하여 프로세스의 차단 상태를 종료하더라도; 여전히 프로세스는 일시 중단 상태이므로 더 이상 실행되지 않습니다. 따라서 클라이언트가 요청을 전달했지만 서버가 일시 중지되면 응답하지 않더라도 차단 이유는 요청을 전달하는 클라이언트에 의해 무효화되었습니다.

일시 중지가 제거되자 마자 프로세스가 실행을 시작하고 클라이언트 요청을 수락합니다.

따라서 프로세스를 차단하는 이유가 처리를 계속 진행했기 때문에 중단 된 상태에서 프로세스를 철회해야합니다. Process management (computing) on Wikipedia에서도

:

방법은 두 가지 다른 상태를 야기한 RUNNING, READY 또는 차단 상태 에서 정지 될 수있다, 즉, READY 일시 중지하고 일시 중단 막았다.

현탁 READY 일시 중단하게되어 실행중인 프로세스,

막히면 현탁 차단 프로세스가

을 SUSPEND. 프로세스는 여러 가지 이유로 일시 중단 될 수 있습니다. 가장 중요한 것은 이며 다른 프로세스의 메모리를 확보하기 위해 메모리 관리 시스템에 의해 메모리에서 스와핑 된 프로세스로 인해 발생합니다. 프로세스가 일시 중지되는 다른 일반적인 이유는 중 하나가 프로그램을 디버깅하는 동안 실행을 일시 중단하거나 시스템이 프로세스를 모니터링하는 경우입니다.

... 대기중인 이벤트가 발생할 때 일시 중지 된 블록 상태 *의 프로세스가 일시 중지 준비 상태로 이동합니다. 차단 상태 및 일시 중지 상태 BLOCKED SUSPEND

* 주는 동일한 것으로 간주된다.

0

중단 된 프로세스는 해제 된 프로세스입니다. 프로세스가 있지만 실행 일정이 잡히지 않습니다. 예를 들어, CPU 집약적 인 분자 모델링 프로그램을 실행하려는 서버가 있다고 가정하고 실행을 완료하는 데 2 ​​개월이 걸립니다. 하루 동안 모두가 직장에있을 때 당신은 프로그램이 CPU를 먹는 것을 원하지 않습니다. 매일 아침 프로세스를 일시 중단하고 저녁에는 중단하지 않습니다.

프로세스가 차단되면 프로세스가 계속 진행될 때까지 기다리고 있습니다 (예 : I/O 완료).

프로세스가 일시 중단되면 다른 프로세스에서 일시 중단 해제를 기다리고 있습니다. 텍스트 노트에서 프로세스는 차단되거나 일시 중지 될 수 있습니다.