首页 > 代码库 > 20145317《信息安全系统设计基础》第7周学习总结1

20145317《信息安全系统设计基础》第7周学习总结1

20145317《信息安全系统设计基础》第7周学习总结1

教材学习内容总结

基本存储技术:SRAM存储器 DRAM存储器 ROM存储器 旋转硬盘 固态硬盘

1.存储技术

三种常见存储技术:RAM/ROM/磁盘

1)随机访问存储器RAM

  • 两类:静态RAM(SRAM)和动态RAM(DRAM)
  • 静态RAM(SRAM)比动态RAM(DRAM)更快,但也贵很多。
  • 静态RAM
    • SRAM将每个位存储在一个双稳态的存储器单元里,每个单元是用一个六晶体管电路来实现的。
    • 这个电路的一个属性:它可以无限制地保持在两个不同的电压配置或状态之一。其他任何状态都是不稳定的。
    • - 特点:由于SRAM的双稳态特性,只要有电,它就会永远地保持它的值,即使有干扰,如电子噪音,来扰乱电压,当干扰消除,电路也能恢复到稳定值。

- 应用:SRAM用来作为高速缓存存储器,即可以在CPU芯片上,也可以在片下。

  • 动态DRAM
    • DRAM将每个位存储为对电容的充电。电容约为30×10-15F。
    • - 特点:对干扰特别敏感,当电容的电压被扰乱之后,它就永远不会恢复了。暴露在光线下会导致电容电压改变。

- 应用:DRAM用来作为主存以及图形系统的帧缓冲区。

2)非易失性存储器(ROM

  • ROM的区分:能被重编程的次数和对他们进行重编程所用的机制。
  • - PROM:只能被编程一次。
  • - EPROM:可擦写可编程ROM,紫外线光照清除单元内容,可擦写次数数量级1000。
  • - E2PROM:电子可擦除PROM,可以直接在印制电路卡上编程,可擦写次数数量级10^5。

- FLASH:闪存,基于EEPROM。(固态硬盘SSD基于闪存)

  • 存储在ROM设备中的程序通常称为固件。

3)访问主存

- 读事务:从主存传送数据到CPU。

- 写事务:从CPU传送数据到主存。

- 总线:一组并行的导线,能携带地址、数据的控制信号。

    数据总线、控制总线、地址总线

  • 读事务语句

movl A,%eax

- CPU将地址A放到存储器总线

- 主存从总线读出A,接收字x,然后将x放到总线上

- CPU从总线读出字x,并将它copy到寄存器eax中。  

  • 写事务语句

movl %eax,A

- CPU将地址A放到存储器总线,主存读出这个地址,等待接收数据字

- CPU将数据字y放到总路上

- 主存从总线读数据字y,并将它存储在地址A。

4)磁盘存储

  • 磁盘构造
    • 盘片构成,每个盘片有两面或者称为表面,表面覆盖着磁性记录材料。盘片中央有一个可以旋转的主轴,使得盘片以固定的旋转速率旋转,通常是5400~15000转每分钟(RPM
    • 每个表面是由一组称为磁道的同心圆组成;每个磁道被划分成一组扇区;每个扇区包含相等数量的数据位(通常是512字节);这些数据编码在扇区上的磁性材料中。扇区之间由一些间隙分隔开,这些间隙中不存在数据位。间隙存储用来标识扇区的格式化位。

           技术分享            

  • 磁盘容量
    • 一个磁盘上可以记录的最大位数称为它的最大容量/容量。
    • 磁盘容量的决定因素:
    • - 记录密度:磁道一英寸的段可以放入的位数。
    • - 磁道密度:从盘片中心出发半径上一英寸的段内可以有的磁道数。

- 面密度:记录密度与磁道密度的乘积。

  • 磁盘容量(敲不出来)

 技术分享

 

  • 即扇区大小×每条磁道平均扇区数×每个面磁道的磁道数×每个盘片的面数×每个磁盘的盘数
  • 例子:
    技术分享
  • 对于与DRAM和SRAM容量相关的单位,通常

K = 210,M = 220,G = 230

  • 对于磁盘和网络这样的I/O设备容量相关的单位,通常

K = 103,M = 106,G = 109

  • 磁盘操作
    • 磁盘用读写头来读写存储在磁性表面的位,而读写头连接到一个转动臂一端。寻道就是通过沿着半径轴前后移动这个转动臂,使得驱动器可以将读写头定位在盘面上的任何磁道上。

 技术分享

  • 任何时刻,所有的读写头都位于同一柱面上。
  • 在传动臂末端的读/写头在磁盘表面高度约0.1微米处一层薄薄的气垫上飞翔,速度大约为80km/h。
  • 磁盘以扇区大小的块来读写数据。
  • 对扇区的访问时间有三个主要的部分:
  • - 寻道时间:为了读取某个目标扇区的内容,传动臂把读/写头首先定位到包含目标扇区的磁道上,所需时间即为寻道时间,约等于最大旋转时间。
  •     - 寻道时间Tseek依赖于读写头以前的位置和转动臂在盘面上移动的速度。
  • - 旋转时间:定位到期望的磁道后,驱动器等待目标扇区的第一个位旋转到读/写头下。依赖于当读写头到达目标扇区时盘面的位置和磁盘旋转速度。
  •     - 定位到期望的磁道后,驱动器等待目标扇区的第一个位旋转到读/写头下。
  •     - 最大旋转时间 = 1/最大旋转数率
  •     - 平均旋转时间 = (1/2) * 最大旋转时间。
  • - 传送时间:当目标扇区的第一个位位于读写头下时,驱动器就可以开始读或者写该扇区的内容。依赖于旋转速度和每条磁道的扇区数目。

    - 平均传送时间 = (1/最大旋转数率) * (1/每磁道的平均扇区数)

5)逻辑磁盘块

内存可以看成字节数组、磁盘可以看成块数组

  • 现代磁盘构造复杂,有多个盘面,这些盘面上有不同的记忆区。为了对操作系统隐藏这样的复杂性,现代磁盘将他们的构造呈现为一个简单的试图,一个B个扇区大小的逻辑块的序列,编号为0,1,...,B-1。
  • 磁盘中有一个小的硬件/固件设备,称为磁盘控制器,维护着逻辑块号和实际(物理)扇区之间的映射关系。
  • 控制器上的固件执行一个快速表查找,将一个逻辑块号翻译一个(盘面、磁道、扇区)的三元组,这个三原则唯一地表示了对应的物理扇区。控制器上的硬件解释这个三元组,将读写头移动到适当的煮面,等待扇区移动到读写头下,将读写头感知到的位放在控制器上的一个小缓冲区中,然后将他们拷贝到主存中。

6)连接到I/O设备

  • 想图形卡、监视器、鼠标、键盘和磁盘这样的输入输出设备,都是通过I/O总线连接到CPU和主存的。
  • 系统总线和存储器总线是与CPU相关的,I/O总线设计成与底层CPU无关。
  • I/O总线比系统总线比存储器总线慢,但是它可以容纳种类繁多的第三方I/O设备。
  • - 通用串行总线USB:2.0最大带宽60MB/S,3.0最大带宽600MB/S
  • - 图形卡(适配器)

- 主机总线适配器

7)访问磁盘

  • CPU使用一种存储器映射I/O技术来向I/O设备发出命令,在使用存储器映射I/O的系统中,地址空间中有一块地址是为与I/O设备通信保留的,称为I/O端口。当一个设备连接到总线时,它与一个或多个端口相连。
  • 直接存储器访问:设备可以自己执行读或者写总线事务,而不需要CPU干涉的过程。这种数据传送称为DMA传送。

8)固体磁盘

  • 固态硬盘是一种基于闪存的存储技术。
  • 一个SSD包由一个或多个闪存芯片和闪存翻译层组成,闪存芯片替代传统旋转磁盘中机械驱动器;闪存翻译层(一个硬件/固件设备)替代磁盘控制器,将对逻辑块的请求翻译成对底层物理设备的访问。
  • 性能特性
  • - 顺序读和写(CPU按顺序访问逻辑磁盘块)性能相当,顺序读比顺序写稍快一点。
  • - 随机顺序访问逻辑块时,写比读慢一个数量级。
  •  

*读写性能差别是由底层闪存基本属性决定的。

  • 优缺点
  • 优点:
  • - 由半导体构成,没有移动的部件
  • - 随机访问时间比旋转磁盘要快、能耗低、结实
  • 缺点

- 易磨损、更贵

9)存储技术趋势

    • 不同的存储技术有不同的价格和性能折中
    • 不同存储技术的价格和性能属性以截然不同的速率变化着(增加密度从而降低成本比降低访问时间更容易)
    • DRAM和磁盘的性能滞后于CPU的性能

随机访问存储器:

1 静态(SRAM):双稳定特性、只要通电就能永远稳定,速度较快

2 动态(DRAM):对干扰敏感,一旦电压被干扰,永远不能恢复,并且暴露在光线下会导致电容电压改变,速度较慢。

DRAM中=芯片单元分成M个超单元,每个超单元有N个DRAM单元组成,并有r行 c列。

读取过程:从16*8的DRAM中读取超单元(4,3),首先存储控制器发送行地址4,然后DRAM将4行的所有内容拷贝到内部行缓冲区,接着控制器再发送列地址3,DRAM将行缓冲区拷贝出超单元(4,3)中的8位并发送到存储控制器。

快业模式的DRAM: 存储控制器发送行地址的时候后面跟着三个列地址(1+3),相比原本的DRAM拷贝一次行就浪费一次要快得多。

VRAM: 输出时通过对行内部缓冲区的整个内容行位移得到,更快,并且允许对存储器并行的读和写。

非易失性存储器:

ROM(只读存储器):

1 PROM(只能被编程一次,只能高电流熔断一次)

2 可擦写可编程ROM(光擦除的可擦写和冲编程的次数达1000次,电子可擦除的可达到10^5次)

3 闪存

固件:存储在ROM设备中的程序。

movl A,%eax的过程:

1 CPU将地址放到系统总线上

2 I/O桥将信号信号传递到存储器

3 存储器从系统总线上读取地址A

4 并读取除数据写到存储器总线上

5 I/O桥将存储器总线上的信号翻译成系统总线号,并传递到CUP。

6 CPU从总线上读数据并拷贝到寄存器%eax

movl %eax,A的过程:

1 CPU将地址A放到系统总线上(I/O桥信号翻译过程也在其中)

2 存储器从总线上读出地址A,等待数据送达

3 CPU将%eax中的数据字拷贝到系统总线上(和2同时)

4 主存从存储器总线独处数据字并存到DRAM的A地址中。

磁盘构造:

盘片(有两面,盘片中央有可旋转的主轴,旋转速度RPM)

每个表面有8个磁道,没个刺刀被划分为一组扇区,扇区间的空隙存储用来标识扇区的格式化位。

磁盘容量=字节数/扇区+平均扇区数/磁道+磁道数/表面+表面数/盘片+盘片数/磁盘

磁盘上一个扇区读取时间=寻道时间+传送时间+平均旋转时间(总传送时间的一半)

局部性:

1 时间局部性(被引用过一次的存储器位置不久后也有可能在被多次引用)

2 空间局部性(被引用过一次的存储器位置不久后将引用附近的位置)

具有步长为K的引用模式的程序,K越小空间局部性越好。

重复引用同一个变量的程序有良好的时间局部性。

20145317《信息安全系统设计基础》第7周学习总结1