《存储系统》
- 两级存储
- Cache - 主存
- 主存 - 辅存(虚拟存储体系)
- 局部性原理
- 时间局部性原理: 在相邻的时间里会范围同一个数据项
- 空间局部性原理: 在相邻的空间地址会被连续访问
- 计算机存储体系
- 从上到下,速度越来越慢,容量越来越大,价格越来越低
- 寄存器:32比特 / 64比特
- Cache:3兆(1MB = 1024GB)
- 主存储器:8GB
- 外设:500G / TB
《Cache存储》
- 命中(控制部分):判断CPU要访问的数据在Cache中
- 高速存储Cache:存储当前最活跃的程序和数据,直接与CPU交互,位于CPU和主存之间
- Cache:由控制部分和存储器组成
- 地址映像:主存地址转换为Cache存储器地址
- 由硬件自动完成映射
- 按照Cache地址映像的块冲突概率,从高到低排列的是:直接映像 > 组组相联映像 > 全相连映像
- 直接映像:块号相同才能命中
- 全相联映像: 主存中任意一块都与Cache中任意一块对应,因此可以随意调入Cache任意位置;
a. 速度慢,不易造成空间浪费;
b. 最不容易发生块冲突的映像方式
- 组组相连映像
- Cache的替换算法
- (目标)使Cache获得尽可能高的命中率
- 近期最少使用算法
- 根据局部性原理
- Cache的命中率和平均时间
- 平均时间:实质上存在漏洞,前者无误,后者实际上需加上访问Cache的时间后才访问内存
- 容量越大,命中率越高
- 存储器芯片存储地址段
- 位 = 比特 = bit = b,在计算机中代表同一种东西
- 1字节 = 1byte = 1B = 8位
- 1KB = 1024B = 2^10B
- 1MB = 1024KB
- 1GB = 1024MB
- 1TB = 1024GB
- 1PB = 1024TB
《磁盘调度算法》
- 磁盘数据的读取时间 = 寻道时间 + 旋转时间
- 寻道时间耗时最长 ——> 重点调度
- 周期为33ms,平均读取一个为33 / 11 = 3ms
- 单缓冲区:磁头在R0,读取R0(3ms)中,磁头已在在R1,需等待旋转一圈后磁头返回到R0,再进行处理;以此类推;R0后总需等待10个
- 即 (R0的读取和处理时间)(R1)(R2)(R3)… ——> 等待过程中需对其他进行读取(3ms * 一周期10个)
- (3 + 3)+ (10 * 3 + 3 + 3 )+(10 * 3 + 3 + 3 )+…
- = 6 +36 * 10 = 366
- 优化分布:两个R间隔一个存放,刚好错过需要等待的6ms,可直接读取,即 6 * 11
- 最短移臂调度算法
- 寻找离当前柱面最近的柱面 ——> 最近扇区号
- 21号柱面,23号最近:2,3,8
- 23号柱面,17号最近:1,5,7