当前位置: 首页 > news >正文

存储系统概述

一:层次化存储结构
↓ CPU:最快,容量小,成本高
↓ cache:按内容存取
↓ 主存(内存):随机存储器RAM,只读存储器ROM
↓ 辅存(外存):硬盘,光盘,u盘
速度慢
容量大

局部性原理是层次化存储结构的支撑
时间局部性:刚被方问的内容,立即又被方问
空间局部性:刚被方问的内容,临近的空间很快被访问

分类:
1.存储器位置:
内存 & 外存
2.存取方式
按内容存取:相联存储器(如cache)

按地址存: 随机存储器(如内存)
顺序存取存储器(如磁带)
直接存取存储器(如磁盘)

工作方式:
随机存取存储器RAM(如内存DRAM),内容掉电会丢失
只读存储器:内容不会丢失。如BIOS

eg:CPU方问存储器时,被访问数据一般聚集在一个较小的连续存储区域中,若一个存储单元已被访问,则其邻近的存储单元还有可能被访问该特性被称为:
A:数据局部性
B:指令局部性
C:空间局部性
D:时间局部性(√)

eg:虚拟存储器有()两级存储器构成
A:主存-辅存(√)
B:寄存器-cache
C:寄存器-主存
D:cache-主存
三级存储结构:cache --主存 --外存

eg:在微机系统中,BIOS保存在?
A:主板中的ROM(√)
B:CPU的寄存器
C:主板上的RAM
D:虚拟存储器

二:cache
在计算机的存储系统体系中,cache是访问速度最快的层次(若有寄存器,则寄存器最快)
使用cache改善系统性能的依据是程序的局部性原理
时间局部性:用到的数据,后面频繁用
空间局部性:用到的地址,相邻的地址频繁使用

cache概念
如果 h 代表cache的访问命中率,t1表示cache的周期时间,t2表示主存储器周期时间,以读操作为例,使用cache+主存储器的系统的平均周期为t3,则:
t3 = h *t1 +(1-h)*t2
其中,(1-h)又称为失效率(未命中率)

cache内容与主存的关系
直接相联映像:硬件电路简单,但冲突率很高
全相联映像:电路难于设计和实现,只适用于小容量的cache,冲突率较低
组相联映像:直接相联与全相联的折中
注:主存和cache直接的地址映射由硬件直接完成
eg:以下关于cache的叙述中,不正确的是?
A:cache的设置扩大了主存的容量(√)
B:cache的内容三十主存部分内容的拷贝
C:cache的命中率并不随其内容增大线性的提高
D:cache位于主存和cpu之间。

eg:在程序执行过程中,高速缓存在主存间的地址映射由?
A:操作系统进行管理
B:存储软件进行管理
C:程序员自行安排
D:硬件自动完成(√)

eg:主存与cache的地址映射方式中,(A)方式可以实现主存任意一块装入cache中任意位置,只有装满才需要被替换。
A:全相联(√)
B:直接映射
C:组相联
D:串并联

三:主存编址计算
主存–编址
存储单元:存储单元个数 = 最大地址-最小地址 +1

编址内容:
按字编址:存储体的存储单元是字符单元,即最小寻址单位是一个字
按字节编址:存储体的存储单元是字节存储单元,即最小寻址单位是一个字节。

总容量 = 存储单元个数 * 编址内容

根据存储器所要求的容量和选定的存储芯片的容量,就可以计算出所需芯片的总数,即:
总片数 = 总容量 / 每片容量。
eg:内存按字节编址,地址从A0000H到CFFFFH的内存,共有()字节,若用存储容量位64k x 8bit的存储器芯片构成该内存空间,至少需要多少片?
CFFFF+1 = D0000;
D0000-A0000=30000 = 3164B;//因为内存按字节编址 所以单位是字节
3
216B / 210 =192KB;
192KB / 64K x 8bit = 3; //8bit = 1B
即 192KB /64 KB = 3;


http://www.mrgr.cn/news/33536.html

相关文章:

  • 外星人入侵
  • 【MySQL】explain之type类型
  • idea的mapper.xml文件里写sql语句出现Tag name expected错误提示
  • 探索Copier:Python项目模板的革命者
  • thinkphp自定义命令行+宝塔面板Shell脚本实现定时任务
  • 新标准大学英语综合教程1课后习题答案PDF第三版
  • 【动态库的加载】【进程地址空间(三)】
  • 828华为云征文 | 使用Flexus X实例搭建Dubbo-Admin服务
  • 如何让程序等待输入
  • Redis数据结构之zset
  • 20240922 每日AI必读资讯
  • Jboss 低版本JMX Console未授权
  • Spring框架总体结构
  • Arthas heapdump(dump java heap, 类似 jmap 命令的 heap dump 功能)
  • Windows 配置docker和ubuntu系统
  • C++ boost——时间与日期
  • 揭秘提升工作效率的五大编程工具秘籍
  • 植物大战僵尸【源代码分享+核心思路讲解】
  • 策略模式在 Spring Boot 框架中的应用
  • 蜗牛兼职网设计与Spring Boot应用
  • 轻掺杂漏极(LDD)技术
  • 使用image watch查看图片像素值
  • KamaCoder 103. 水流问题
  • 【MySQL】库的操作
  • 联合体的用法和用联合体判断大小端存储
  • 【排序算法】插入排序_直接插入排序、希尔排序