第五章:进程# 引言 本章导读 实践体验 本章代码树 本章代码导读 进程概念及重要系统调用 本节导读 进程概念 进程模型与重要系统调用 fork 系统调用 waitpid 系统调用 exec 系统调用 应用程序示例 系统调用封装 用户初始程序 initproc shell程序 user_shell 进程管理的核心数据结构 本节导读 应用的链接与加载支持 基于应用名的应用链接 基于应用名的应用加载器 进程标识符和内核栈 进程标识符 内核栈 进程控制块 任务管理器 处理器管理结构 正在执行的任务 任务调度的 idle 控制流 进程管理机制的设计实现 本节导读 初始进程的创建 进程调度机制 进程的生成机制 fork 系统调用的实现 exec 系统调用的实现 系统调用后重新获取 Trap 上下文 shell程序 user_shell 的输入机制 进程资源回收机制 进程的退出 父进程回收子进程资源 进程调度 本节导读 回顾历史 本章之前的操作系统实例 计算机发展历史中的调度 批处理系统的调度 约束条件 性能指标 先来先服务 最短作业优先 交互式系统的调度 约束条件 性能指标 最短完成时间优先(STCF) 基于时间片的轮转 通用计算机系统的调度 约束条件 性能指标 多级反馈队列调度 固定优先级的多级无反馈队列 可降低优先级的多级反馈队列 可提升/降低优先级的多级反馈队列 公平份额调度 实时计算机系统的调度 约束条件 性能指标 速率单调调度 EDF调度 实时调度实例 多处理器计算机系统的调度 约束条件 性能指标 单队列调度 多队列调度 小结 练习 课后练习 编程题 问答题 实验练习1 实践作业 进程创建 实验要求 问答作业 实验练习的提交报告要求 实验练习2 实践作业 stride 调度算法 实验要求 实验约定 问答作业 实验练习的提交报告要求 参考信息 练习参考答案 课后练习 编程题 问答题