操作系统课程设计——主存空间的分配与回收

操作系统课程设计——主存空间的分配与回收

ID:7783057

大小:326.50 KB

页数:29页

时间:2018-02-25

操作系统课程设计——主存空间的分配与回收_第1页
操作系统课程设计——主存空间的分配与回收_第2页
操作系统课程设计——主存空间的分配与回收_第3页
操作系统课程设计——主存空间的分配与回收_第4页
操作系统课程设计——主存空间的分配与回收_第5页
资源描述:

《操作系统课程设计——主存空间的分配与回收》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、操作系统课程设计题目:主存空间的分配与回收学生姓名:XXX专业:软件工程班级:软件09-1指导教师:XXX教授XXX教授XXX大学课程设计任务书学院(系):课程名称:操作系统课程设计指导教师(签名):专业班级:软件工程09-1学生姓名:XXXX学号:XXXXXXXXXXX一、课程设计题目主存空间的分配与回收二、课程设计的目的通过该课程设计使学生理解在不同的存储管理方式下,如何实现主存空间的分配与回收。使学生初步具有研究、设计、编制和调试操作系统模块的能力。三、课程设计的主要内容和要求(包括原始数据、技术参数、

2、设计要求、工作量要求等)原始数据:空闲区说明表结构体。技术参数:WindowsXP系统,VC++6.0开发工具。设计要求:1.设计基于空闲区说明表的可变分区分配与回收算法;2.或设计基于空闲区链表的可变分区分配与回收算法;3.画出以上算法流程图;4.编程实现算法功能;5.编写课程设计说明书。工作量要求:完成以上设计要求中的所有算法功能。四、工作进度安排周一:布置、讲解题目,收集资料;周二:系统分析,算法设计;周三:编制、调试程序;周四:测试系统,形成设计结论,编写课设报告;周五:系统及材料验收,课设答辩。五、

3、主要参考文献[1]张尧学编.计算机操作系统教程(第三版)习题解答与实验指导.北京:清华大学出版社,2006[2]汤子瀛主编.计算机操作系统(第三版).西安:西安电子科技大学出版社,2001[3]张坤等编.操作系统实验教程.北京:清华大学出版社,2008审核批准意见系(教研室)主任(签字)目录一、总体设计11.1设计思路11.2模块图11.3基本数据结构21.3.1两个基本表21.3.2五张表3二详细设计62.1初始化模块62.2后备状态模块62.3就绪状态模块72.4挂起状态模块92.5显示模块132.6回收

4、模块15三、功能测试19参考文献26一、总体设计1.1设计思路本次课程设计中主要是模拟主存分配与回收,考虑到一个进程的五个状态,初始,就绪,等待,执行,终止五个状态,所以决定从一个进程的运行过程进行模拟,总体流程大致是首先创建一个进程即填写PCB信息,然后将进程送到后备集合,然后从后备集合从取出一个进程进行是分配。如果能分配,就将其送入就绪集合,然后从就绪集合中取出一个进程运行一个时间片(即一秒钟),接着将该进程送入就绪集合,如果运行时间减为零,就不送入就绪集合中。考虑到实际的需要,我添加了一个挂起状态,还添

5、加了一个撤销进程函数,一个强制回收函数。在本次设计中用多线程模拟多进程,所以各个共享表都应该设置为线程安全的。其进程之间的状态转换为:创建进程就绪状态后备状态挂起状态终止状态运行状态1-1-1状态转换图1.2模块图在这个设计中我将系统分为六个模块,1-1-2模块图1.3基本数据结构一、在本次设计中设计到五张表和两个基本数据结构:1.3.1两个基本表(1)一个是空闲块数据结构:空闲块表始地址块大小publicclassFree{protectedintstartAddress;//始地址protectedint

6、size;//块大小}空闲块只涉及始地址和大小,没有设状态位,即如果是空闲的,就在空闲表中(2)一个是进程控制块PCB数据结构:PCB表进程号运行时间优先级始地址所需空间大小publicclassPCB{protectedintPID;//进程号,要小写protectedinttime;//运行时间protectedintpriority;//优先级protectedintstartAddress;//始地址protectedintsize;//所需空间大小publicPCB()}在PCB中有五个基本数据项,

7、在创建进程时只设置PID,time,priority,size和除了进程号是从一开始递增的,time,priority,size都是随机生成的。1.3.2五张表五张表即小块空闲表,大块空闲表,后备表,就绪表,挂起表(1)小块空闲表publicclassFreeSmallTable{StaticConcurrentSkipListSetfreeSmallTable=newConcurrentSkipListSet(newFreeSmallComparator());staticintma

8、x=0;//小块空闲表最大块大小staticintnum=0;//小块空闲表的长度staticfinalintmaxNum=20;//小块空闲表的最大个数,应该将maxNum大写,可以根据用户实际使用情况,设置小块的数量}在小块空闲表中设计四个数据项,一个集合是为了存放Free空闲块对象,该集合是一个线程安全的集合,该集合是按空闲块大小从小到大排列,即采用最好适应算法。max是为记录该空闲表最大的数

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

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

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