我首先了解了计算机是如何在原始的单个存储程序机器方面工作的。
现在我正在学习多任务操作系统、调度、上下文切换等。我想我对这一切都有相当好的把握,除了一件事。我一直认为 CPU 只是不停地向前充电的东西。它总是知道下一步要去哪里(程序计数器),并且它会无限地执行该指令等。
显然情况并非如此,因为我的台式计算机 CPU 并不总是以 100% 运行。那么 CPU 是如何自行关闭或限制自身的,操作系统在其中扮演什么角色呢?我猜 CPU 上有一个输入可以让它断电……如果它没有任何安排,操作系统可以设置它,但下一个合乎逻辑的问题是它如何重新启动?我猜测以下两种情况之一:
- 它永远不会完全关闭,只是以非常低的频率运行,等待调度程序再次忙碌
- 它完全关闭但被中断唤醒
我到处搜索这方面的信息,结果却是空手而归。任何见解将不胜感激。