大连理工大学操作系统-第4章存储管理1答题.ppt

大连理工大学操作系统-第4章存储管理1答题.ppt

  1. 1、本文档共130页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
页的大小:4KB 5*4KB+500B =20980   在段页式系统中,为了获得一条指令或数据,须三次访问内存。第一次访问是访问内存中的段表,从中取得页表始址;第二次访问是访问内存中的页表,从中取出该页所在的物理块号,并将该块号与页内地址一起形成指令或数据的物理地址;第三次访问才是真正从第二次访问所得的地址中,取出指令或数据。   显然,这使访问内存的次数增加了近两倍。为了提高执行速度,在地址变换机构中增设一个高速缓冲寄存器。每次访问它时,都须同时利用段号和页号去检索高速缓存,若找到匹配的表项,便可从中得到相应页的物理块号,用来与页内地址一起形成物理地址;若未找到匹配表项,则仍须再三次访问内存。 段页式特点 分配与回收:同页式 共享与保护、动态伸缩、动态链接:同段式 三次访内,必须联想存储器支持 碎片:n倍于页式 * 若一个程序或子程序可以安全的被并行执行,则称其为可重入(reentrant或re-entrant)的;即,当该子程序正在运行时,可以再次进入并执行它。若一个函数是可重入的,则该函数:可重入代码,必须保证资源的互不影响的使用,比如全局变量,系统资源等。 0 31 0/1 0/1 0/1 0/1 0/1 0 1 7 …… 空闲块数 …… 每位表示一个页面,0表示空闲,1表示已分配 页式管理的分配与回收(位示图) 页式管理的分配与回收(续) 计算一个进程所需要的总页数N; 查位示图,看看是否还有N个空闲页面; 如果有足够的空闲页面,则页表长度设为N,申请页表区,把页表始址填入PCB; 依次分配N个空闲页面,将块号和页号填入页表; 修改位示图。 页式特点 (1)优点: 分配与回收简单 消除“碎片”问题 可实现虚存、共享 (2)缺点: 页面划分不考虑程序的逻辑结构 共享受限 二次访内,速度慢 4.5 基本分段存储管理方式 4.5.1 分段存储管理方式的引入   1) 方便编程   通常,用户把自己的作业按照逻辑关系划分为若干个段,每个段都是从0开始编址,并有自己的名字和长度。因此,希望要访问的逻辑地址是由段名(段号)和段内偏移量(段内地址)决定的。例如,下述的两条指令便是使用段名和段内地址: LOAD R1,[A] |〈D〉; STORE R1,[B] |〈C〉; 其中,前一条指令的含义是将分段A中D单元内的值读入寄存器1;后一条指令的含义是将寄存器1的内容存入B分段的C单元中。   2) 信息共享   在实现对程序和数据的共享时,是以信息的逻辑单位为基础的。比如,共享某个例程和函数。分页系统中的“页”只是存放信息的物理单位(块),并无完整的意义,不便于实现共享;然而段却是信息的逻辑单位。由此可知,为了实现段的共享,希望存储管理能与用户程序分段的组织方式相适应。   3) 信息保护   信息保护同样是对信息的逻辑单位进行保护,因此,分段管理方式能更有效和方便地实现信息保护功能。   4) 动态增长   在实际应用中,往往有些段,特别是数据段,在使用过程中会不断地增长,而事先又无法确切地知道数据段会增长到多大。前述的其它几种存储管理方式,都难以应付这种动态增长的情况,而分段存储管理方式却能较好地解决这一问题。      5) 动态链接   动态链接是指在作业运行之前,并不把几个目标程序段链接起来。要运行时,先将主程序所对应的目标程序装入内存并启动运行,当运行过程中又需要调用某段时,才将该段(目标程序)调入内存并进行链接。可见,动态链接也要求以段作为管理的单位。 4.5.2 分段系统的基本原理 1.将用户程序空间按逻辑划分为几段(segment),每个段内连续编址,每个程序段都有一个段名,且有一个段号。段号从0开始,每一段段内也从0开始编址,段内地址是连续的段间是不一定连续编址的 2. 以段为单位分配内存,段内连续完整,但各段之间可以不连续存放 3.段式逻辑地址二维:段号段内位移  4.每个进程一张段表,实现地址转换、信息保护、共享、扩充、动态连接等 段号 段内地址 4.5.2 分段系统的基本原理   1. 分段   在分段存储管理方式中,作业的地址空间被划分为若干个段,每个段定义了一组逻辑信息。例如,有主程序段MAIN、子程序段X、数据段D及栈段S等,如图4-17所示。每个段都有自己的名字。为了实现简单起见,通常可用一个段号来代替段名,每个段都从0开始编址,并采用一段连续的地址空间。段的长度由相应的逻辑信息组的长度决定,因而各段长度不等。整个作业的地址空间由于是分成多个段,因而是二维的,亦即,其逻辑地址由段号(段名)和段内地址所组成。   分段地址中的地址具有如下结构:   2.段表   在前面所介绍的动态分区分配方式中,系统为整个进程分配一个连续的内存空间。而在分段式存储管理系统中,

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档