- 1、本文档共35页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2. 段式管理 在段式虚拟存储系统中,段是按照程序的逻辑结构划分的,各个段的长度因程序而异。 程序按逻辑结构分段,主存按段来分配的存储管理方式。 3.6.2 虚拟存储器的管理方式 9.4.3 段式虚拟存储器和段页式虚拟存储器 1、段式虚拟存储器 段是按照程序的自然分界划分的长度可以动态改变的区域。通常,程序员把子程序、操作数和常数等不同类型的数据划分到不同的段中,并且每个程序可以有多个相同类型的段。 虚地址到实主存地址的变换通过段表实现。 虚拟地址由段号和段内地址组成, 为了把虚拟地址变换成实主存地址,需要一个段表。 每个程序设置一个段表,段表的每一个表项对应一个段。每个表项至少包含下面三个字段: (1)段起址:指明在该段已经调入实存的情况下,该段在实存中的首地址。 (2)有效位(装入位):指明该段是否已经调入实存。 (3)段长:记录该段的实际长度。设置段长字段的目的是为了保证访问某段的地址空间时,段内地址不会超出该段长度导致地址越界而破坏其他段。 段表本身也是一个段,可以存在辅存中,但一般驻留在主存中。若段内地址值超过段长,则为地址越界。 演示 (4)优点: ① 段的分界与程序的自然分界相对应; ② 段的逻辑独立性使它易于编译、管理、修改和保护,也便于多道程序共享; ③ 某些类型的段(堆栈,队列)具有动态可变长度,允许自由调度以便有效利用主存空间。 (5)缺点: 段间的零碎存储空间(碎片)不好利用。 必须用加法操作通过段起址与段内偏移量的求和运算求得物理地址。因此,段式存储管理比页式存储管理方式需要更多的硬件支持。 段页式管理 将程序先按逻辑功能分为段,每个段再分为若干个页 虚存地址包括 段号、段内页号、页内地址 程序分段,段内分页的管理方式。 (1)虚拟地址 页内地址 段内虚页号 虚段号 为实现虚实转换,必须在内存建立段表和页表 每个程序有一张段表,每个程序段有一张页表 所以,每个程序有一张段表和一组页表 段表的主要功能是 用来登记每个程序段的页表在内存中的首地址 页表的主要功能是 用来登记程序段的每个页在内存中的实页号。 段表项: … 装入位 页表首地址 页表项: … 装入位 实页号 段页式段表项: … 装入位 页表首地址 注意:段页式的段表中表项给出的是页表首地址 而段式的段表中表项给出的是实存段首地址 段式段表项: … 装入位 实存段首地址 (3)段页式虚实地址的变换过程 ① 形成访问段表项地址; ②将段表项的页表首地址与段内虚页号相加形成 访问页表项地址; ③将页表项(装入位为1)的实页号和虚地址的页内地址拼接形成访问实存地址。 段表项: … 装入位 页表首地址 页表项: … 装入位 实页号 演示 9.8 (4) 段页式管理的优缺点 优点: 兼有段式和页式管理方式的优点。 缺点: 地址变换过程需多次查表,速度慢。 3.6.5 替换算法 1、问题的提出 产生缺页且主存无空间受时需采用相应的算法替换 2、虚存与cache替换策略的区别 虚拟存储器中的页面替换策略和cache中的行替换策略有很多相似之处,但有三点显著不同: (1)缺页至少要涉及前一次磁盘存取,读取所缺的页,缺页使系统蒙受的损失要比cache未命中大得多。 (2)页面替换是由操作系统软件实现的。 (3)页面替换的选择余地很大,属于一个进程的页面都可替换。 3、替换策略 一般采用LRU算法、FIFO算法,或将两种算法结合起来使用。 对于将被替换出去的页面,假如该页调入主存后没有被修改,就不必进行处理,否则就把该页重新写入外存,以保证外存中数据的正确性。为此,在页表的每一行应设置一修改位。 9.4 虚拟存储器 9.4.1虚拟存储器的基本概念 指一个容量非常大的存储器的逻辑模型,借助于磁盘等辅存来扩大主存容量,是指“主存—外存”这一存储层次。给用户提供了一个比实际主存空间大得多少的虚拟存储空间。不是任何实际的物理存储器。 例:奔腾PC的虚地址模式 段或段页模式,进程可以拥有214+32 = 64TB空间,但实际主存容量64TB。 可见:虚存空间大于实存空间是虚拟存储器的基本特征;虚存空间是由辅存支持的。 逻辑地址-虚拟存储器所提供的地址(是程序的逻辑地址)。 虚拟地址空间-程序的逻辑地址空间。 物理地址-CPU用于访问主存的地址。 物理地址空
文档评论(0)