欢迎来到天天文库
浏览记录
ID:30488387
大小:18.91 KB
页数:11页
时间:2018-12-30
《首次适应算法实验报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划首次适应算法实验报告 操作系统实验报告 实验题目: 学生学号: 学生姓名: 专业年级: 开课学期: 指导教师: 1、实验名: 首次适应算法 2、实验目的 采用可变式分区管理,使用首次适应算法实现内存分配与回收。 FF算法要求空闲分区链以地址递增的次序连接。在分配内存时,从链首开始顺序查找,直至找到一个大小能满足要求的空闲分区为止;然后再按照作业的大小,从该分区中划出一块内存空间给请
2、求者,余下的空闲分区仍留在空闲链中。若从链首直至链尾都不能找到一个满足要求的分区,则此次内存分配失败,返回。该算法倾向于优先利用内存中的低址部分的空闲分区,从而保留了高址部分的大空闲区。这给为以后到达的大作业分配大的内存空间创造了条件。目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 3、设计思想 数据结构为: 进程数量:
3、number 内存块大小:neicun 已使用分区数目:fqNum 开始位置:start 结束位置:end 进程名称:name 进程大小:capactity 分区使用标记flag 设计思路: 程序首先定义了进程数目number=100,以及对内存块大小和分区数目进行 了初始化。 从main函数开始,并分别定义了功能菜单menu函数,内存初始化 init-neicun函数,内存分配fenpei函数,首次适应算法first-fit 函数,内存回收memory-recovery函数,进程显示sh
4、owit函数,以及退出(转载于:写论文网:首次适应算法实验报告)系统exit函数,这些算法函数对内存的查看、分配和回收等进行了计算。目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 4、主要功能模块 main函数 menu函数 init-neicun函数 fenpei函数 first-fit函数 memory-re
5、covery函数 showit函数 exit函数 5、模块的输入输出 main函数:整型输入,调用两个函数,返回0; menu函数:功能菜单,输入对功能菜单的选择select,它们分别是1 添加进程,2回收内存,3查看内存分配,4退出。并通过switch方法实现对各函数的调用。 init-neicun函数:输入内存大小,并对第i个进程的名称name、开始位置start、 结束位置end、大小capactity以及标记位flag等进行了初始化。 fenpei函数:为内存分配内存,输入所需添加进程的名
6、称和大小,并调用first-fit 算法。目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 first-fit函数:当某一分区不在使用时,如果内存空间大于进程长度,则分配 内存,并输出该内存的名称name和大小size,并通过检验标记位flag是否等于1来输出是否能为该进程成功分配内存。 memory-recovery函
7、数:回收之前分配给进程的内存,输入需回收内存的进 程名称,标记位flag表示回收是否成功,0代表失败,1代表成功,根据flag的值输出内存是否回收成功。此外,将连续的已回收的内存区合并。 showit函数:显示进程情况,即输出各个进程的名称,开始位置,结束位置, 进程大小。并根据flag的值来判断一进程是已使用、未使用还是尾部。 exit函数:整型输入,返回0;通过exit方法来退出程序。 6、程序流程图 7、实验截图 8、源代码 #include #include #include目的-通过该
8、培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划 #definenumber100//进程数量 intneicun=200;//内存块默认大小 intfqNum=1;//已使用
此文档下载收益归作者所有