操作系统 双状态进程模型
操作系统进程从形成到完成经过许多状态。一个进程由程序数据、关联数据和 PCB 组成。进程可以根据以下事件改变状态,如 I/O 请求、进程同步、中断例程、进程调度算法等。进程可以运行或无法运行,如果进程正在运行,则必须得到系统的支持以确保进程的正常进行。
双状态进程模型
这是过程状态模型中最简单的过程模型,因为它只有两个状态。这些状态如下:
1. 运行状态
这是进程正在运行的当前状态。
2. 非运行状态
这是等待运行的进程状态。
两状态过程模型的执行
该进程状态可以随时创建,无论进程是否运行。
- 首先,当操作系统启动一个新进程时,它也会为其构建一个进程控制块(PCB),以使其以非运行状态进入系统。当进程退出或离开系统时,操作系统会知道这一点。
- 当前正在运行的进程将不时被中断或打断,操作系统将执行其他任何进程。
- 现在,原来的进程从运行状态转换为非运行状态,同时另一个进程在退出系统之前转换为运行状态。
当前未运行的进程必须排队等待执行的机会。只有一个队列,而入口是指向PCB的指针。它具有存储信息的块,如上下文数据、状态、程序计数器、标识符等数据结构。
你必须意识到,队列可能包含表示单个进程的链表块。如果一个进程被中断,它将被移至等待进程的队列中,如果进程完成了它的执行,它将被终止。然后,调度程序从队列中选择另一个进程并运行它。调度程序的行为如上所示的排队图中。