最坏适应算法申请作业100K,找到4号分区,分配完后3号分区起始地址变为180K+60K=240K,剩余空间为331K-100K=231K申请作业30K,此时被分配过的4号分区依然容量最大,于是还是找到4号分区,分配完后4号分区起始地址变为240+30K=250K,剩余空间为231K-30K=201K申请作业7K,此时被分配过的4号分区依然容量最大,找到4号分区,分配完后4号分区起始地址变为250+7K=257K,剩余空间为201K-7K=194K结论:总是挑选满足作业要求的最大的分区分配给作业 。这样使分给作业后剩下的空闲分区也较 大,可装下其它作业 。由于最大的空闲分区总是因首先分配而划分,当有大作业到来时,其存储空间的申请往往会得不到满足 。基于顺序搜索的分配算法实际上只适合小型的操作系统,大中型系统使用了是比较复杂的索引搜索的动态分配算法 。
如何回收内存
- 回收分区上邻接一个空闲分区,合并后首地址为空闲分区的首地址,大小为二者之和 。
- 回收分区下邻接一个空闲分区,合并后首地址为回收分区的首地址,大小为二者之和 。
- 回收分区上下邻接空闲分区,合并后首地址为上空闲分区的首地址,大小为三者之和 。
- 回收分区不邻接空闲分区,这时在空闲分区表中新建一表项,并填写分区大小等信息 。
用iPad画了一个简单的示意图如下:

文章插图
最后内存分配实际上是操作系统非常重要的一环,如果仅限于理论而不写代码实践则容易迷惘,很多具体的实现与都比较困难 。如上面的基于顺序搜索的最佳适应算法,比如几个分区的表示方法,都用到了数据结构和算法的知识 。如果能用C或者C++完成上述几个算法和操作的具体实现,相信一定会大有脾益的 。
【计算机内存管理介绍】
推荐阅读
-
-
-
美伊说科技“国版苹果”出现,堪称是 5G 界的一匹黑马,开售后秒售罄
-
-
-
「央行」央行传来一则“重磅利好”,A股2900点“稳了”?
-
上桌|入秋,这菜正肥美,城里一斤6块,农村多得没人要,蒸一蒸就上桌
-
拥抱|没有胜算,也要全力以赴,《cheer up》第6集:拥抱真爱
-
移动|Supercell CEO曾预期的“深层社交玩法”正成为可能
-
[大河财立方]星巴克与红杉中国达成战略合作,加速零售创新
-
娱之乐最前线|38岁的女人不化妆,就是这个样子了,陈意涵素颜照出炉
-
【军事管制要开心】一个重要细节,体现特朗普的幼稚,安倍和《自然》为新冠问题道歉
-
时尚指南|天天洗头很干净?实话告诉你:频繁洗头会带来3个危害
-
浪迹金融|仅浙江未公布,养老金上调最新消息:30省出台养老金调整方案
-
孩子总是两面派爱说谎怎么办 两岁孩子撒谎背后的心理
-
科学技术宅|Plus诞生,两款机器首发!,“打脸”魅族高管,骁龙865
-
没经验爸爸说育儿|6岁女儿独自等待妈妈生二胎,说出的话让人心酸,深夜的产房外
-
-
-
ZAKER我要展示硬气功!,拳航百姓擂台将开打!传武抗打哥放话:不要头盔