2019-2020-1 20175313 《信息安全系统设计基础》第五周学习总结

一、教材学习内容总结

存储技术

随机访问存储器

  1. 静态RAM(SRAM):SRAM将每个位存储在一个双稳态的存储器单元里。
  2. 动态RAM(DRAM):DRAM将每个位存储为对一个电容的充电。
  • SRAM比DRAM速度快,但同时花费高。DRAM与SRAM存储器特性图如下:

  • 传统DRAM:分为d个超单元,被组织成一个r行c列的长方形阵列,即d=r·c,每个超单元由w个DRAM单元组成。一个d*w的DRAM总共存储了dw位信息。
  • 读取一个DRAM超单元内容的过程:

    1. 内存控制器发送行地址x
    2. DRAM响应,将行地址x的整个内容都复制到一个内部行缓冲区
    3. 内部存储器发送列地址y
    4. 从行缓冲区复制超单元(x,y)中的8位,并把他们发送到内存控制器。
  • 设计者将DRAM组织成二维阵列:

    • 目的:降低引脚数量
    • 缺点:必须分两布发送地址,增加了访问时间。
  • 访问主存:

    • 读事务:从主存传送数据到CPU
    • 写事务:从CPU传送数据到主存

磁盘存储

  • 磁盘构造:

    1. 磁盘由盘片构成,每个盘片有两面或称为表面。
    2. 每个表面由一组称为磁道的同心圆组成。
    3. 每个磁道被划分为一组扇区。
    4. 每个扇区包含相等数量的数据位。
  • 磁盘容量:

  • 磁盘以扇区大小的块来读写数据

    1. 对扇区的访问时间主要有三个部分:寻道时间、旋转时间和传送时间。
    2. 访问一个磁盘扇区的时间主要是寻道时间和旋转延迟。
    3. 寻道时间乘2是估计磁盘访问时间的简单而合理的方法。

局部性

  • 时间局部性:被引用过一次的内存位置很可能在不远的将来==再被多次引用==。
  • 空间局部性:一个内存位置被引用了一次,程序很可能在不远的将来==引用附近的一个内存位置==。

    • 重复引用相同变量的程序具有良好的时间局部性。
    • 对于具有步长位k的引用模式的程序,步长越小,空间局部性越好,具有步长为1的引用模式的程序有很好的空间局部性。在内存中以大步长跳来跳去的程序空间局部性会很差。
    • 对于取指令来说,循环有好的时间和空间局部性。循环体越小,循环迭代次数越多,局部性越好。

存储器层次结构

  • 存储结构的本质:每一层存储设备都是较低一层的缓存。
  • 缓存命中:当程序需要第k+1层的某个数据对象d时,它首先在当前存储的第k层的一个块中查找d。如果d刚好缓存在第k层中,那么就是我们所说的缓存命中。
  • 缓存不命中:

    • 冷缓存:第k层的缓存是空的。
    • 冲突不命中
    • 容量不命中

高速缓存存储器

通用的高速缓存存储器组织结构

  • 高速缓存的结构可以用元组(S,E,B,m)来描述。高速缓存的大小(或容量)C指的是所有块的大小的和。标记位和有效位不包括在内。因此,C=SXEXB。

    直接映射高速缓存

    每个组只有一行的高速缓存称为直接映射高速缓存。
    • 组选择
    • 行匹配
    • 字抽取
  • 注意:

    • 标记位和索引位唯一的标识了每个块;
    • 多个块会映射到同一个高速缓存组;
    • 映射到同一组的块由标记位唯一的标识。

二、教材学习中的问题和解决过程

  • 问题:对教材420页上的练习题6.7进行验证时,在Linux下编译,显示段错误。运行截图如下:

  • 解决方法:百度“段错误”查询错误原因,发现是自己设置的数组太大,导致访问的内存超出了系统给这个程序所设定的内存空间。
  • 运行结果如图:


三、心得体会

本周学习内容较为简单,但是总结起来比较繁琐,以前做总结的时候自己总是愿意画思维导图,但是画思维导图其实很费时间,自己花一遍思维导图的时候,够我对其中的内容进行复习两遍了,所以这次的学习总结,我选择在别人的总结上加上自己的体会。

四、学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第四周 289/1005 1/36 14/54
  • 计划学习时间:10小时

  • 实际学习时间:14小时

五、参考资料

  • 存储器结构层次(一)——存储技术
  • 存储器结构层次(二)——局部性
  • 存储器结构层次(三)——存储器层次结构
  • 存储器结构层次(四)——高速缓存存储器
  • 《深入理解计算机系统》

猜你喜欢

转载自www.cnblogs.com/xiannvyeye/p/11749643.html