- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5.2.3 动态分区分配方式 动态分区在作业装入前并不是预先建立分区,而是在作业装入过程中按作业的大小进行划分,即当作业装入内存时从空闲区域中划分出一块连续的区域分给该作业,该区域就是一个已分配的区域,这样分区的大小与作业的大小相等,故分区内部不会产生碎片现象,但随着作业的调入和撤消,内存被划分成若干个已分配区和空闲区。 (4)最坏适应算法 与最佳适应算法相反,最坏适应算法是把满足要求又是最大的空闲区分配给请求进程,但最坏适应算法的原理是使剩余的空闲区总是足够大,能满足其它请求进程,而不是仅仅浪费掉,但实验表明,最坏适应算法的性能也不如首次适应和循环首次适应算法。 为实现内存的分配过程,需采用以下两种情形的数据结构: (1)空闲分区表。 (2)空闲分区链。 3.例题分析 某系统采用动态分区分配方式管理内存,内存空间为640K,高端40K用来存放操作系统。在内存分配时,系统优先使用空闲区低端的空间。对于下列请求序列:作业1申请150K,作业2申请50K,作业3申请90K,作业2释放50K,作业4申请20K,作业1释放150K,作业5申请20K,试分别画图表示出使用首次适应算法和最佳适应算法进行内存分配/回收的实际使用情况。 分析:首次适应算法将空闲区按起始地址递增的次序链接,而最佳适应算法则将空闲区按分区大小递增的次序链接。两种算法的分配/回收过程见表5.3所示。 5.3.2 地址变换机构 物理地址计算: 对于给定的逻辑地址(有效地址)A,已知页面的长度为L,则页号p=INT[A/L],页内偏移w=[A] MOD L,其中,INT是整除函数,MOD是取余函数。 例如,某系统页面大小为1KB,A=2170B,则由公式可得p=2,w=122。对于求得的页号p通过查页表知其对应的块号为b,那么物理地址=块号×块长+偏移,又知在分页管理系统中,块长=页长=L,所以物理地址=b×L+w。 5.3.3 快表 由于分页是在内存中,那么一次数据访问需要两次访存,第一次访问页表,找到对应的物理块号,然后与偏移量拼接成物理地址,第二次根据得到的物理地址访问具体的数据,这样会使计算机处理的速度降低,为此,在地址变换机构中增加一个具有并行处理能力的特殊高速缓冲寄存器,称为快表。 例如,假定查快表的时间为20纳秒,访问内存的时间为100纳秒,对某一进程,其访问快表的命中率为98%,则其有效访问时间T=(20+100)×98%+(20+100+100)×2%=122(纳秒)。 上述例子中,若不采用快表,需要两次访存,需要200纳秒,从而使进行存取的平均时间延长了39%。 5.4 分段存储管理方式 5.4.1 分段管理机制的引入 分段管理方式的引入主要从以下3方面考虑: (1)方便用户编程 (2)有利于信息的共享和保护 (3)有利于段的动态增长和动态链接 5.4.2 分段基本原理 1.分段基本思想 (1)将作业的地址空间划分成若干长度不等的逻辑段(按用户的要求)。例如主程序段、子程序段等,每段对应一个过程、一个程序模块、一个数据集合,并对所有的逻辑段进行编号,如0段、1段、2段等,这样用户的逻辑地址由段号和段内偏移地址两部分组成。如图5.14所示。 MAIN=0 0 15K SUB=1 0 8K DATA=2 0 10K 第5章 存储器管理 本章主要内容 5.1 基本概念 5.2 连续分配方式 5.3 分页存储管理系统 5.4 分段存储管理方式 5.5 段页式存储管理方式 5.6 虚拟存储器 5.7 实例分析 1.名空间(Name Space) 高级语言所编制的源程序,它存在由程序员所建立的符号名空间内,称为名空间。如图5.1(a)所示。 2.地址空间(Address Space) 源程序经过编译后所得到的目标程序存在其所限定的地址范围内,总是从0号单元开始为其分配地址,我们称这个地址范围为地址空间(地址空间仅仅是指程序用来访问信息所用的一系列地址单元的集合),这些单元的编号称为逻辑地址(相对地址或虚地址)如图5.1(b)所示。 5.1基本概念 3.存储空间(Memory Space) 所谓存储空间是指主存中一系列存储信息的物理单元的集合,这些单元的编号称为物理地址(绝对地址或实地址),因此存储空间大小是由主存容量决定的。如图5.1(c)所示。 名空间 主存的存储空间 (b)作业j的地址空间 符号指令 数据说明 I/O说明 目标程序 某作业j 0 A A+X 512K (a)作业j的名空间 (c)作业j装入后的存储间 地址空间 4.重定位(Relocat
文档评论(0)