预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共66页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

蒲晓蓉操作系统原理—第31章存储管理内存本章要点3.1存储管理的任务存储分配用于内存管理的数据结构存储分配步骤内存的回收地址映射?逻辑地址静态映射:静态重定位动态映射:动态重定位CPU存储保护存储保护的实现存储共享PCB3共享代码共享代码共享代码共享代码存储扩充存储扩充3.2内存划分与分配技术内存划分静态划分静态划分 8MB固定分区:等长操作系统 8MB固定分区:异长固定分区固定分区:分配分页式划分(Paging)分页式划分(Paging)分页:数据结构分页:数据结构分页:数据结构分页:数据结构动态划分与分配算法动态划分与分配算法图3.6动态划分内存空间的过程动态划分与分配算法动态划分与分配算法首次适应算法(FFA:FirstFitAlgorithm)首次适应算法(FFA:FirstFitAlgorithm)首次适应算法(FFA:FirstFitAlgorithm)外零头:紧凑图3.8利用紧凑技术消除外零头下次适应算法(NFA:Next-FitAlgorithm)下次适应算法(NFA:Next-FitAlgorithm)最佳适应算法(BFA:BestFitAlgorithm)最佳适应算法(BFA:BestFitAlgorithm)最差适应算法(WFA:WorstFitAlgorithm)最差适应算法(WFA:WorstFitAlgorithm)例如图3.7动态划分的4种分配算法伙伴系统(BuddySystem)伙伴系统内存的用户可用空间为2u。 系统总是为进程分配大小为2i的一个空闲分区。其中m≤i≤U,2m是系统允许的最小分区尺寸。 如果进程申请的存储空间大小为k,且2i-1<k≤2i,则将整个2i大小的分区分配给它。 否则,该分区被分割成大小相等(2i-1)的两个分区。再判断k是否满足条件:2i-2<k≤2i-1,若满足条件,则将两个伙伴中的任何一个分配给进程; 否则,将其中一个伙伴又平均分成两个分区。此过程一直继续进行,直到产生的分区大于或等于k,将其分配进程。伙伴系统的存储分配伙伴系统存储空间的回收例如P1申请100KB