硬实时和软实时

硬实时, 顾名思义是由硬件、即计算机主机板上的硬件 - 集成电路,如CPU, BIOS等来进行实时控制。也就是说将CPU的运算周期(CPU cycle)按照事先设定的标准,如平均分配(所谓的Time slice)、或按某些硬件优先权分配,等等,来防止某个硬件夺去整个系统的反应时间, 让各个外接部件, 特别是输入输出设备等, 能够得到系统的及时反馈,也就是说,某个外接部件在多长的时间里能够得到系统的反馈,得到CPU完成计算的时间,是可以得到保证的, 这也就是所谓的deterministic real time。 其实,真正的实时系统不仅需要硬件的支持,还需要专门的实时操作系统, 所以一般这种都是专门的设备,如工业自动化控制,军用电子设备等。它们的操作系统都是专门做的。

软实时指的是在对非实时的操作系统,比如桌面计算机操作系统, 如Windows, 进行某些改动,来达到近乎实时的效果, 但是严格来说还不是真正的实时, 只是接近实时而已。它的做法是用一个专门的软件部件,代替桌面计算机操作系统中的进行控制的功能,如 process control 和 kernel,以达到一个接近于能够准时得到系统反馈和完成计算的反应速度。 我所知道的,有几个小公司成功地开发了加在Windows XP Embedded (XPE)上的软实时附加件,使得开发商能够使用XPE来达到近乎软实的效果。 在欧美市场上, 就已经有开发商用这个方法来开发制造"软实"的赌博游戏机、医疗器械、自动化控制设备, 等等。

你可能感兴趣的:(硬件知识)