- 1、本文档共85页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
操作系统第七章主存管理剖析
第七章 主存管理;7.2主存管理的功能
为方便用户使用,系统必须为每个用户提供0~n-1的一组逻辑地址,即用户编译时,程序访问的地址为虚地址或逻辑地址,而主存单元的地址为实地址或物理地址。
如图所示:;主存管理的主要功能:;7.3分区存储管理;固定分区:将内存用户区划分为若干固定大小的区域,每个区域中驻留一道程序。
动态分区:根据用户程序的大小,动态的对内存进行划分,可以提高内存的利用率。;7.3.1 分区存储管理概述;7.3.1 分区存储管理概述;2、地址映射
(基址寄存器)+逻辑地址→物理地址
其中(基址寄存器)存放一个作业在主存所占分区的首地址。;7.3.3分区的分配和回收;1、首次适应算法
空闲区队列中空闲区按地址从小到大排序。
例如:;1、分配一个空闲区:
{
扫描空闲区队列;
If 申请块﹥所有空闲块,则无法分配(或拼接);
If 申请块≤某一空闲块
{①则从空闲块的底部向上分配空闲区;
//可以只修改空闲区的大小,而不修改空闲区队列的指针
②如果分配之后剩余的空闲块<门限值,则将整个空闲块分配出去;
}
};2、回收一个空闲块:
设r为回收区,f为空闲区
①上邻空闲区
②下邻空闲区
③上、下邻空闲区
④上、下不相邻空闲区
;2、最佳适应算法
空闲区队列中空闲区按大小从小到大排序
例如:;3、最坏适应算法
空闲区队列中空闲区按大小从大到小排序。
例如:;三种算法到底哪一种最好不能一概而论,应针对具体的作业序列来分析。
习题7.7
7.8;7.3.5碎片问题及拼接技术;拼接时机:;拼接技术的缺点:;虚拟存储器是存储管理的核心:
对大量的典型程序运行情况的分析表明,在△t内,CPU对局部范围的存储器地址访问频繁,而对此地址之外的地址访问很少,这种现象称为程序局部性原理(包括时间局部性和空间局部性)。
依据此原理,可将程序要执行的部分装入内存,不执行的部分放在外存,需要执行时再调入主存,这样,就可以在较小的内存运行较大的用户程序。;虚拟存储器的定义:
主存——辅存在OS 的管理下,能为用户提供一个比主存大的多的存储器,这个存储器称为虚拟存储器。
能在较小的内存运行较大用户程序的存储系统。
当引入虚拟存储器后,用户只需在自己的虚存上编制程序,这就给用户带来极大的方便,而虚——实地址的映射由OS自动完成。
虚存技术分为:页式虚拟存储器、段式虚拟存储器、段页式虚拟存储器;7.4页式存储管理
在页式存储管理中,主存被等分成一系列的块,程序的地址空间被分成一系列的页面,块和页面的大小相等,程序以块为单位装入内存,这样,就解决了分区存储管理中的碎片问题。
例如: 内存256KB,2KB/块,内存可分为128块,某程序6.8KB,可以分为┍6.8KB/2KB┑=4页。;7.4页式存储管理;7.4.1页式存储管理应解决的问题;7.4.2页式地址变换;7.4.2页式地址变换;7.4.2页式地址变换3.页式地址变换
设逻辑地址为A,页面大小为L,则逻辑页号P=int(A/L),
页内偏移量w=A mod L。
例如:操作数地址2500B,页面大小为1KB,
P=int(2500/1024)=2 w=2500 mod 1024=452;虚拟存储器的大小受以下因素限制:
一定容量的主存;
大容量的辅存,存放多道程序;
地址变换机构,如虚地址要放入地址寄存器,如果地址寄存器为32位,则虚存最大为232=4G。
;11.已知一个进程有三页,页号为0,1,2,分别对应内存块号为2,3,6,页面的大小为1KB,其中某一指令的虚地址为1000,则对应的物理地址为多少?要求画出地址变换过程。
解:P=int(1000/1024)=0
W=1000 mod 1024=1000
∴物理地址为: 块号 块内偏移量;7.4.2页式地址变换
4.联想存储器(相联存储器)
当页表的全部放入主存时,要取一个数据或指令至少要访问2次主存,一次访问页表,一次访问主存,这样,会使指令的执行速度下降。
为了提高查表速度,可以将页表放入Cache,或部分放入cache。
放入页表部分内容的cache称为联想存储器或相联存储器。
联想存储器中的部分页表称为快表。
联想存储器时按内容查找的存储器,用来存放正在运行的进程的当前最常用的页号和相应的块号。;例:采用快表和页表相结合的页式地址变换;例:有一页式系统,其页表存
文档评论(0)