《操作系统》课程实验指导.doc

《操作系统》课程实验指导.doc

ID:56721654

大小:88.00 KB

页数:15页

时间:2020-07-06

《操作系统》课程实验指导.doc_第1页
《操作系统》课程实验指导.doc_第2页
《操作系统》课程实验指导.doc_第3页
《操作系统》课程实验指导.doc_第4页
《操作系统》课程实验指导.doc_第5页
资源描述:

《《操作系统》课程实验指导.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、操作系统实验指导书2005年10月编者说明软件技术是《操作系统》最重要的计算机系统软件,同时也是计算机科学与技术专业的一门核心专业基础课,其发展极为迅速。学习计算机软件技术,特别是计算机操作系统技术,除了需要刻苦努力外,还需要掌握软件和操作系统的原理与设计技巧。这些原理与技巧可以说是计算机界的前辈们一代接一代不停歇的努力所留下的知识与智慧的结晶,学习和掌握它们对于激发自己的创造力和想象力是很有帮助的。如何学习和掌握操作系统技术的原理与实际技巧呢?除了听课和读书之外,最好的方法就是在实践中练习,通过自己模拟设计操作系统的原理实验,可以培养程序设计的方法和技巧,提高编制和理解

2、清晰、合理、可读性好的系统程序的能力,加深对操作系统课程的理解。使自身更好的掌握操作系统的基本概念、基本原理及基本功能,从而具有分析实际操作系统的基本能力,深入直观的理解操作系统使用的各类算法。《操作系统实验指导书》是针对这门课的实验编写的,书中设计了四个重要的操作系统原理实验,包括进程调度、分区式存储管理、虚拟存储管理和文件管理。四个实验难易层次分明,重点突出,其中实验一(进程调度)和实验二(分区式存储管理)为设计性实验,重在培养理论原理应用于实践的设计能力,而实验三(虚拟存储管理)和实验四(文件管理)为验证性实验,重在验证教材中的理论原理。所有实验共18学时,均采用C

3、语言作为编程语言模拟设计完成相关程序。本书编写中,参考了西安电子科技大学、清华大学的操作系统相关图书资料。限于编者的水平,难免有疏漏与错误,敬请读者批评指正。2005年10月12日目录实验一进程调度1实验二分区式存储管理4实验三虚拟存储管理8实验四文件管理11实验一进程调度实验目的:通过这次实验,加深对进程概念的理解,进一步掌握进程状态的转变、进程调度的策略及对系统性能的评价方法。基本实验内容:设计程序模拟进程的时间片轮转法调度过程。假设初始状态为:有ready个进程处于就绪状态,有blocked个进程处于阻塞状态。采用轮转法进程调度算法进行调度(调度过程中,假设处于执行

4、状态的进程不会阻塞),且每过counter个时间片,唤醒处于阻塞队列队首的进程。程序要求如下:1)输出系统中进程的调度次序;2)计算CPU利用率。实现提示:用C语言实现提示:1)程序中进程可用PCB表示,其类型描述如下:structPCB_type{charname;//进程名intstate;//进程状态//2——表示“执行”状态//1——表示“就绪”状态//0——表示“阻塞”状态intcpu_time;//运行需要的CPU时间(需运行的时间片个数)}2)设置三个队列,队列类型描述如下:structQueueNode{structPCB_typePCB;StructQu

5、eueNode*next;}并设全程量:structQueueNode*ready_head//ready队列队首指针*ready_tail//ready队列队尾指针*blocked_head//blocked队列队首指针*blocked_tail//blocked队列队尾指针*run_head;3)设计子程序:start_state();//读入假设的数据,设置系统初始状态dispatch();//模拟调度calculate();//计算CPU利用率实验一进程调度实验目的:通过这次实验,加深对进程概念的理解,进一步掌握进程状态的转变、进程调度的策略及对系统性能的评价方法

6、。基本实验内容:设计程序模拟进程的时间片轮转法调度过程。假设初始状态为:有ready个进程处于就绪状态,有blocked个进程处于阻塞状态。采用轮转法进程调度算法进行调度(调度过程中,假设处于执行状态的进程不会阻塞),且每过counter个时间片,唤醒处于阻塞队列队首的进程。程序要求如下:1)输出系统中进程的调度次序;2)计算CPU利用率。实现提示:用C语言实现提示:1)程序中进程可用PCB表示,其类型描述如下:structPCB_type{charname;//进程名intstate;//进程状态//2——表示“执行”状态//1——表示“就绪”状态//0——表示“阻塞”

7、状态intcpu_time;//运行需要的CPU时间(需运行的时间片个数)}2)设置三个队列,队列类型描述如下:structQueueNode{structPCB_typePCB;StructQueueNode*next;}并设全程量:structQueueNode*ready_head//ready队列队首指针*ready_tail//ready队列队尾指针*blocked_head//blocked队列队首指针*blocked_tail//blocked队列队尾指针*run_head;3)设计子程序:start_state

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。