2022年首次适应算法和循环首次适应算法 .pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2022年首次适应算法和循环首次适应算法 .pdf》由会员分享,可在线阅读,更多相关《2022年首次适应算法和循环首次适应算法 .pdf(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、首次适应算法和循环首次适应算法一、实验目的1、加深操作系统内存管理过程的理解2、掌握内存分配算法的基本应用二、实验要求1. 在分配时,须按照一定的分配算法,从空闲分区表或空闲分区链中选取一分区分配给该作业2. 上机时独立完成编辑,调试程序。三、实验任务请同学们用C/C+实现一个完整的(可变)动态分区管理器, 包括分配,回收,分区碎片整理等。希望同学们实现如下功能:n 初始化功能:内存状态设置为初始状态。n 分配功能:要求至少使用两种算法,用户可以选择使用。n 回收功能:n 空闲块的合并:即紧凑功能,用以消除碎片。当做碎片整理时,需要跟踪分配的空间,修改其引用以保证引用的正确性。n 显示当前内存
2、的使用状态,可以使用表格或图名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 8 页 - - - - - - - - - 形。四、实验指导1基本思想动态分区是指系统不预先划分固定分区,而是在装入程序的时候划分内存区域,使得为程序分配的分区大小恰好等于该程序的需求量,且分区的个数是动态的。显然动态分区有较大的灵活性,较之固定分区能获得好的内存利用率。2数据结构动态分区管理可以用两种数据结构实现,一种是已分配区表和空闲区表,也就是用预先定义好的系统空间来存放空间分配信息。另一种
3、也是最常用的就是空闲链表,由于对分区的操作是动态的, 所以很难估计数据结构所占用的空间,而且空闲区表会占用宝贵的系统空间,所以提出了空闲链表的概念。其特点是用于管理分区的信息动态生成并和该分区在物理地址上相邻。这样由于可以简单用两个空闲块之间的距离定位已分配空间,不仅节约了系统空间,而且不必维持已分配空间的信息。本实验是要做一个模拟程序,来模拟动态分区算法的分配和回收过程,并不是真正的去分配和回名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 8 页 - - - - - -
4、 - - - 收内存。基本的模拟方法有两种:(1) 、先从内存中申请一块存储区,对这块存储区进行模拟的分配和回收活动。(2) 、不申请存储区,自己定义一块虚拟的存储区,对这块存储区进行模拟的分配和回收活动,分配和回收仅仅是对数据结构的修改而已。程序代码:#include using namespace std; intFreePartition100;/空闲分区块数组intFirstPartition100;/首次适应算法数组intCycleFirstPartition100;/循环首次适应算法数组intProcessNeed100;/每个作业的大小intPartitionNum,Proces
5、sNum;/分区块数,作业数/ 首次适应算法void First() 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 8 页 - - - - - - - - - inti,j; charstr; for(i=0;iPartitionNum;i+) FirstPartitioni=FreePartitioni; for(i=0;iProcessNum;i+)/找出第一块满足作业的分区for(j=0;jFirstPartitionj) continue; else First
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年首次适应算法和循环首次适应算法 2022 首次 适应 算法 循环
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内