时钟(Clocks)
也被称为定时器(timers)
,时钟/定时器对任何程序系统来说都是必不可少的。时钟负责维护时间、防止一个进程长期占用 CPU 时间等其他功能。时钟软件(clock software)
也是一种设备驱动的方式。下面我们就来对时钟进行介绍,一般都是先讨论硬件再介绍软件,采用由下到上的方式,也是告诉你,底层是最重要的。
时钟硬件
在计算机中有两种类型的时钟,这些时钟与现实生活中使用的时钟完全不一样。
-
比较简单的一种时钟被连接到 110 V 或 220 V 的电源线上,这样每个
电压周期
会产生一个中断,大概是 50 - 60 HZ。这些时钟过去一直占据支配地位。 -
另外的一种时钟由晶体振荡器、计数器和寄存器组成,示意图如下所示
- 这种时钟称为
可编程时钟
,可编程时钟有两种模式,一种是一键式(one-shot mode)
,当时钟启动时,会把存储器中的值复制到计数器中,然后,每次晶体的振荡器的脉冲都会使计数器 -1。当计数器变为 0 时,会产生一个中断,并停止工作,直到软件再一次显示启动。还有一种模式是方波(square-wave mode)
模式,在这种模式下,当计数器变为 0 并产生中断后,存储寄存器的值会自动复制到计数器中,这种周期性的中断称为一个时钟周期。