




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第6章 层次结构存储系统 存储器概述 主存与CPU的连接及其读写操作 磁盘存储器 高速缓冲存储器(cache) 虚拟存储器 IA-32/Linux中的地址转换 层次结构存储系统层次结构存储系统 主要教学目标 理解CPU执行指令过程中为何要访存 理解访存操作的大致过程及涉及到的部件 了解层次化存储器系统的由来及构成 了解CPU与主存储器之间的连接及读写操作 掌握Cache机制并理解其对程序性能的影响 理解程序局部性的重要性并能开发局部性好的程序 了解虚拟存储管理的基本概念和实现原理 理解访存操作完整过程以及所涉及到的部件之间的关联 地址转换(查TLB、查页表)、访问Cache、访问主存、读写磁盘
2、 理解访存过程中硬件和操作系统之间的协调关系 层次结构存储系统层次结构存储系统 分以下六个部分介绍 第一讲:存储器概述 第二讲:主存与CPU的连接及其读写操作 -主存模块的连接和读写操作 -“装入”指令和“存储”指令操作过程 第三讲:磁盘存储器 第四讲:高速缓冲存储器(cache) -程序访问的局部性、cache的基本工作原理 -cache行和主存块之间的映射方式 -cache和程序性能 第五讲:虚拟存储器 -虚拟地址空间、虚拟存储器的实现 第六讲:IA-32/Linux中的地址转换 -逻辑地址到线性地址的转换 -线性地址到物理地址的转换 PC机中的机中的 外存储器外存储器 硬盘 存储器 软盘
3、 驱动器 CD-ROM 驱动器 PC中的外存储器中的外存储器 磁盘存储器的信息存储原理磁盘存储器的信息存储原理 磁头:磁-电和 电-磁转换,用 于读/写信息 “0” “1” 盘片旋转方向 磁 盘 片 线圈 不同的磁化状态被 记录在磁盘表面 写1:线圈通以正向电流,使呈N-S状态 写0:线圈通以反向电流,使呈S-N状态 读时:磁头固定不动,载体运动。因为载体上小的磁化单元外部 的磁力线通过磁头铁芯形成闭合回路,在铁芯线圈两端得到感应 电压。根据感应电压的不同的极性,可确定读出为0或1。 磁表面信息读出过程磁表面信息读出过程 扇扇 区区 磁磁 道道 磁盘的磁道和扇区磁盘的磁道和扇区 磁盘表面被 分
4、为许多同 心圆,每个 同心圆称为 一个磁道。 每个磁道都 有一个编号, 最外面的是 0磁道 每个磁道被划 分为若干段 (段又叫扇 区),每个扇 区的存储容量 为512字节。 每个扇区都有 一个编号 近三十年来,扇区大小一直 是512字节。但最近几年正迁 移到更大、更高效的4096字 节扇区,通常称为4K扇区。 在此例中,每个磁道包含30个固定 长度的扇段,每个扇段有600个字节 (17+7+41+515+20=600)。 磁盘磁道的格式磁盘磁道的格式 磁盘格式化操作指在盘面上 划分磁道和扇区,并在扇区 中填写ID域信息的过程 平均存取时间平均存取时间 磁盘上的信息以扇区为单位进行读写,平均存取
5、时间为: T = 平均寻道时间 + 平均旋转等待时间 + 数据传输时间(忽略不计) 平均寻道时间磁头寻找到指定磁道所需平均时间 (大约5ms) 平均旋转等待时间指定扇区旋转到磁头下方所需平均时间 (大约46ms) ( 转速: 4200 / 5400 / 7200 / 10000rpm ) 数据传输时间( 大约0.01ms / 扇区 ) 磁头磁头 磁道磁道 旋转轴旋转轴 碟片碟片 硬盘的操作流程如下: 所有磁头同步寻道(由柱面号控制) 选择磁头(由磁头号控制) 被选中磁头等待扇区到达磁头下方(由扇区号控制) 读写该扇区中数据 磁盘响应时间计算举例磁盘响应时间计算举例 假定每个扇区512字节, 磁
6、盘转速为5400 RPM,声称寻道时间(最大寻 道时间的一半)为12 ms, 数据传输率为4 MB/s, 磁盘控制器开销为1 ms, 不考虑排队时间,则磁盘响应时间为多少? 磁盘转速非常重要! Disk Response Time= Seek time + Rotational Latency + Transfer time + Controller Time + Queuing Delay = 12 ms + 0.5 / 5400 RPM + 0.5 KB / 4 MB/s + 1 ms + 0 = 12 ms + 0.5 / 90 RPS + 0.125 / 1024 s + 1 ms +
7、 0 = 12 ms + 5.5 ms + 0.1 ms + 1 ms + 0 ms = 18.6 ms 如果实际的寻道时间只有1/3的话,则总时间变为10.6ms,这样旋转等待时 间就占了近50%! 12/3+5.5+0.1+1=10.6ms 为什么实际的寻道时间可能只有1/3? 访问局部性使得每次磁盘访问大多在局部几个磁道,实际寻道时间变少! 能否算出每道有多少扇区?4MBx60 / 512Bx5400 87个扇区 硬盘存储器的组成硬盘存储器的组成 硬盘存储器的基本组成 磁记录介质:用来保存信息 磁盘驱动器:包括读写电路、读写转换开关、磁头与磁头定位伺服系统等 磁盘控制器:包括控制逻辑、时
8、序电路、“并串”转换和“串并”转 换电路等。(用于连接主机与盘驱动器) 并行数据 来自总线 控制逻辑 时钟 并串转换电路 读放电路 串并转换电路 写电流驱动器 读写开关 读/写磁头 图4.47 硬磁盘存储器的逻辑结构 送总线 磁盘驱动器 磁盘控制器 硬盘存储器的简化逻辑结构 还包括数据缓存器、控 制状态寄存器等。 磁盘驱动器磁盘驱动器 移动臂 控制电路 硬盘片 磁头 接口插座 柱面 磁道主轴 硬盘驱动器的逻辑结构硬盘驱动器的逻辑结构 写入电路 写命令 写入数据 读出数据 读命令 读出电路 盘地址 寻道结束 磁盘地址 寄存器 扇区符合 比较器 扇区符合 道地址 磁头定位 伺服系统 磁头选择 读写
9、磁头 扇区 计数器 来自或送到 磁盘控制器 扇区号 扇区标志脉冲 图4.48 磁盘驱动器逻辑框图 与磁盘控制器之间的接口 如何定位磁盘上的数据(磁盘地址格式)? 柱面(磁道)号、磁头(盘面)号、扇区号 操作过程?寻道、旋转、读/写 磁盘存储器的连接磁盘存储器的连接 磁盘控制器连接在I/O总线上,I/O总线与其他总 线(系统总线、存储器总线)之间用桥接器连接 磁盘的最小读写单位是扇区,因此,磁盘总是按成批数据交换方式进行读写,这种高速 成批数据交换设备采用直接存储器存取(DMA,Direct Memory Access)方式进行 数据输入输出,需用专门的DMA接口硬件来控制外设与主存间直接数据交
10、换,数据不 通过CPU。通常把专门用来控制总线进行DMA传送的接口硬件称为DMA控制器。 读一个磁盘扇区读一个磁盘扇区第一步第一步 Main memory ALU Register file CPU chip Disk controller Graphics adapter USB controller mouse keyboard Monitor Disk I/O bus Bus interface CPU对磁盘控制器初始化: 读命令 磁盘逻辑块号 主存起始地址 然后启动磁盘驱动器工作 读一个磁盘扇区读一个磁盘扇区第二步第二步 Main memory ALU Register file CP
11、U chip Disk controller Graphics adapter USB controller MouseKeyboardMonitor Disk I/O bus Bus interface 磁盘控制器读相应的扇区,并按 DMA方式把数据送主存 读一个磁盘扇区读一个磁盘扇区第三步第三步 Main memory ALU Register file CPU chip Disk controller Graphics adapter USB controller MouseKeyboardMonitor Disk I/O bus Bus interface 当DMA传送结束,磁盘控制器
12、向 CPU发出“DMA结束中断请求” ,要求CPU进行相应的后处理。 RAID 系统总体性能的提高不匹配系统总体性能的提高不匹配 处理器和主存性能改进快处理器和主存性能改进快 辅存性能性能辅存性能性能改进慢改进慢 基本思想基本思想:如果一个组件的性能已趋极致无法再提高,则可以并行使用多个组如果一个组件的性能已趋极致无法再提高,则可以并行使用多个组 件以进一步提高总体性能。件以进一步提高总体性能。 RAID: Redundant Array of Independent Disks, OR, Redundant Arrays of Inexpensive Disks:磁盘:磁盘阵列,包含多个独立
13、、并行操作的磁盘阵列,包含多个独立、并行操作的磁盘 不同不同I/O请求可并行处理,只要所访问的数据分布于不同磁盘上请求可并行处理,只要所访问的数据分布于不同磁盘上 单个单个I/O请求也能并行执行,只要要访问的数据块分布于多个磁盘上请求也能并行执行,只要要访问的数据块分布于多个磁盘上 可通过引入数据的冗余性来提高可靠性可通过引入数据的冗余性来提高可靠性 RAID三三个基本特征:个基本特征: 操作系统将包含一组物理硬盘的操作系统将包含一组物理硬盘的RAID看作单一逻辑驱动器看作单一逻辑驱动器 数据采用一种称为数据采用一种称为striping(条带)的方式分布到一个阵列中多个物理驱动器上(条带)的方
14、式分布到一个阵列中多个物理驱动器上 使用冗余磁盘空间存储校验信息,保证在一个磁盘发生故障时数据的可恢复性使用冗余磁盘空间存储校验信息,保证在一个磁盘发生故障时数据的可恢复性 RAID级别级别 目前已知的目前已知的RAID方案分为方案分为8级(级(0-7级),以及级),以及RAID10(结合(结合0和和1级)和级)和 RAID30 (结合(结合0和和3级)和级)和 RAID50 (结合(结合0和和5级)级) 。但这些级别不是。但这些级别不是 简单地表示层次关系,而是表示具有上述简单地表示层次关系,而是表示具有上述3个共同特性的不同设计结构。个共同特性的不同设计结构。 RAID Levels RA
15、ID strip The data are striped across the available disks. All of the user and system data are viewed as being stored on a logical disk. The logical disk is divided into strips, that may be physical blocks, sectors, or some other unit. The strips are mapped round robin (循环)(循环) to consecutive physica
16、l disks in the RAID array. 一一组逻辑连续的组逻辑连续的strips(其中每一(其中每一strip映射到阵列中每一成员)称为映射到阵列中每一成员)称为 一个一个stripe. In an n-disk array, the first n logical strips are physically stored as the first strip on each of the n disks, forming the first stripe; the second n strips are distributed as the second strips on e
17、ach disk; and so on. 优点:如果一个优点:如果一个I/O请求涉及多个逻辑连续的请求涉及多个逻辑连续的strips,则请求中多至,则请求中多至n个个 strips可被并行处理,极大减少了可被并行处理,极大减少了I/O传输时间传输时间 RAID strip 冗余磁盘阵列冗余磁盘阵列 ( RAID 0 ) 不遵循特性(3),无用于提高性能的冗余。适用于容量和速度要求高的非关键 数据存储的场合 与单个大容量磁盘相比有两个优点: (1) 一个I/O请求可从多个硬盘并行传输其不同组成数据块(条区),因而可有 效提高data transfer capacity。 (2)对于短时间内大量针
18、对小数据块的I/O请求,I/O时间主要由寻道和旋转 等待构成。RAID可在多个硬盘间均衡分配这些I/O负载,以提高I/O execution rates 冗余磁盘阵列冗余磁盘阵列 ( RAID 1 ) 冗余性通过在不同硬盘间简单复制所有数据实现 每一逻辑strip 映射到两个不同物理硬盘,因此每一阵列中每一硬盘存在一包含同样数 据的镜像硬盘 优点: (1)读:一个读请求可由包含数据的两个硬盘中具有较少寻道和旋转等待延迟的硬盘提供 数据。 (2)写:一个写请求包括对两个硬盘中的相应strip进行并行更新,因此写性能由其中较慢 (更大寻道和旋转等待延迟)的决定。 (3)错误恢复:简单。当一个硬盘损
19、坏时,数据仍能从另一硬盘读取。 缺点: 价格昂贵,需要两倍与逻辑数据条带大小的硬盘空间 适合于可靠性要求很高的关键数据 对大量读请求,可获得接近两倍于RAID0的高I/O request rates,如果读请求可分布到两个镜 像硬盘上 冗余磁盘阵列冗余磁盘阵列 ( RAID2 ) 采用并行访问技术:对每一I/O请求,阵列中所有硬盘均参与 典型情况下,任意时刻所有硬盘磁头均同步在相同位置 strip非常小(经常为一个字或字节) 使用海明码生成冗余校验数据,可纠正一位错误、检测两位错误。 冗余硬盘数量正比于数据硬盘数量的对数 对一读请求,所有硬盘同时访问。所读数据和关联的纠错码一起传输到阵列控制
20、器,如果发生1 bit错误,控制器 可立刻发现并予以纠正。 对一写请求,必须访问所有相应数据和校验硬盘 适合于存在大量硬盘错误的场合基于现今硬盘的高可靠性,RAID2多不使用 冗余磁盘阵列冗余磁盘阵列 ( RAID 3 ) 采用并行访问和小strip,类似于RAID2 仅使用一个冗余校验硬盘,无论数据阵列多大 对位于所有数据硬盘上相同位置的一组bits,计算一个校验位 某个磁盘损坏时数据可以通过其它磁盘重新生成。 可获得非常高的数据传输速率 任一I/O请求由所有数据硬盘的并行传输完成. 缺点:任一时刻仅能执行一个I/O请求,因此对包含大量同时I/O请求的应用性 能较差 冗余磁盘阵列冗余磁盘阵列
21、 ( RAID 4 ) 采用独立访问技术:每一成员硬盘独立操作,不同I/O请求可并行执行 适合于需要高I/O request rate而非高data transfer rate的场合 Strip相对较大 A bit-by-bit parity strip is calculated across corresponding strips on each data disk for one stripe, and the parity bits are stored in the corresponding strip on the parity disk. 用一个冗余盘存放相应块的奇偶校验位。 响应写请求时,阵列管理软件需要同时更新数据和对应的校验位。 冗余磁盘阵列冗余磁盘阵列 ( RAID 5 ) 类似于RAID 4,采用独立访问技术,但校验strip分布在所有硬盘上。 For an n-disk array, the parity strip is on a different disk for the first n stripes, and so on. 所有磁盘的地位相同,可提高容错性,避免使用专门校验盘时潜在的 I/O瓶颈。 成本不高但效率高,因此被广泛使用。 冗余磁盘阵列冗余磁盘阵列
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 黄色卡通我们的身体儿童故事绘本绘本故事
- 设备合同范本
- 设备采购投标书
- 2025杨村一中第一次热身练思想政治学科
- 建筑施工特种作业-建筑起重机械司机(施工升降机)真题库-4
- 建筑施工特种作业-建筑电工真题库-3
- 森林保测评题目及答案
- 若木诗词题目及答案
- 融合教育题目大全及答案
- 日语时间翻译题目及答案
- 古董数字化展示
- (部编版)统编版小学语文教材目录(一至六年级上册下册齐全)
- 陕西延长石油集团招聘笔试题库2024
- 2024年黑龙江省绥化市中考物理二模试卷(含答案)
- GB/T 44271-2024信息技术云计算边缘云通用技术要求
- 智慧树知到《星期音乐会(同济大学)》章节测试答案
- 第11课《核舟记》课件语文八年级下册
- GB/T 44265-2024电力储能电站钠离子电池技术规范
- Alluxio助力AI模型训练加速宝典 2.0(实战篇)
- 2024年浙江省杭州市萧山区事业单位招聘历年(高频重点复习提升训练)共500题附带答案详解
- YC-T 591-2021 烟草行业实验室安全管理要求
评论
0/150
提交评论