进程的组合轨迹 5000100 100 100 100 5001 101 101 101 101 5002102 102 102 102 5003103 103 103 103 5004104 104 104 104 5005105 105 105 105 超时 8000 12000 5006 12006 8001 12001 5007 12007 8002 12002 5008 12008 8003 12003 5009 12009 JO请求 12004 50010 120010 2005 50011 120011 超时 超时 超时
进程的组合轨迹 5000 5001 5002 5003 5004 5005 100 101 102 103 104 105 8000 8001 8002 8003 100 101 102 103 104 105 12000 12001 12002 12003 12004 12005 100 101 102 103 104 105 5006 5007 5008 5009 50010 50011 100 101 102 103 104 105 12006 12007 12008 12009 120010 120011 超时 I/O请求 超时 超时 超时
两状态进程模型-状态变化图 分派 未运行 进入 运行退出 f停 OS的设计元素 进程的状态,位置 未运行的进程队列
两状态进程模型-状态变化图 未运行 运行 进入 退出 分派 暂停 • OS的设计元素 –进程的状态,位置 –未运行的进程队列
排队图 进入 队列 分派 退出 312 CPU 暂停 链表形式的队列 T 3 3
排队图 3 1 2 CPU 进入 分派 退出 暂停 队列 1 2 3 1 2 3 链表形式的队列
导致进程创建的原因 新的批作业 °交互用户登录 OS提供服务 由现有进程生成 进程生产 process spawnIng OS根据某进程的显式请求创建新进程
导致进程创建的原因 • 新的批作业 • 交互用户登录 • OS提供服务 • 由现有进程生成 进程生产process spawning- OS根据某进程的显式请求创建新进程
导致进程终止的原因 正常结束 父进程请求 °错误和故障 °父进程终止 °无内存 父进程要求 越界 正常结束 保护错误 °超时 °算术错误 系统干涉 °MO失败 °无效指令 °特权指令 °数据误用
导致进程终止的原因 • 无内存 • 越界 • 保护错误 • 算术错误 • I/O失败 • 无效指令 • 特权指令 • 数据误用 • 父进程请求 • 父进程终止 • 正常结束 • 错误和故障 • 父进程要求 • 正常结束 • 超时 • 系统干涉