第3单元 主存管理 第3节 分页存储管理 一页一页的放………… 怎么解决分段带来的碎片问题? 页与页框 地址映射 多级页表 快表 举例

Slides:



Advertisements
Similar presentations
第五章 存储系统 5.1 存储器的构成 5.2 存储系统的构成 5.3 Cache 5.4 虚拟存储器.
Advertisements

Linux 系统. 操作系统发展需求 1 没有操作系统 2 简单批处理操作系统 3 多道程序设计的批处理 4 多道程序设计的分时操作系统 5 多处理机并行系统 6 网络操作系统 7 分布式操作系统.
第 4 章存储器、存储管理和 高速缓存技术 4.1 存储器和存储部件 4.2 存储器的连接 4.3 微型计算机系统中存储器的体系结构 4.4 Pentium 的虚拟存储机制和片内两级存储管理 4.5 高档微机系统中的高速缓存技术 第一次课 第二次课 第三次课.
微机原理与接口技术 第二章: ARM微处理器硬件结构
计算机组成原理试题解析.
计算机系统结构 (第9讲).
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
第五讲:虚拟存储器(Virtual Memory)
第8章 虚拟存储器 硬件和控制结构 操作系统软件 虚拟存储管理实例 虚拟页式存储管理 虚拟段式存储管理 虚拟段页式存储管理
第五课 让挫折丰富我们的人生 挫折面前也从容.
缓存(续).
实用操作系统概念 张惠娟 副教授 1.
第九章 操作系统支持 操作系统是管理计算机资源并为用户提供服务的系统软件,作为硬件与应用软件之间的接口,操作系统起着承上启下的作用。了解操作系统与硬件之间的相互关系有助于理解计算机系统的整体工作过程。本章仅就操作系统与硬件关系最密切的处理机调度与存储管理问题进行讨论。
第3章 存储管理 3.1 存储管理概述 3.2 基于连续分配的内存管理方法 3.3 基于离散分配的内存管理方法 3.4 虚拟存储管理
3.1 虚拟存储器 3.2 内存管理方式 段页机制 3.4 Linux存储管理 3.5 小结 习题
Scheduling Key to multi-programming 多道程序设计的关键是调度
基于解释性语言的手机跨平台架构 Sloan Yi. Qt MTK.
第4章 存储管理 本章学习目标 4.1 存储管理的功能 4.2 实存管理 4.3 虚拟存储器管理 4.4 碎片与抖动问题 开 始.
辅导教师:杨屹东 网络实用技术基础 辅导教师:杨屹东
中央广播电视大学计算机课程 操 作 系 统. 中央广播电视大学计算机课程 操 作 系 统 1、《操作系统》教材 2、《操作系统实验》教材 3、操作系统课程录像 15讲 主编/主讲:孟庆昌 中央电大出版社出版 课程使用的媒体 1、《操作系统》教材 2、《操作系统实验》教材 3、操作系统课程录像.
第五章 存储管理 2006年11月.
大学计算机基础—— 系统工具与环境 (理工科用) 赵 欢 肖德贵 李丽娟 洪跃山 编著.
3.1 存储器的构成 3.2 存储系统的构成 3,3 Cache 3,4 虚拟存储器
第四章 存储器管理.
Kvm异步缺页中断 浙江大学计算机体系结构实验室 徐浩.
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
Linux内存管理 内存管理概述 Linux内存管理数据结构 Linux内存分配与回收 Slab分配器 Linux进程的地址空间 页表
中国科学技术大学计算机系 陈香兰 2013Fall 第七讲 存储器管理 中国科学技术大学计算机系 陈香兰 2013Fall.
内存管理基本概念.
LINUX存储管理.
存储系统.
第四章 内存管理 (lab2).
第4章 内存管理.
存储管理 存储体系 存储管理的任务 分区存储管理 页式存储管理 交换技术与覆盖技术 虚拟存储.
第4章 现代微机的存储系统.
Zhao4zhong1 (赵中) C语言指针与汇编语言地址.
第九章 存储管理 9.1 概述 一、存储器的层次:三级存储器结构 本章主要讨论几种常用的内存管理技术。 Cache 内存 外存 由硬件寄存器
Chap 9 Memory Management 存储管理
逆向工程-汇编语言
动态规划(Dynamic Programming)
CPU结构和功能.
中国科学技术大学计算机系 陈香兰(0512- ) Spring 2011
用event class 从input的root文件中,由DmpDataBuffer::ReadObject读取数据的问题
操作系统原理 Operating System Principles
内容摘要 ■ 课程概述 ■ 教学安排 ■ 什么是操作系统? ■ 为什么学习操作系统? ■ 如何学习操作系统? ■ 操作系统实例
C语言程序设计 主讲教师:陆幼利.
微机系统的组成.
本节内容 随机读取 视频提供:昆山爱达人信息技术有限公司.
操作系统原理 Operating System Principles
微机原理与接口技术 微机原理与接口技术 朱华贵 2015年11月13日.
<编程达人入门课程> 本节内容 内存的使用 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群: ,
项目二:HTML语言基础.
成绩是怎么算出来的? 16级第一学期半期考试成绩 班级 姓名 语文 数学 英语 政治 历史 地理 物理 化学 生物 总分 1 张三1 115
Windows98虚拟存储技术 (1)Intel80386提供的存储管理方式
本节内容 内存复制指令 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
本节内容 Private Memory 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
段式存储管理(Segmentation)
本节内容 线性地址的管理 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
第八章 总线技术 8.1 概述 8.2 局部总线 8.3 系统总线 8.4 通信总线.
3.1私有内存的分配.
临界区问题的硬件指令解决方案 (Synchronization Hardware)
第9章 存储管理.
本节内容 通用寄存器 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
微机原理与接口技术 西安邮电大学计算机学院 宁晓菊.
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
本节内容 动态链接库 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
习题课 11/24/11 11/24/11 Operating System.
本节内容 进程 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
第四章 UNIX文件系统.
实验六、COM类型病毒分析实验 实验开发教师: 刘乃琦 谌黔燕.
Presentation transcript:

第3单元 主存管理 第3节 分页存储管理 一页一页的放………… 怎么解决分段带来的碎片问题? 页与页框 地址映射 多级页表 快表 举例 第3节 分页存储管理 怎么解决分段带来的碎片问题? 一页一页的放………… 页与页框 地址映射 多级页表 快表 举例 分页和分段的区别 段页式

物理内存划分成大小相等的页框 程序被分割为大小相等的页,放到页框里 5 1 2 3 6 页框7 页框6 段0:页3 页框5 段0:页0 页框0 页框1 页框2 页框3 页框4 页框5 页框6 页框7 段0:页3 段0:页0 段0:页2 段0:页1 程序被分割为大小相等的页,放到页框里 5 1 2 3 6 页表

页已经载入了内存,接下来的事情… 页0放在页框5中,页0中的地址就需要重定位 Offset Page# 页中的仍然是逻辑地址 页框0 页框1 页框2 页框3 页框4 页框5 页框6 页框7 段0:页3 段0:页0 段0:页2 段0:页1 页0放在页框5中,页0中的地址就需要重定位 Offset Page# 12 11 15 页中的仍然是逻辑地址 第几页 页面尺寸(4K) mov [0x2240], %eax 0x02 逻辑地址 0x240 240 页表指针 页框号 保护 页号 5 R 1 R/W 3 2 6 3 PCB中应有此值 物理地址: 0x3240 权限检查

页表会很大,页表放置就又成了问题 纸上和实际使用总是存在很大差别! 页是用来解决碎片问题的  所以,页面尺寸应该不能太大,为什么? 页面尺寸通常为4K,而地址是32位的,有220个页面 如果页表中的页号不连续,则需要查找,折半log(220)=20,20次什么? 页框号 保护 页号 5 R 1 R/W 2 6 3 有效 页框号 保护 页号 5 R 1 R/W 3 问题:这意味着什么?

多级页表:页目录+页表 32位地址空间+ 4K页面+页号连续220个页表项 220个页表项都得放在内存中,需要4M内存;系统中并发10个进程,就需要40M内存 页框号 页号 5 1 2 6 3 有效 实际上大部分逻辑地址根本不会用到 32位: 总空间[0,4G]! 引入多级页表,页目录常驻内存,不需要映射的逻辑地址不需要在内存中建立页表项

多级页表如何减少了内存中的页表数量? Offset 物理页号 物理地址 逻辑地址 Offset 页号 页目录号 页目录指针 10 bits 12 bits 逻辑地址 Offset 页号 页目录号 4KB Offset 页目录指针 4 bytes 程序构成: 4M代码+4M数据+4M栈 页目录驻留内存(4K) 4 bytes 210个目录项4字节地址 = 4K,总共需要16K<<4M

多级页表提高了空间效率,但时间? 多级页表增加了访存的次数,尤其是64位系统 TLB是一组相联快速存储,是寄存器 逻辑地址 Offset 页号 TLB未命中(失效) 页框号 保护 页号 56 R 140 23 R/W 20 29 R/X 19 43 21 有效 1 修改 TLB Offset 物理页号 物理地址 相联! TLB命中 页表

TLB得以发挥作用的原因 TLB命中时效率会很高,未命中时效率降低 有效访问时间 = HitR(TLB+MA) + (1-HitR)(TLB+2MA) 命中率! 内存访问时间! TLB时间! 有效访问时间=80%(20ns+100ns) + 20%(20ns+200ns)=144ns 有效访问时间=98%(20ns+100ns) + 2%(20ns+200ns)=122ns 有效访问时间=10%(20ns+100ns) + 90%(20ns+200ns)=210ns 要想真正实现“只访存1次”,TLB的命中率应该很高 TLB越大越好,但TLB很贵,通常只有[64, 1024]

为什么TLB条目数可以在64-1024之间? 相比220个页,64很小,为什么TLB就能起作用? 程序的地址访问存在局部性 某内存引用模式 空间局部性(Locality in Space) 访问概率 内存地址 程序多体现为循环、顺序结构 计算机系统设计时应该充分利用这一局部性

分页管理的特征: 1.os管理,整个物理内存分系统区和用户区 2.内存分为等长页面(frame):又叫物理页、帧、页框架 3.程序分为等长页(page),又叫逻辑页,页与页框架通 常等长, 4.程序在内存存放时,页内连续、页间不一定连续(即 相邻页不一定放在相邻帧中) 5.程序不一定完整进入内存(实存/虚存) 6.地址映射只能采用动态重定位 7、页的分配与释放可以用位示图或者链表。算法简单。 注意”页 内连续页间不一定连续“指的是页而非页面。 旨在克服前4模式因连续和完整要求而导致的内存利用率低、需要用户自己解决程序大空间小问题、装入和交换速度慢等问题。

页式系统与段式系统的区别 用户地址空间的区别 页式系统中用户地址空间——一维地址空间 段式系统中用户地址空间——二维地址空间 段和页面的区别 段 页面  信息的逻辑划分  信息的物理划分  段长是可变的  页的大小是固定的  用户可见  用户不可见  w字段的溢出  w字段的溢出自动 将产生越界中断 加入到页号中

举例 在分页式存储管理系统中,分页是由 完成的 A.程序员 B.用户 C.操作员 D.系统 在分段式存储管理中,是由用户实施分段的。因此 。 在分页式存储管理系统中,分页是由 完成的 A.程序员 B.用户 C.操作员 D.系统 在分段式存储管理中,是由用户实施分段的。因此 。 A.段内和各段间的地址都是连续的 B.段内的地址是连续的,各段间的地址可以不连续 C.段内的地址可以不连续,但段间的地址是连续的 D.段内的地址和各段间的地址都是不连续的 分段管理的主要优点有( )。 A.可以实现有意义的共享 B.用户可以使用覆盖技术 C.方便地址转换 D.程序不需要连续的内存 E.可以实现动态链接 F.可以给不同段赋予不同存取权

问题:操作系统在管理内存时引入页的目的是? ( ) 问题:操作系统在管理内存时引入页的目的是? ( ) A. 更符合用户习惯 B. 进行地址翻译(运行时重定位)更快 C. 减少了外部内存碎片 D. 减少了内部内存碎片

下列存储器哪些可用来存储页表? A.Cache B.磁盘 C.主存 D.快表

段页式存储管理 段、页结合: 程序员眼中看见的是段,物理按页划分区域,所以…

段、页同时存在时的重定位(地址翻译) 段号+偏移(cs:ip) 逻辑地址 页号 偏移 偏移 物理地址 物理页号 称为虚拟地址 基址 长度 保护 段号 0x4000 0x0800 R 0x4800 0x1400 R/W 1 0xF000 0x1000 2 0x0000 0x3000 3 逻辑地址 页号 偏移 偏移 物理地址 物理页号 称为虚拟地址 页框号 保护 5 R 1 R/W 3 7

这种方案,实质是分页方案,不同的是以段为单位分页 19