第4章存储器管理精品.ppt

* 基于顺序搜索的动态分区分配算法,比较适用于不太大的系统。当系统很大时,系统中的内存分区可能会很多,相应的空闲分区链就可能很长,这是采用顺序搜索分区方法可能会很慢。 为了提高搜索空闲分区的速度,在大、中型系统中往往会采用基于索引搜索的动态分区分配算法。目前常用的有快速适应算法、伙伴系统和哈希算法。 当需要为进程分配一个长度为n的存储空间时,首先计算一个i值,使得2i-1 n=2i ,然后再空闲分区大小为2i 的空闲分区链表中查找。若找到,即把该空闲分区分配给进程,否则在分区大小为2i+1 的空闲分区链表中选择。如存在2i+1 的一个空闲分区,则把该空闲分区分为相等的连个分区,这两个分区称为一对伙伴。 * (1)在伙伴系统中,其分配和回收的时间性能取决于查找空闲分区的位置和分割、合并空闲分区所花费的时间。 在回收空闲分区时,需要对空闲分区进行合并,所以其时间性能比快速适应算法差,但由于它采用了索引搜索算法,比顺序搜索算法好。 (2)虽然,当前Os普遍采用基于离散分配方式的分配机制,但在多处理机系统中,该机制仍不失为一种有效的内存分配和释放的方法。 * * A=H(key) * 外碎片:指在所有分区外的存储空间会变成越来越多的碎片,这与固定分区中的内部碎片正好相对,克服外部碎片的可以通过紧凑(compaction)技术来解决 在连续分配方式中,必须把系统或用户程

文档评论(0)

1亿VIP精品文档

相关文档