操作系统试验指导书.docxVIP

  • 0
  • 0
  • 约9.53千字
  • 约 28页
  • 2020-02-19 发布于江西
  • 举报
操作系统实验指导书 李玲娟 李刚 编写 李玲娟 审核 南京中医药大学  信息技术学院 2005 年 10 月 编 者 说 明 软件技术是《操作系统》最重要的计算机系统软件,同时也是计算机科学与技术专业的一 门核心专业基础课,其发展极为迅速。学习计算机软件技术,特别是计算机操作系统技术,除 了需要刻苦努力外,还需要掌握软件和操作系统的原理与设计技巧。这些原理与技巧可以说是 计算机界的前辈们一代接一代不停歇的努力所留下的知识与智慧的结晶,学习和掌握它们对于 激发自己的创造力和想象力是很有帮助的。 如何学习和掌握操作系统技术的原理与实际技巧呢?除了听课和读书之外,最好的方法就 是在实践中练习,通过自己模拟设计操作系统的原理实验,可以培养程序设计的方法和技巧, 提高编制和理解清晰、合理、可读性好的系统程序的能力,加深对操作系统课程的理解。使自 身更好的掌握操作系统的基本概念、基本原理及基本功能,从而具有分析实际操作系统的基本 能力,深入直观的理解操作系统使用的各类算法。 《操作系统实验指导书》是针对这门课的实验编写的,书中设计了四个重要的操作系统原 理实验,包括进程调度、分区式存储管理、虚拟存储管理和文件管理。四个实验难易层次分明, 重点突出,其中实验一(进程调度)和实验二(分区式存储管理)为设计性实验,重在培养理论原 理应用于实践的设计能力,而实验三(虚拟存储管理)和实验四(文件管理)为验证性实验,重在 验证教材中的理论原理。所有实验共 18 学时,均采用 C 语言作为编程语言模拟设计完成相关 程序。 本书编写中,参考了西安电子科技大学、清华大学的操作系统相关图书资料。 本书由信息技术学院副院长李玲娟和应用教研室李刚两位教师编写,由李玲娟副教授审核。 南京中医药大学教务处给予了指导和大力帮助,在此表示衷心的感谢! 限于编者的水平,难免有疏漏与错误,敬请读者批评指正。 李玲娟  李刚 2005 年 10 月 12 日 目  录 实验一 进程调度 1 实验二 分区式存储管理 4 实验三 虚拟存储管理 8 实验四 文件管理 11 南京中医药大学信息技术学院 操作系统实验 实验一  进程调度 实验性质:设计 建议学时:6 学时 实验目的: 通过这次实验,加深对进程概念的理解,进一步掌握进程状态的转变、进程调度的策略及 对系统性能的评价方法。 预习内容: 阅读教材《计算机操作系统》第二章和第三章,掌握进程管理及调度相关概念和原理。 基本实验内容: 设计程序模拟进程的轮转法调度过程。假设初始状态为:有 n 个进程处于就绪状态,有 m 个进程处于阻塞状态。采用轮转法进程调度算法进行调度(调度过程中,假设处于执行状态 的进程不会阻塞),且每过 t 个时间片系统释放资源,唤醒处于阻塞队列队首的进程。 程序要求如下: 输出系统中进程的调度次序; 计算 CPU 利用率。 实现提示: 用 C 语言实现提示: 1)程序中进程可用 PCB 表示,其类型描述如下: struct PCB_type { char name ; //进程名 int state ; //进程状态 2——表示“执行”状态 1——表示“就绪”状态 0——表示“阻塞”状态 int cpu_time ; //运行需要的 CPU 时间(需运行的时间片个数) } 2)设置两个队列,将处于“就绪”状态的进程 PCB 挂在队列 ready 中;将处于“阻塞” 状态的进程 PCB 挂在队列 blocked 中。 队列类型描述如下: struct QueueNode{ struct PCB_type PCB; Struct QueueNode *next; } 并设全程量: struct QueueNode *ready_head=NULL, //ready 队列队首指针 *ready_tail=NULL , //ready 队列队尾指针 1 南京中医药大学信息技术学院 3)设计子程序: 操作系统实验 *blocked_head=NULL, //blocked 队列队首指针 *blocked_tail=NULL; //blocked 队列队尾指针 start_state(); //读入假设的数据,设置系统初始状态 dispath(); //模拟调度 calculate(); //计算 CPU 利用率 实验要求: 上机前认真使用 C 语言编写好程序,采用 Turbo C 作为编译环境; 上机时独立调试程序 根据具体实验要求,填写好实验报告(包括思想、源程序、实例运行结果)。 测试用数据: n=2 m=3 t=5 ready_head blocked_head 2 unuse_cpu++x++blocked 队首进程入 unuse_cpu++ x++ blocked 队首进程入 ready 队列

文档评论(0)

1亿VIP精品文档

相关文档