接上表 事件 说明 时间超出 进程等待某一事件发生的时间超过了规定的最 大值 IO失败 在输入或输出期间发生错误,如找不到文件、在超过规定 的最多努力次数后仍然读/写失败(例如当遇到了磁带上 的一个坏区时)或者无效操作(如从行式打印机中读) 无效指令 进程试图执行一个不存在的指令(通常是由于转移 到了数据区并企图执行数据) 特权指令 进程试图使用为操作系统保留的指令 数据误用 错误类型或未初始化的一块数据 操作员或操作系由于某些原因,操作员或操作系统终止进程 统干涉 (例如,如果存在死锁) 父进程终止 当父进程终止时,操作系统可能会自动终止该 进程的所有后代进程 父进程请求父进程通常具有终止其任何后代进程的权力
接上表 事件 说明 时间超出 进程等待某一事件发生的时间超过了规定的最 大值 I/O失败 在输入或输出期间发生错误,如找不到文件、在超过规定 的最多努力次数后仍然读/写失败(例如当遇到了磁带上 的一个坏区时)或者无效操作(如从行式打印机中读) 无效指令 进程试图执行一个不存在的指令(通常是由于转移 到了数据区并企图执行数据) 特权指令 进程试图使用为操作系统保留的指令 数据误用 错误类型或未初始化的一块数据 操作员或操作系 统干涉 由于某些原因,操作员或操作系统终止进程 (例如,如果存在死锁) 父进程终止 当父进程终止时,操作系统可能会自动终止该 进程的所有后代进程 父进程请求 父进程通常具有终止其任何后代进程的权力
A Five-State Model Running:占用处理机(单处理机环境中, 某一时刻仅一个进程占用处理机) Ready:准备执行 Blocked:等待某事件发生才能执行,如 等待JO完成等 °New:进程已经创建,但未被OS接纳为 可执行进程,并且程序还在辅存,PCB 在内存 Exit:因停止或取消,被OS从执行状态 释放
A Five-State Model • Running:占用处理机(单处理机环境中, 某一时刻仅一个进程占用处理机) • Ready:准备执行 • Blocked:等待某事件发生才能执行,如 等待I/O完成等 • New:进程已经创建,但未被OS接纳为 可执行进程,并且程序还在辅存,PCB 在内存 • Exit:因停止或取消,被OS从执行状态 释放
导致进程状态转换的事件 DIspatch Admit Release Ready Running ExIt TImeout Event Occurs Event Walt Blocked Figure 3.5 Five-State Process Model
导致进程状态转换的事件
Nul→New:新创建进程首先处于新状态 事件 说明 新的批作业通常位于磁带或磁盘中的批作业控制流被提供给 操作系统。当操作系统准备接纳新工作时。它将 读取下一个作业控制命令 交互登录 终端用户登录到系统 操作系统因为操作系统可以创建一个进程,代表用户程序执行 提供一项服务一个功能,使用户无需等待(如控制打印的进程) 而创建 由现有的进程基于模块化的考虑,或者为了开发并行性,用户 生成 程序可以规定许多进程的创建
Null →New:新创建进程首先处于新状态 事 件 说 明 新的批作业 通常位于磁带或磁盘中的批作业控制流被提供给 操作系统。当操作系统准备接纳新工作时。它将 读取下一个作业控制命令 交互登录 终端用户登录到系统 操作系统因为 提供一项服务 而创建 操作系统可以创建一个进程,代表用户程序执行 一个功能,使用户无需等待(如控制打印的进程) 由现有的进程 生成 基于模块化的考虑,或者为了开发并行性,用户 程序可以规定许多进程的创建
New→ Ready:OS接纳新状态进程为就绪进程 Ready→ Running:OS只能从就绪进程中选一 个进程执行 Running→Exit:执行状态的进程执行完毕, 或被取消,则转换为退出状态 ° Running→ Ready:分时系统中,时间片用完, 或优先级高的进程到来,将终止优先级低的进 程的执行 Running→ Blocked:执行进程需要等待某事 件发生。通常因进程需要的系统调用不能立即 完成,而阻塞
• New→Ready:OS接纳新状态进程为就绪进程 • Ready →Running:OS只能从就绪进程中选一 个进程执行 • Running →Exit:执行状态的进程执行完毕, 或被取消,则转换为退出状态 • Running→Ready:分时系统中,时间片用完, 或优先级高的进程到来,将终止优先级低的进 程的执行 • Running →Blocked:执行进程需要等待某事 件发生。通常因进程需要的系统调用不能立即 完成,而阻塞