process – CPU如何空闲(或低于100%运行)?

我首先了解了计算机如何在原始单个存储程序机器方面工作.

现在我正在学习多任务操作系统,调度,上下文切换等等.我认为除了一件事之外,我对这一切都有相当好的把握.我一直认为CPU是一种不间断充电的东西.它总是知道接下来要去哪里(程序计数器),并且无限制地进入该指令等.

显然情况并非如此,因为我的桌面计算机CPU并不总是以100%运行.那么CPU如何自行关闭或自行关闭,以及操作系统在这方面扮演什么角色?我猜测CPU上有一个输入允许它关闭…如果没有什么可以安排的话操作系统可以设置它,但下一个逻辑问题是它如何重新启动?我猜两件事之一:

>它永远不会完全关闭,只是以非常低的频率运行,等待调度程序再次忙碌
>它完全关闭但被中断唤醒

我搜索了所有关于这方面的信息并且相当空手而归.任何见解都会非常感激.

答案是,这取决于硬件,操作系统以及操作系统的配置方式.

它可能涉及您提出的其中一种或两种策略.

基于x86架构的机器的另一种可能性是x86有一个HLT instruction,导致核心停止,直到它收到外部中断.因此,“空闲”任务可以简单地在紧密循环中执行HLT.

相关文章
相关标签/搜索