一、层次化存储结构
速度由慢到快
外存(辅存)(硬盘、光盘、U盘) ---> 内存(主存) ---> cache(按内容存取) ----> CPU(寄存器)
按内容存取的方式 又叫 相联处理器。
Cache的功能:提高CPU输出输入的速率。
问:如果以h代表对Cache的访问命中率,t1表示Cache的周期时间,t2表示主存储器周期时间,以读操作为例,使用“Cache+主存储器”的系统平均周期为t3,则
T3 = h*t1 + (1-h)*t2
其中,(1-h)又称为失效率(未命中率)。
解析:如果t1代表cache的周期为1ns,t2表示主存器周期为1ms,如果分开算则需要那么长时间。
如果h命中率是百分之95,那么t3 = 1ns * 95% + (1-95%) * 1000ns = 0.95 + 50 = 50.95ns
局部性原理
时间局限性 和 空间局限性
在某一时间集中访问 或者 在某一空间集中访问
主存分为 随机存取存储器 和 只读存储器。
内存就是随机存取存储器,特点是掉电后不可以存储相应信息,只读存储器则在掉电后仍然可以存储相应信息。
随机存取存储器:
DRAM 动态dynamic ram和 SRAM static 静态ram。
只读存储器:
MROM Mask rom掩模式ROM
PROM,EROM,闪速存储器
三、磁盘结构与参数
磁盘读取一次数据要消耗哪些时间,有哪些动作?
现在不是SSD硬盘都属于磁盘。
磁头则是专门读取数据,磁盘则是保存数据。
读取信息的时候,磁头挪到相应磁道上面,吧磁头挪到磁道上需要消耗时间,这称呼 寻道时间。
一个磁道上面每小段就是扇区,一个扇区移到另一个扇区,这叫 等待时间(旋转转动延迟)。
存取时间 = 寻道时间 + 等待时间。
就可以计算出存储一个磁盘需要多长时间。
33ms意味着什么呢,11个33毫秒,意味着每个消耗3ms。
单缓冲区意味着什么呢,把R0读到缓冲区后,磁头到R1位子,这时候新的R1进不来,磁盘会继续往前转动,因为磁盘一转动就匀速旋转,等缓冲区把R0用3ms处理完,但这时候磁头不在R1处,所以磁头转动一周,继续到R1:
这时候就是 33+3到了R1处
由此可见R0到R9 一共10个, (33+3)*10,则是每个扇区物理块的耗时。
最后一个R10把他在缓冲区处理完3ms,读取出来3ms。
(33+3)*10 + 6 = 366ms
优化后,根据右边的图,每间隔一个,读取一次,所以两圈就可以读完,答案是66ms。
补充上篇知识点:
流水线加速比:
TP = 不使用流水线时间 除以 使用流水线时间。
所以加速比是越高越好。