进程创建是由创建原语实现的。当需要进程时,就可以建立一个新进程。被创建的进程称 为子进程,建立进程的进程称为父进程。 创建原语的主要功能是为被创建进程形成一个PCB,并填入相应的初始值。其主要操作过 程是先向系统申请一个空闲PCB结构,再根据父进程所提供的参数将子进程的PB初始化,并 将此PCB插入就绪队列,最后返回一个进程的标识号。 2.进程撤消 进程撤消是由撤消原语实现的。一个进程在完成其任务后,应予以撤消,以便及时释放它 所占用的各类资源。撤消原语可采用两种撤消策略:一种策略是只撤消一个具有指定标识符的 进程,另一种策略是撤消指定进程及其子孙进程 撤消原语的主要功能是收回被撤消进程占用的所有资源,并撤消它的PCB。其主要操作过 程是先从PCB集合中找到被撤消进程的PCB,若被撤消进程正处于运行状态,则应立即停止该 进程的执行,设置重新调度标志,以便进程撤消后将处理机分给其他进程。对后一种撤消策略, 若被撤消进程有子孙进程,还应将该进程的子孙进程予以撤消。对于被撤消进程所占有的资源, 或者归还给父进程,或者归还给系统。最后撤消它的PCB。 3.进程阻塞与唤醒 阻塞原语的作用是将进程由执行状态转为阻塞状态,而唤醒原语的作用则是将进程由阻 塞状态变为就绪状态。 当一个进程期待的某一事件尚未出现时,该进程调用阻塞原语将自己阻塞起来。阻塞原语 在阻塞一个进程时,由于该进程正处于执行状态,故应先中断处理机和保存该进程的CPU现场 然后将该进程插入到等待该事件的等待队列中。再从就绪队列中选择一个新的进程投入运行。 对处于阻塞状态的进程,当该进程期待的事件出现时,由发现者进程调用唤醒原语将阻塞 的进程唤醒,使其进入就绪状态。 应当注意,一个进程由执行状态转变为阻塞状态,是这个进程自己调用阻塞原语去完成的 而进程由阻塞状态到就绪状态,是另一个发现者进程调用唤醒原语实现的,一般这个发现者进 程与被唤醒进程是合作的并发进程。 3.1.3进程同步 多道程序系统中进程是并发执行的,这些进程之间存在着不同的相互制约关系,为了协调 进程之间的相互制约关系,就需要实现进程的同步。互斥是同步的一种特殊情况。 1.进程同步的基本概念 (1)临界资源和临界区:系统中的多个进程可以共享系统中的各种资源,然而其中许多资 源一次只能为一个进程所使用。我们把一次仅允许一个进程使用的资源称为临界资源。许多 物理设备都属于临界资源,如打印机、绘图机等。除物理设备外,还有许多变量、数据等都可 由若干进程所共享,它们也属于临界资源。在每个进程中,访问临界资源的那段程序称为临界 (2)同步:一个进程到达了某些点后,除非另一进程己完成了某些操作,否则就不得不停下 来等待这些操作的结束,这就是进程间的同步 (3)互斥:两个或两个以上进程,由于不能同时使用同一临界资源,只能一个进程使用完了 另一个进程才能使用,这种现象称为进程互斥 为禁止两个进程同时进入临界区,可采用软件解决方法或一个同步机构来协调它们。但是, 不论是软件算法或同步机构都应遵循下述准则:①空闲让进;②忙则等待:③有限等待;④ 让权等待。 2.信号量和P、V操作 个信号量的建立必须经过说明,即应该准确说明s的意义和初值。每个信号量都有相应 的一个队列,在建立信号量时,队列为空。P、Ⅴ操作为两条原语,信号量的值仅能由P、V操作进程创建是由创建原语实现的。当需要进程时,就可以建立一个新进程。被创建的进程称 为子进程,建立进程的进程称为父进程。 创建原语的主要功能是为被创建进程形成一个 PCB,并填入相应的初始值。其主要操作过 程是先向系统申请一个空闲 PCB 结构,再根据父进程所提供的参数将子进程的 PCB 初始化,并 将此 PCB 插入就绪队列,最后返回一个进程的标识号。 2. 进程撤消 进程撤消是由撤消原语实现的。一个进程在完成其任务后,应予以撤消,以便及时释放它 所占用的各类资源。撤消原语可采用两种撤消策略:一种策略是只撤消一个具有指定标识符的 进程,另一种策略是撤消指定进程及其子孙进程。 撤消原语的主要功能是收回被撤消进程占用的所有资源,并撤消它的 PCB。其主要操作过 程是先从 PCB 集合中找到被撤消进程的 PCB,若被撤消进程正处于运行状态,则应立即停止该 进程的执行,设置重新调度标志,以便进程撤消后将处理机分给其他进程。对后一种撤消策略, 若被撤消进程有子孙进程,还应将该进程的子孙进程予以撤消。对于被撤消进程所占有的资源, 或者归还给父进程,或者归还给系统。最后撤消它的 PCB。 3.进程阻塞与唤醒 阻塞原语的作用是将进程由执行状态转为阻塞状态,而唤醒原语的作用则是将进程由阻 塞状态变为就绪状态。 当一个进程期待的某一事件尚未出现时,该进程调用阻塞原语将自己阻塞起来。阻塞原语 在阻塞一个进程时,由于该进程正处于执行状态,故应先中断处理机和保存该进程的 CPU 现场, 然后将该进程插入到等待该事件的等待队列中。再从就绪队列中选择一个新的进程投入运行。 对处于阻塞状态的进程,当该进程期待的事件出现时,由发现者进程调用唤醒原语将阻塞 的进程唤醒,使其进入就绪状态。 应当注意,一个进程由执行状态转变为阻塞状态,是这个进程自己调用阻塞原语去完成的, 而进程由阻塞状态到就绪状态,是另一个发现者进程调用唤醒原语实现的,一般这个发现者进 程与被唤醒进程是合作的并发进程。 3.1.3 进程同步 多道程序系统中进程是并发执行的,这些进程之间存在着不同的相互制约关系,为了协调 进程之间的相互制约关系,就需要实现进程的同步。互斥是同步的一种特殊情况。 1.进程同步的基本概念 (1)临界资源和临界区:系统中的多个进程可以共享系统中的各种资源,然而其中许多资 源一次只能为一个进程所使用。我们把一次仅允许一个进程使用的资源称为临界资源。许多 物理设备都属于临界资源,如打印机、绘图机等。除物理设备外,还有许多变量、数据等都可 由若干进程所共享,它们也属于临界资源。在每个进程中,访问临界资源的那段程序称为临界 区。 (2)同步:一个进程到达了某些点后,除非另一进程已完成了某些操作,否则就不得不停下 来等待这些操作的结束,这就是进程间的同步。 (3)互斥:两个或两个以上进程,由于不能同时使用同一临界资源,只能一个进程使用完了, 另一个进程才能使用,这种现象称为进程互斥。 为禁止两个进程同时进入临界区,可采用软件解决方法或一个同步机构来协调它们。但是, 不论是软件算法或同步机构都应遵循下述准则: ①空闲让进;②忙则等待;③有限等待;④ 让权等待。 2.信号量和 P、V 操作 一个信号量的建立必须经过说明,即应该准确说明 s 的意义和初值。每个信号量都有相应 的一个队列,在建立信号量时,队列为空。P、V 操作为两条原语,信号量的值仅能由 P、V 操作