1 / 27
文档名称:

操作系统实验报告.doc

格式:doc   大小:1,730KB   页数:27页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

操作系统实验报告.doc

上传人:琥珀 2020/9/30 文件大小:1.69 MB

下载得到文件列表

操作系统实验报告.doc

相关文档

文档介绍

文档介绍:.计算机科学与应用系课程设计报告操作系统原理姓名学号指导教师专业 计算机科学与技术S 日期 2014年6月5日成绩题目动态分区分配算法的模拟指导教师评语Word资料目录题目简述 2需求分析 2设计思想 2要求 3任务 3运行环境 3开发工具 3概要设计与详细设计 3系统流程图 3算法流程图 44编码与实现..............................................................................................1..0........................................................................................1..0.............................................................................................1..0...........5课程设计总结..........................................................................................1..7............参考文献.....................................................................................................1..7..............附录.............................................................................................................1..8...............动态分区分配算法的模拟题目简述动态分区分配是根据进程的实际需要,动态地为之分配存空间。在实现可变分区分配时,将涉及到分区分配中所用到的数据结构、分配算法和分区的分配与回收操作。常用的数据结构有空闲分区表和空闲分区链两种,分区分配算法主要有首次适应算法、最佳适应算法、最坏适应算法等。本次试验通过C语言进行编程调试并运行,形象地表现出动态分区分配方式,直观地展示了首次适应算法、最佳适应算法、最坏适应算法对存的释放和回收方式之间的区别。加深了我对三种算法优缺点的理解,帮助我了解一些数据结构和分配算法,进一步加深我对动态分区存储器管理方式及其实现过程的理解。主要问题在于,如何解决三种算法对存的释放和回收空间的表示。动态分区分配又称为可变分区分配,这种分配方式并不是事先将主存划分成一块块的分区,而是在作业进入主存时,根据作业的大小动态地建立分区,并使分区的大小正好适适应作业的需要。因此,分区中的大小是可变的,分区的数目也是可变的。需求分析设计思想(1)首次适应算法(First_fit)空闲分区链以地址递增的次序连接。在分配存时,从联手开始顺序查找,直到找到一个大小能满足要求的空闲分区为止;然后再按照作业大小,从该分区划出一块存空间给请求者,余下的空闲分区仍然留在空闲链中。若从链首直至链尾都找不到一个能满足要求的分区,则此次存分配失败。(2)最佳适应算法(Best_fit)(4)最坏适应算法(Worst_fit)最坏适应分配算法要扫描整个空闲分区或链表,总是挑选一个最大的空闲分区分割给作业使用。该算法要求将所有的空闲分区按其容量从大到小的顺序形成一空闲分区链,查找时只要看第一个分区能否满足作业要求。优点是可使剩下的空闲分区不至于太小,产生碎片的几率最小,对中、小作业有利,同时该算法查找效率很高。(4)存回收(Free)将释放作业所在存块若改为空闲状态,删除其作业名,变为空。然后判断该空闲块是否与其它从全部空闲区中找出能满足作业要求的、且大小最小的空闲分区,这种方法能使碎片尽量小。为适应此算法,空闲分区表(空闲区链)中的空闲分区要按从小到大进行排序,自表头开始查找到第一个满足要求的自由分区分配。该算法保留大的空闲区,但造成许多小的空闲区。他空闲块相连,若释放的存空间与空闲块相连时,则合并其为同一个空闲链表,同时修改开始地址及分区大小。要求(1)用C++语言实现程序设计;(2)利用结构体进行相关信息处理;(3)画出查询模块的流程图;(4)界面友好(良好的人机互交) ,程序要有注释。任务(1)掌握为实现多道程序并发执行,操作系统是如何通过作业调度选择作业进入存;(2)系统如何为进入存的作业分配存空间,实现多道作业同时驻留存,就绪进程队列中的多个进程是如何以分式方式共享 CPU,作业运行完成离开系统时