全球旧事资料 分类
第八章动态存储管理
一.选择题1C二.判断题1.错误2.正确三.填空题311.(1)4808488(48020)(2)480324482.(1)011011110100(2)0110111000003.用户不再使用而系统没有回收的结构和变量。例如,pmallocsize;…,p
ull;四.应用题1.在伙伴系统中,无论占用块或空闲块,其大小均为2的kk为≥0的正整数次幂。若内m012m存容量为2,则空闲块大小只能是2,2,2,…,2。由同一大块分裂而得的两个小块109互称“伙伴空间”,如内存大小为2的块分裂成两个大小为2的块。只有两个“伙伴空间”才能合并成一个大空间。k起始地址为p,大小为2的内存块,其伙伴的起始地址为:kk1kk1kbuddypkp2若p20或buddypkp2若p222.首次拟合法;从链表头指针开始查找,找到第一个≥所需空间的结点即分配。最佳拟合法:链表结点大小增序排列,找到第一个≥所需空间的结点即分配。最差拟合法:链表结点大小逆序排列,总从第一个结点开始分配,将分配后结点所剩空间插入到链表适当位置。首次拟合法适合事先不知道请求分配和释放信息的情况分配时需查询释放时插在表头。最佳拟合法适用于请求分配内存大小范围较宽的系统释放时容易产生存储量很小难以利用的内存碎片同时保留那些很大的内存块以备将来可能发生的大内存量的需求,分配与回收均需查询。最差拟合法适合请求分配内存大小范围较窄的系统分配时不查询回收时查询以便插入适当位置。3.0110111101004.0110111000005.(1)buddy1664716641281536(2)buddy2816628166428806.动态存储分配伙伴系统的基本思想请参见上面题1。边界标识法在每块的首尾均有“占用”“空闲”标志,空闲块合并方便。伙伴系统算法简单,速度快,但只有互为伙伴的两个空闲块才可合并,因而易产生虽空闲但不能归并的碎片。7.组织成循环链表的可利用空间表的结点大小按递增序排列时首次适配策略就转变为最佳适配策略。98.因为5122可利用空间表的初始状态图如81所示。4559当用户申请大小为23的内存块时因2232但没有大小为2的块只有大小为2的988块故将2的块分裂成两个大小为2的块其中大小为2的一块挂到可利用空间表上另一块77再分裂成两个大小为2的块。又将其中大小为2的一块挂到可利用空间表上另一块再分裂665成两个大小为2的块一块2的块挂到可利用空间表上另一块分裂成两个大小为2的块其中一块挂到可利用空间表上另一块分给用户地址031。如此下去最后每个用户得到的存r
好听全球资料 返回顶部