南充网站建设公司,唐山网站建设多少钱,网站分类标准,推广营销软件动态分区分配
内存连续分配管理分为#xff1a;
单一连续分配固定分区分配动态分区分配#xff08;本篇所讲#xff09;
首次适应算法#xff08;First Fit#xff0c;FF#xff09;
该算法又称最先适应算法#xff0c;要求空闲分区按照首地址递增的顺序排列。
优点…动态分区分配
内存连续分配管理分为
单一连续分配固定分区分配动态分区分配本篇所讲
首次适应算法First FitFF
该算法又称最先适应算法要求空闲分区按照首地址递增的顺序排列。
优点优先使用低地址部分空闲分区保留了高地址部分的大量空闲分区有利于大程序或作业的装入。 缺点内存的低地址区留下了许多难以利用的很小空闲分区即内存“碎片”算法每次都从低地址部分开始查找这增加了查找可用空闲分区的开销。
注外碎片是指由于空闲空间太小以致于无法分配给程序或作业的内存空闲区域如动态分区分配中存在外碎片 内碎片是指已经被分配出去却不能被充分利用的内存空间区域如固定分区分配中存在内碎片。
循环首次适应算法Next FitNF
空闲分区按照首地址递增的顺序排列。每次内存分配时不再从表头或链首开始查找而是从上次分配的空闲分区的下一个空闲分区开始顺序查找。
优点内存的空闲分区分布较均匀减少查找空闲分区的开销。 缺点经多次分配后内存缺少较大的空闲分区以分配给较大的程序或作业。
最佳适应算法Best FitBF
或称最优适应算法该算法要求将空闲分区按从小到大的顺序排列。
优点较大的空闲分区被尽量的保留下来有利于大程序或作业的分配。 缺点容易产生内存碎片每次分配后需要更新空闲分区表链增加了系统开销分割后小的空闲分区处于分区表链首增加了查找空闲分区的时间。
最坏适应算法Worst FitWF
又称最差适应算法该算法空闲分区按从大到小的顺序排列的。
优点不会产生过多的碎片有利于中、小程序或作业且查找效率高。 缺点影响大程序或作业的分配。此外每次分配后需要更新空闲分区表链增加了系统开销。
四种算法比较
从搜索速度上看FF具有最佳性能。
首次适应算法具有最佳性能空间利用方面首次适应算法比最佳适应算法好最坏适应算法最差。
最佳适应算法找到的空闲分区是最佳的但内存利用率不一定最优
首次适应算法尽可能利用低地址空间保证了高地址有较大空闲分区以分配给较大的程序或作业
最坏适应算法总是分割大的空闲分区这有利于中、小程序或作业但不利于较大的程序或作业。在实际系统中首次适应算法使用较广泛。
例题
1.在可变分区存储管理下按地址排列的内存空闲区为10KB、4KB、20KB、18KB、7KB、9KB、12KB 和 15KB。对于下列连续存储区的请求12KB、10KB、15KB、18KB试问使用首次适应算法、循环首次适应算法、最佳适应算法和最坏适应算法哪个空闲区将被使用
首次适应算法
循环首次适应算法
最佳适应算法
最坏适应算法
2.某操作系统采用可变分区分配存储管理方法用户区为512K且始址为0。若分配采用分配空闲区低地址部分的方案对下述申请序列: 申请310K申请100K释放310K申请150K申请40K申请30K。 分别采用首次适应算法、最佳适应算法回答下列问题: (1)给出每一步的已分配空间、空闲分区(给出始址大小)? (2)若再申请120K还能分配这120K存储空间吗?