- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
editor data1 editor data2 进程1 进程2 段表 … editor data1 … data2 主存 80 240 380 420 段长 基址 160 80 40 240 段长 基址 160 80 40 380 谢 谢 收 看 操作系统 第29讲 哈尔滨工业大学 张英涛 操 作 系 统 第 30 讲 主讲人:张英涛 哈尔滨工业大学远程教育课程 可重入代码 又称纯代码 :一种允许多个进程同时访问但不允许任何进程对它进行修改的代码。 ed1 … ed40 data1 … data10 ed1 … ed40 data1 … data10 21 60 61 … 70 21 … 60 71 … 80 进程1 进程2 页表 页表 … ed1 ed2 … ed40 data1 … data10 data1 .. data10 主存 0 21 22 60 61 70 71 80 editor data1 editor data2 进程1 进程2 段表 … editor data1 … data2 主存 80 240 380 420 段长 基址 160 80 40 240 段长 基址 160 80 40 380 段页式存储管理方式 既具有分段系统的便于实现、分段可共享、易于保护、可动态链接等优点 又能像分页系统那样解决内存的外部碎片问题,以及可为各个分段离散地分配内存等问题。 段页式存储管理基本原理 分段和分页原理结合 先将用户分成若干个段, 再把每个段分成若干个页,并为每一个段赋予一个段名。 作业地址空间 段页式地址结构 地址映射 地址变换机构 三次访问内存 第一次访问段表,从中取得页表始值; 第二次访问页表,从中取出该页所在的物理块号,并将该块号与页内地址一起形成指令或数据的物理地址; 第三次真正访问指令或数据。 (1)大作业要求的内存空间超过了内存容量不能全部被装入致使该作业无法运行。 (2)有大量作业要求运行,但只能将少数作业装入内存让它们先运行,而将其它大量的作业留在外存上等待。 内存容量不够带来的问题 常规存储器管理方式特征 (1)一次性。即作业在运行前需一次性全部装入内存。 (2)驻留性。作业装入内存后,便一直驻留在内存中,直至作业运行结束。 局部性原理 程序在执行时将呈现出局部性规律,即在一较短时间内,程序的执行仅限于某个部分且所访问的存储空间也局限于某个区域。 局部性原理几个论点 (1)程序多数情况是顺序执行的。 (2)过程调用会使程序的执行由一部分区域转至另一部分区域,但过程调用的深度大多不超过5。程序将会在一段时间内都局限在这些过程的范围内运行。 (3)循环结构虽只由少数指令构成,但是它们将多次执行。 (4)程序包括许多对数据结构的处理。 局限性表现 (1)时间局限性。某指令一旦执行,则不久后该指令可能再次执行;某数据被访问过,则不久后该数据可能再次被访问。 (2)空间局限性。程序在一段时间内所访问的地址,可能集中在一定的范围之内,其典型的情况便是程序的顺序执行。 虚拟存储器定义 虚拟存储器,是指具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储器系统。 其逻辑容量由内存和外存之和所决定,其运行速度接近于内存速度,而每位的成本却又接近于外存。 虚拟存储器的实现方法 基于离散分配方式: 分页请求系统 请求分段系统 快表引入原因 CPU存取一个数据时要两次访问内存, 第一次是访问页表, 找到指定页的物理块号,再将块号与页内偏移量W拼接形成物理地址。 第二次访问内存是从所得地址中获得所需数据(或向此地址中写入数据)。 增设一个具有并行查询能力的高速缓冲寄存器,称为“联想寄存器” 或 “快表” ,用于存放当前访问的页表项。 为提高地址变换速度: 地址变换过程 cpu给出有效地址,由地址变换机构自动地将页号p送入高速缓冲存储器,并将此页号与高速缓存中的所有页号进行比较,若有与此相匹配的页号,则表示所要访问的页表项在快表中。于是,可直接读出该页所对应的物理块号,并送物理地址寄存器中。 如在快表中末找列对应的页表项,还须再访问内存中的页表,找到后,把从页表项中读出购物理块号送地址寄存器;同时,还将此页表项存入快表中的一个寄存器单元中,亦即置新修改快表、但如果联想存储器巳满,则os必须找到一个老的且已被认为不再需要的页表项将它换出。 快表通常只存放16~512个页表项 大型作业只能将其一部分页表项放入其中 从快表能找到所需页表项的命中率可达90%。 例: 检索联想存储器的时间为20ns,访问内存的时间为100 ns。如果能在联想存储器中检索出页号,则CPU存取数据总共需要
原创力文档


文档评论(0)