一、存储器的分类
1.【按存储介质分类】半导体存储器(U盘、内存)、磁存储器(磁盘、磁带)
2.【按存取方式分类】随机存储器(RAM)、串行存储器、只读存储器(ROM)
二、存储器的层次结构
三、局部性原理
CPU存取指令/数据都在一个较小的区域内完成(将程序经常访问的内存置换到缓存内)
四、主存储器和辅助存储器
1.RAM
RAM通过电容存储数据,切断电源后数据将丢失
32位系统所能寻址的最大内存为232 = 4096MB = 4GB
64位系统所能寻址的最大内存为264 = 16777216TB = 4EB
2.磁盘
①【先来先服务算法】按顺序访问进程的磁道读写需求
②【最短寻道时间优先算法】优先访问离磁头最近的磁道
③【扫描算法】每次只往一个方向移动,到达一个方向需要服务的尽头再反方向移动
④【循环扫描算法】基于扫描算法,从当前位置起,往最近的需求方向移动(双向)
五、高速缓存
1.字与子块
【字】一个存储单元的二进制代码组合
【字块】被看作一个单元的一组字
假设一个字有32位,一个子块有B个字,主存共有M个子块;字的地址包含两部分,前m位指定子块的地址,后b位指定字在字块中地址,有以下结论:
M = 2m
B = 2b
主存总字数 = B * M
主存总容量 = B * M * 32(bits)
2.命中率
命中率是衡量高速缓存性能的重要指标,它表示每次从高速缓存中获得数据的成功率
3.高速缓存的替换策略
①【先进先出算法FIFO】把高速缓存看成一个队列,优先替换最先进入队列的字块
②【最不经常使用算法LFU】记录字块的使用频率,优先淘汰最不经常使用的字块
③【最近最少使用算法LRU】优先淘汰一段时间内没有使用的字块,把当前访问节点置于链表前面