커널이 어떻게 프로세스에 CPU 시간을 할당하는지 알고 있지만 실제로 어떻게 제어권을 넘겨주고 다시 가져오는지, 프로세스가 충돌하고 제어권을 다시 가져오면 어떻게 됩니까?
답변1
일반적으로 처음부터 모든 프로세스를 제어할 수 있는 프로세스는 없습니다. 이것이 운영 체제의 핵심입니다. 이는 또한 모든 것을 실행할 때 운영 체제가 본질적으로 "느린" 이유이기도 합니다.
소프트웨어 사이트에 대한 자세한 내용은 커널의 프로세스 우선 순위 지정을 참조하세요.
하드웨어 측 프로세서 아키텍처 및 마이크로코드용.
최신 PC 하드웨어는 매우 복잡하며 기본적으로 모든 구성 요소가 완전하고 약간 덜 복잡한 컴퓨터를 구성합니다. 주목할만한 예외는 이제 컴퓨터의 RAM도 CPU 패키지에 포함된다는 것입니다. 예전에는 마더보드에 있었습니다. "노스 브리지"를 참조하세요.
지나치게 단순화:
CPU에 지시가 전달됩니다.언제나정의된 기간 내에 운영 체제로 제어권을 반환합니다.프로세스는 이에 대해 아무 말도 하지 않습니다. 이는 CPU의 사전 정의된 동작입니다.
어셈블러에는 Java 또는 C#의 예외 처리와 유사한 시스템도 있습니다.
비슷한 질문에 답변이 많이 중복됩니다.
Linux는 단일 코어 시스템에서 CPU 제어를 어떻게 유지합니까?