2017-2018-1 20155314 《信息安全系统设计基础》第13周学习总结

2017-2018-1 20155314 《信息安全系统设计基础》第13周学习总结

学习目标

找出全书你认为最重要的一章,深入重新学习一下,要求(期末占10分):

  • 完成这一章所有习题
  • 详细总结本章要点
  • 给你的结对学习搭档讲解你的总结并获取反馈

第6章学习要点:

  • 了解常见的存储技术(RAM、ROM、磁盘、固态硬盘等)
  • 理解局部性原理
  • 理解缓存思想
  • 理解局部性原理和缓存思想在存储层次结构中的应用
  • 高速缓存的原理和应用

本章要点详细总结

第6章 存储器层次结构

6.1 存储技术

6.1.1 随机访问存储器
  1. 随机访问存储器(RAM)(易失性存储器)

    • 静态RAM(SRAM)
    • 动态RAM(DRAM)
    • 传统的DRAM
    • 内存模块(MM)
    • 增强的DRAM
      • 快页模式DRAM(FPM DRAM)
      • 扩展数据输出DRAM(EDO DRAM)
      • 同步DRAM(SDRAM)
      • 双倍数据速率同步DRAM(DDR SDRAM)
      • 视频RAM(VRAM)
  2. 只读存储器(ROM)(非易失性存储器)
    • 可编程ROM(PROM)
    • 可擦写可编程ROM(EPROM)
    • 电子可擦除PROM(EEPROM)
    • 闪存(FLASH)
    • 固态硬盘(SSD)
  3. 访问主存

6.1.2 磁盘存储
  1. 磁盘构造

  2. 磁盘容量
    • 记录密度(recording density)(位/英寸)
    • 磁道密度(track density)(道/英寸)
    • 面密度(areal density)(位/平方英寸)

    计算公式:

  3. 磁盘操作

    • 寻道时间
    • 旋转时间
    • 传送时间
  4. 逻辑磁盘块
  5. 连接I/O设备

    连接到总线的设备:

    • 通用串行总线(USB)
    • 图形卡(或适配器)
    • 主机总线适配器
    • 其他设备(如网络适配器)
  6. 访问磁盘

    6.1.3 固态硬盘

    6.1.4 存储技术趋势
    • 不同的存储技术有不同的价格和性能折中
    • 不同存储技术的价格和性能属性以截然不同的速率变化着

6.2 局部性

  • 局部性原理
  • 两种不同的形式:
    • 时间局部性
    • 空间局部性
  • 有良好局部性的程序比局部性差的程序运行得更快
6.2.1 对程序数据引用的局部性
  • 随着步长的增加,空间局部性下降
6.2.2 取指令的局部性
6.2.3 局部性小结
  • 重复引用相同变量的程序有良好的时间局部性
  • 对于:
    • 具有步长为k的引用模式的程序,步长越小,空间局部性越好
    • 具有步长为1的引用模式的程序有良好的空间局部性
    • 在内存中以大步长跳来跳去的程序的空间局部性会很差
  • 对于取指令来说,循环有好的时间和空间局部性。循环体越小,循环迭代次数越多,局部性越好

6.3 存储器层次结构

  • 存储技术
  • 计算机软件
  • 典型的存储器层次结构

6.3.1 存储器层次结构中的缓存
  • 缓存命中
  • 缓存不命中
  • 缓存不命中的种类
  • 缓存管理
6.3.2 存储器层次结构概念小结
  • 利用时间局部性
  • 利用空间局部性

6.4 高速缓存存储器

6.4.1 通用的高速缓存存储器组织结构
6.4.2 直接映射高速缓存
6.4.3 组相联高速缓存
6.4.4 全相联高速缓存
6.4.5 有关写的问题
6.4.6 一个真实的高速缓存层次结构的解剖
6.4.7 高速缓存参数的性能影响

6.5 编写高速缓存友好的代码

6.6 综合:高速缓存对程序性能的影响

6.6.1 存储器山

6.6.2 重新排列循环以提高空间局部性
6.6.3 在程序中利用局部性

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

RAM有SRAM和DRAM,特点和应用;

ROM有PROM,EPROM,E2PROM,FLASH;

磁盘是重点,涉及到后面的i/o和文件系统,做好相关练习

磁盘结构:盘片、磁道、扇区、间隙、柱面;磁盘驱动器

磁盘容量

访问时间:寻道、旋转、传送

逻辑磁盘块:这个很重要,内存可以看成字节数组、磁盘可以看成块数组

总线

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

系统总线、存储总线、I/O总线:p395图要理解

读写事务:P389图要能理解

6.2 节

局部性原理:时间局部性、空间局部性,有能力者理解一下p429最后一段“存储器山”

数据引用局部性

取指令局部性

6.3 节

存储层次结构:系统观(1+1>2)(举一反三:对称不对称加密形成的混合加密系统,混合动力汽车...)

中心思想:每层存储设备都是下一层的“缓存”

对照p408的表理解

6.4节

高速缓存结构(S,E,B,m):高速缓存组、高速缓存行、块

映射

命中

缓存管理

本章考试错题总结(CH06)

  1. 有关高速缓存的说法正确的是()

    A. 高速缓存的容量可以用C=SEB来计算

    B. 高速缓存容量为2048,高速缓存结构为( 32 ,8,8,32)

    C. 直接映射高速缓存要:组选择、行匹配、字抽取

    D. 当程序访问大小为2的幂的数组时,直接映射高带缓存中常发生冲突不命中

    【错选】A B C

    【答案】A C D

  2. The following table gives the parameters for a number of di erent caches. For each cache, determine the number of cache sets (S), tag bits (t), set index bits (s), and block o set bits (b)

    A. 第三行S为1

    B. 第一行t为24

    C. 第二行b为5

    D. 第三行s的值为0

    【错选】A D

    【答案】A C D

    【解析】p427

  3. 下面说法正确的是()

    A. CPU通过内存映射I/O向I/O设备发命令

    B. DMA传送不需要CPU的干涉

    C. SSD是一种基于闪存或Flash的存储技术

    D. 逻辑磁盘块的逻辑块号可以翻译成一个(盘面,磁道,扇区 )三元组。

    【错选】B C D

    【答案】A B C D

    【解析】p413 411

  4. 有关磁盘操作,说法正确的是()

    A. 对磁盘扇区的访问时间包括三个部分中,传送时间最小。

    B. 磁盘以字节为单位读写数据

    C. 磁盘以扇区为单位读写数据

    D. 读写头总处于同一柱面

    【错选】A C D

    【答案】A C

    【解析】p409

上周考试错题总结

实验测试

  1. 实验4,Linux中通过把设备抽象成文件来简化操作的,我们可以用open/read/write/close来像访问文件一样访问设备, 这里需要一个结构提供设备驱动程序接口,这个结构是()

    A. struct file

    B. struct inode

    C. struct file_operations

    D. struct UTMP

    【错选】B

    【答案】C

    【解析】在系统内部,I/O设备的存取操作通过特定的入口点来进行,而这组特定的入口点恰恰是由设备驱动程序提供的。通常这组设备驱动程序接口是由结构file_operations结构体向系统说明的,它定义在include/linux/fs.h中

  2. 实验1中使用mount命令时,会涉及到()的修改。

    A. /etc/fstab

    B. /etc/hosts

    C. /etc/passwd

    D. /etc/exports

    【错选】B

    【答案】D

    【解析】nfs服务器的配置,配置文件/etc/exports:

    ro 该主机对该共享目录有只读权限

    rw 该主机对该共享目录有读写权限

    root_squash 客户机用root用户访问该共享文件夹时,将root用户映射成匿名用户

    no_root_squash 客户机用root访问该共享文件夹时,不映射root用户

    all_squash 客户机上的任何用户访问该共享目录时都映射成匿名用户

    anonuid 将客户机上的用户映射成指定的本地用户ID的用户

    anongid 将客户机上的用户映射成属于指定的本地用户组ID

    sync 资料同步写入到内存与硬盘中

    async 资料会先暂存于内存中,而非直接写入硬盘

    insecure 允许从这台机器过来的非授权访问

  3. 实验1中需要交叉编译,因为程序要在ARM实验箱的Linux中执行,交叉编译是在ARM实验箱中完成的,hello程序也是在ARM实验箱中执行的。

    A. 正确

    B. 错误

    【错选】A

    【答案】B

    【解析】交叉编译在UBuntu虚拟机中完成,执行是在ARM实验箱的Linux中完成。

  4. 实验1:mount -t nfs -o nolock 192.168.0.56:/root/share /host,其中的IP是()的IP

    A. Windows 宿主机

    B. Ubuntu虚拟机

    C. ARM实验箱

    D. 以上都不对

    【错选】A

    【答案】B

    【解析】嵌入式开发中,通过nfs系统把Ubuntu虚拟机的一个目录映射成ARM实验箱的Linux系统的一个目录进行调试是一个惯用法,程序调试没有问题了,再烧写到实验箱的Linux的系统中,这样实验箱重启了程序也可以用了。

  5. 实验1中Windows宿主机,Ubuntu虚拟机,ARM实验箱三者IP要在同一网段,操作中是根据()的IP来确定网段的。

    A. Windows 宿主机

    B. Ubuntu虚拟机

    C. ARM实验箱

    D. 以上都可以

    【错选】A

    【答案】C

    【解析】ARM实验箱的IP修改要重新烧录Linux系统,Windows 宿主机,Ubuntu虚拟机的IP比较容易修改,所以我们在超级终端中通过ifconfig查看ARM实验箱的IP,把Windows 宿主机,Ubuntu虚拟机的IP改成和ARM实验箱同一个网段。

结对学习中的问题和解决过程

学习搭档(20155323)无法打开Y86-64模拟器界面

解决方法

这是Y86-64模拟器的Makefile中配置GUI相关路径错误导致的,解决方法是将两个GUI路径分别设置为TKLIBS=-L/usr/lib -ltk8.5 -ltcl8.5TKINC=-I/usr/include/tcl8.5即可,如下图:

成功打开Y86-64模拟器:

代码托管

本周结对学习情况

  • 20155323
  • 结对学习内容

    - 教材第6章 存储器层次结构

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 200/200 2/2 20/20

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。

耗时估计的公式

:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:软件工程软件的估计为什么这么难软件工程 估计方法

  • 计划学习时间:5小时
  • 实际学习时间:2小时

参考资料

时间: 2024-10-14 05:04:59

2017-2018-1 20155314 《信息安全系统设计基础》第13周学习总结的相关文章

信息安全系统设计基础第13周学习总结

知识点总结 并发编程*序 并发:逻辑控制流在时间上重叠. 应用级并发的应用: 访问慢速I/O设备 与人交互 通过推迟工作以降低延迟 服务多个网络客户端 在多核机器上进行并行计算 进程 I/O多路复用 线程 基于进程的并发编程 最简单的构造并发程序的方法是进程. 下图是基于进程的并发echo服务器: 图 几点需要说明的内容: 因为服务器会运行很长时间,所以需要一个SIGCHLD处理程序来回收僵死子进程的资源. 父子进程必须关闭它们各自的connfd拷贝,以避免存储器泄露. 因为套接字的文件表表项的

20145216 史婧瑶《信息安全系统设计基础》第一周学习总结

20145216 <信息安全系统设计基础>第一周学习总结 教材学习内容总结 Linux基础 1.ls命令 ls或ls .显示是当前目录的内容,这里“.”就是参数,表示当前目录,是缺省的可以省略.我们可以用ls -a .显示当前目录中的所有内容,包括隐藏文件和目录.其中“-a” 就是选项,改变了显示的内容.如图所示: 2.man命令 man命令可以查看帮助文档,如 man man : 若在shell中输入 man+数字+命令/函数 即可以查到相关的命令和函数:若不加数字,那man命令默认从数字较

20145311 《信息安全系统设计基础》第一周学习总结

20145311 <信息安全系统设计基础>第一周学习总结 教材学习内容总结 常用的部分命令 CTRL+SHIFT+T:新建标签页,编程时有重要应用: ALT+数字N:终端中切换到第N个标签页,编程时有重要应用: Tab:终端中命令补全,当输入某个命令的开头的一部分后,按下Tab键就可以得到提示或者帮助完成: CTRL+C:中断程序运行 Ctrl+D:键盘输入结束或退出终端 Ctrl+S: 暂定当前程序,暂停后按下任意键恢复运行 Ctrl+A: 将光标移至输入行头,相当于Home键 Ctrl+E

20145216史婧瑶《信息安全系统设计基础》第九周学习总结

20145216史婧瑶<信息安全系统设计基础>第九周学习总结 教材内容总结 第十章 系统级I/O 输入/输出(I/O)是在主存和外部设备之间拷贝数据的过程. 第一节 Unix I/O 这一节涉及到操作系统的基本抽象之一--文件.也就是说,所有的I/O设备都被模型化为文件,而所有的输入输出都被当做对相应文件的读/写.相关的执行动作如下: 1.打开文件: 应用程序向内核发出请求→要求内核打开相应的文件→内核返回文件描述符 文件描述符:一个小的非负整数,用来在后续对此文件的所有操作中标识这个文件.有

20145311 《信息安全系统设计基础》第二周学习总结

20145311 <信息安全系统设计基础>第二周学习总结 教材学习内容总结 重新学习了一下上周的一部分命令:grep main wyx.c(grep的全文检索功能)ls > ls.txt :ls内容输出到文本find pathname -mtime -n/+nfind -size -n/+n (find的功能还是比较强大) 简单地学习了一下vim编辑器,跟着vimtutor简单地学了一些,在linux bash中使用vim能够极大地提高效率, vim的用法比较多,只学习了其中简单的一部分

20145339《信息安全系统设计基础》第一周学习总结

20145339顿珠达杰<信息安全系统设计基础>第一周学习总结 ◆ Linux是一个操作系统.如果使用GUI,Linux和Windows没有什么区别.Linux学习应用的一个特点是通过命令行进行使用. 物理机系统上可以通过使用[Ctrl]+[Alt]+[F1]-[F6]进行终端和图形界面切换,在线实验环境中按下[Ctrl]+[Alt]+[F7]来完成切换.普通意义上的 Shell 就是可以接受用户输入命令的程序,Unix/Linux 操作系统下的 Shell 既是用户交互的界面,也是控制系统的

2017-2018-1 20155228 《信息安全系统设计基础》第九周学习总结

2017-2018-1 20155228 <信息安全系统设计基础>第九周学习总结 教材学习内容总结 常见的存储技术 RAM 随机访问存储器(Random-Access Memory, RAM)分为两类:静态的和动态的.静态 RAM(SRAM)比动态RAM(DRAM)更快,但也贵得多.SRAM用来作为高速缓存存储 器,既可以在CPU芯片上,也可以在片下.DRAM用来作为主存以及图形系统的帧缓冲 区.典型地,一个桌面系统的SRAM不会超过几兆字节,但是DRAM却有几百或几千兆 字节. SRAM将每

2017-2018-1 20155332 《信息安全系统设计基础》第九周学习总结

2017-2018-1 20155332 <信息安全系统设计基础>第九周学习总结 教材学习内容总结 简单模型中,存储器是一个线性的字节数组.真实模型中,是一个具有不同容量,成本,访问时间的存储层次结构(存储器山) 程序的局部性很重要,对程序性能有很重要的影响. 计算机系统一个基本而持久的思想,如果你理解了系统是如何将数据在存储器层级结构中上下移动,你就可以编写程序,让数据存储在层次结构中较高的地方,从而CPU可以更快的访问到他们. 编写程序实现功能是最简单的,如何让编写的程序拥有最高的性能,例

2017-2018-1 20155227 《信息安全系统设计基础》第九周学习总结

2017-2018-1 20155227 <信息安全系统设计基础>第九周学习总结 教材学习内容总结 第六章 随机访问存储器 随机访问存储器分为:静态RAM(SRAM)和动态RAM(DRAM),静态RAM(SRAM)比动态RAM(DRAM)更快,但也贵很多. (1)静态RAM SRAM将每个位存储在一个双稳态的存储器单元里,每个单元是用一个六晶体管电路来实现的. 属性:它可以无限制地保持在两个不同的电压配置或状态之一.其他任何状态都是不稳定的. 特点:由于SRAM的双稳态特性,只要有电,它就会永

2017-2018-1 20155334 《信息安全系统设计基础》第九周学习总结

2017-2018-1 20155334 <信息安全系统设计基础>第九周学习总结 学习目标: 了解常见的存储技术(RAM.ROM.磁盘.固态硬盘等) 理解局部性原理 理解缓存思想 理解局部性原理和缓存思想在存储层次结构中的应用 高速缓存的原理和应用 教材学习内容总结 一.常见的存储技术: 基本的存储技术包括随机存储器(RAM).非易失性存储器(ROM)和磁盘. 1. RAM分静态RAM(SRAM)和动态RAM(DRAM). 2. SRAM快些,主要用做CPU芯片上的高速缓存,也可以用作芯片下的