"多进程操作系统中的进程调度与切换"
第五章的主题是进程调度与切换在多进程的操作系统中的重要性。进程调度对系统的设计、实现、功能设置和性能方面都有着决定性的影响。进程切换的速度也是衡量一个操作系统性能的重要指标。 进程调度算法的设计对系统的复杂性有着极大的影响,常常需要在功能与性能方面进行权衡和让步。进程调度与时间密切相关。本章首先讨论与时间相关的主题,然后讨论进程的调度,最后介绍了Linux中进程是如何进行切换的。 5.1节介绍了Linux时间系统。在计算机系统中,时间系统是非常重要的组成部分,特别是对于UNIX类分时系统来说。时间系统的主要任务是维护系统时间并防止某个进程独占CPU和其他资源,即驱动进程的调度。这里要讨论的是操作系统建立的时间系统,而不是纯硬件的时钟周期。 时钟是时间系统的简称,它是整个操作系统活动的动力。时钟的来源是本节的重点。时钟的精确性对于计算机的数值运算和数据处理非常关键。时钟周期是最基本的时间单元,例如取指令、执行指令、存取内存等。然而,在这里我们将讨论操作系统建立的时间系统,它是计算机系统中非常重要的组成部分。 时钟的来源有多种方式,其中一种是硬件时钟,它通常由计算机的基础硬件设备提供。硬件时钟的精确性取决于硬件设备的性能和质量。 另一种来源是软件时钟。软件时钟使用系统软件来模拟计算机的时间系统。在UNIX类操作系统中,软件时钟是通过系统调用来实现的。系统调用会触发硬件时钟的中断,使得操作系统能够维护系统时间并执行相应的操作。 还有一种时钟来源是网络时钟。网络时钟使用网络协议来同步多台计算机的时钟。通过网络时钟,不同计算机上的进程可以协调运行,并保持一致的时间。 时钟一般分为两种类型:实时时钟和虚拟时钟。实时时钟用于存储和维护当前的系统时间。虚拟时钟是操作系统利用实时时钟来进行时间片轮转调度的计时器。 本节还介绍了时钟的精确性和稳定性的衡量标准。精确性是指时钟的准确性,稳定性是指时钟的一致性和可靠性。为了提高时钟的精确性和稳定性,操作系统通常会采取一些措施,例如使用原子操作来防止时钟中断产生的竞态条件,采用时间戳计数器来记录系统时间等。 总之,进程调度与切换在多进程的操作系统中是一个全局性、关键性的问题,对系统的设计、实现、功能设置和性能方面都有着决定性的影响。正确设计和实现进程调度算法是提高操作系统性能的关键。时间系统是操作系统中非常重要的组成部分,它以时钟为主要组成部分。时钟的来源可以是硬件时钟、软件时钟和网络时钟。时钟的精确性和稳定性对于计算机的运行和协调非常重要。通过合理的设计和实现时钟机制,可以提高系统的性能和稳定性。
剩余23页未读,继续阅读