操作系统实验_首次适应算法循环首次适应算法

操作系统实验_首次适应算法循环首次适应算法

ID:47299173

大小:476.69 KB

页数:16页

时间:2019-08-21

操作系统实验_首次适应算法循环首次适应算法_第1页
操作系统实验_首次适应算法循环首次适应算法_第2页
操作系统实验_首次适应算法循环首次适应算法_第3页
操作系统实验_首次适应算法循环首次适应算法_第4页
操作系统实验_首次适应算法循环首次适应算法_第5页
资源描述:

《操作系统实验_首次适应算法循环首次适应算法》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、.学号P71514032专业计算机科学与技术姓名实验日期2017.11.16教师签字成绩实验报告【实验名称】首次适应算法和循环首次适应算法【实验目的】学会主存空间分配与回收的基本方法首次适应算法和循环首次适应算法。【实验原理】理解在连续分区动态的存储管理方式下,如何实现贮存空间的分配与回收。采用可变式分区管理,使用最佳适应算法实现主存空间的分配与回收。采用可变式分区管理,使用最坏适应算法实现主存空间的分配与回收。数据结构:1、boolROM[N];//定义主存信息,如果内存被占用,则标记为1,否则标记为0,设置内存单元为10242、pcbnum

2、[20];//定义作业数组,最大支持20个作业3、typedefstructPcb//定义作业结构体,包括名称,开始时间,大小,是否执行状态{charname[10];intstart;intsize;intstate=0;}pcb;typedefstructFree_rom//空闲区结构体..{intnum;intstart;intend;intspace;}Free_room;Free_romfree_rom[100];//设置空闲区数组为100个主要函数voidinit();//初始化信息,包括初始化内存信息,和初始化作业队列voidin

3、sert_pcb1(pcb&a);插入作业函数,首次适应算法,如果有适合的就插入,无合适输出‘插入失败’voidinsert_pcb1(pcb&a);插入作业函数,循环首次适应算法,如果有适合的就插入,无合适输出‘插入失败’voidDelete(pcb&a)//删除作业信息,包括修改内存状态修改作业状态并对作业进行初始化voidshow();//显示信息voidfind_free_rom()//寻找空闲区算法流程图..首次适应算法..循环首次适应算法..程序代码及截图:#include#include#de

4、fineN1024boolROM[N];//设置内存块intp=0;//循环首次使用需要标记当前的空闲区块typedefstructPcb//作业数据结构{charname[10];intstart;intsize;intstate=0;}pcb;intfree_rom_counter=0;pcbnum[20];//作业队列typedefstructFree_rom//空闲区结构体{intnum;intstart;intend;intspace;}Free_room;Free_romfree_rom[100];//设置空闲区数组为100个voi

5、dfind_free_rom()//寻找空闲区{free_rom_counter=0;inti,j,p;for(i=0;i

6、ounter].end=j-1;free_rom[free_rom_counter].space=j-p;i=j+1;break;}}if(j==N&&ROM[j-1]==0)//对最后一个内存进行特殊操作{free_rom_counter++;free_rom[free_rom_counter].num=free_rom_counter;//对空闲区进行处理free_rom[free_rom_counter].start=p;free_rom[free_rom_counter].end=j-1;free_rom[free_rom_counte

7、r].space=j-p;}}}voidinit()//初始化{for(inti=0;i

8、&a)//首次适应算法来实现作业调度{inti,j,k;for(i=0;i

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

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

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