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

计算机组成原理_存储系统结构

计算机组成原理总目录

存储系统结构

1. 存储系统的层次结构

存储系统的层次化结构图如下:
在这里插入图片描述

除此之外,存储系统的层次结构还可以分为以下两个层次

  • 【Cache——主存】:用于解决主存与CPU不匹配的问题,由硬件自动完成数据交互,对所有程序员透明
  • 【主存——辅存】:用于解决存储数据的容量问题,由硬件和操作系统协调完成数据交互,对应用程序员透明(非系统程序员)
    在这里插入图片描述

透明:指无需了解其工作的详细过程,只需关注其结论或结果即可
就像我们平时使用计算器,我们只需要输入公式即可由计算器得出结果,而不需要去了解其计算器内部的设计、原理、器件等详细信息

存储系统的物理结构
在这里插入图片描述

2. 存储系统各层次介绍

2.1 辅存

介绍:辅存也可称之为外部存储器(外存),也是我们平时口语所讲的磁盘
此类存储器断电后仍能保存数据,常见的外存有硬盘、光盘、U盘等。现在电脑常用的SSD固态硬盘,机械硬盘等等就是外部存储器。
CPU如果想访问外存中的数据,必须先把外存的数据保存到主存中,CPU再去读取主存中的数据。

特点:存储容量大、成本低、存取速度慢、可脱机(断电)永久性存储数据

作用:用于解决存储数据的容量问题

分类:辅存包括多种类型的存储器

  1. 磁带存储器:也就是我们很久之前所使用的磁带,常用来播放音乐,后逐步被MP3以及手机替代。
    在这里插入图片描述
  2. 软磁盘存储器:我也没见过,顺便提一下
    在这里插入图片描述
  3. 光盘存储器:过去常用来播放音视频,看一些电影或者打游戏,比较老式的主机电脑上也有读取光盘的地方,但如今也逐步被淘汰掉了
    在这里插入图片描述
  4. 磁表面存储器:也是如今最为主流的辅存存储器,磁盘的详细工作原理将在I/O系统中会有详细学习
    在这里插入图片描述

2.2 主存

介绍:主存也就是我们口语经常说的内存/内存条,我们常称其内存大小为运行内存
主存是CPU能直接寻址访问的存储空间。在计算机工作的时候,所有的数据都要先经过内存,然后才能交由处理器CPU去处理

特点:主存储器一般采用半导体存储器,与辅助存储器相比有容量小、读写速度快、价格高等特点,具有易失性(断电后数据消失)

作用:存放指令*和数据

  • 例如电脑开机的时候,就会从辅存中读取操作系统到主存中运行。
  • 再例如当我们打开QQ,操作系统就会从辅存中将QQ相关程序所需要的数据读取到主存中运行

分类:主存可分为只读存储器【ROM】和随机存储器【RAM】两大类

  1. ROM(Read Only Memory)是只读存储器,出厂时其内容由厂家用掩膜技术写好,只可读出,但无法改写。信息已固化在存储器中,一般用于存放系统程序BIOS和用于微程序控制。

(1)PROM是可编程ROM,只能进行一次写入操作(与ROM相同),但是可以在出厂后,由用户使用特殊电子设备进行写入。
(2)EPROM是可擦除的PROM,可以读出,也可以写入。但是在一次写操作之前必须用紫外线照射,以擦除所有信息,然后再用EPROM编程器写入,可以写多次。
(3)EEPROM是电可擦除PROM,与EPROM相似,可以读出也可写入,而且在写操作之前,不需要把以前内容先擦去,能够直接对寻址的字节或块进行修改。
(4)闪速存储器(Flash Memory),其特性介于EPROM与EEPROM之间。闪速存储器也可使用电信号进行快速删除操作,速度远快于EEPROM。但不能进行字节级别的删除操作,其集成度高于EEPROM。

  1. RAM(Random Access Memory)是随机存储器,是构成内存的主要部分,其内容可以根据需要随时按地址读出或写入,以某种电触发器的状态存储,断电后信息无法保存,用于暂存数据(易失性),又可分为DRAM和SRAM两种,一般电脑的主存常用DRAM
    在这里插入图片描述

2.3 Cache

介绍:也称之为高速缓存器,通常由SRAM(Static Random Access Memory 静态存储器)构成
Cache又分为L1Cache(一级缓存)和L2Cache(二级缓存),L1Cache主要是集成在CPU内部,而L2Cache集成在主板上或是CPU上,而如今二级缓存通常都集成在CPU内

特点:比主存存储器的价格更高,容量更小,速度更快,同样具有易失性(断电数据消失)

作用:解决CPU与主存之间速度不匹配的问题

  • 因为CPU工作的速度比RAM的读写速度快,所以CPU读写主存时需要花费时间等待,这样就使CPU的工作速度下降。
    于是为了提高CPU读写程序和数据的速度,于是就在主存和CPU之间增加了高速缓存部件Cache。

疑问: 因为Cache和主存都说过由SRAM构成,那么Cache也算作是主存吗?
答:SRAM组成的存储器既可以是主存,也可以是Cache,但区别在于你用它做什么

  • 如果它的作用是为了解决CPU与主存之间速度不匹配的问题,那么它就属于Cache
  • 如果它的作用仅仅是用来存放指令和数据,那么它就属于主存

相关文章:

  • 3D建模|手绘角色模型和手绘场景模型有什么区别?
  • 中成药数据图谱可视化与知识问答平台研究
  • Eclipse配置作者信息
  • Arrays.asList和ArrayList.subList
  • MySQL架构优化
  • python从入门到实践:软件开发目录规范
  • vue3新拟态组件库开发流程——loading组件源码
  • JS中新逻辑赋值运算符使用(?.、? ?、| |=、=)
  • 软考网络工程师需要哪些复习资料?
  • CIPT备考心得分享-下一个考过的就是你
  • 构建集团统一管控体系,低代码派上用场
  • iconfont 使用
  • 4.类的定义,变量类型,方法类型
  • pytorch中一些有关tensor的操作
  • 大数的乘法
  • 【React系列】如何构建React应用程序
  • LeetCode541. Reverse String II -- 按步长反转字符串
  • miaov-React 最佳入门
  • MobX
  • Phpstorm怎样批量删除空行?
  • seaborn 安装成功 + ImportError: DLL load failed: 找不到指定的模块 问题解决
  • vue从入门到进阶:计算属性computed与侦听器watch(三)
  • webgl (原生)基础入门指南【一】
  • 笨办法学C 练习34:动态数组
  • 简单基于spring的redis配置(单机和集群模式)
  • 聊聊springcloud的EurekaClientAutoConfiguration
  • 前端学习笔记之原型——一张图说明`prototype`和`__proto__`的区别
  • 如何将自己的网站分享到QQ空间,微信,微博等等
  • 如何进阶一名有竞争力的程序员?
  • 问题之ssh中Host key verification failed的解决
  • 最近的计划
  • CMake 入门1/5:基于阿里云 ECS搭建体验环境
  • 阿里云服务器如何修改远程端口?
  • 摩拜创始人胡玮炜也彻底离开了,共享单车行业还有未来吗? ...
  • ###C语言程序设计-----C语言学习(6)#
  • #{}和${}的区别是什么 -- java面试
  • #宝哥教你#查看jquery绑定的事件函数
  • $ git push -u origin master 推送到远程库出错
  • (17)Hive ——MR任务的map与reduce个数由什么决定?
  • (Mac上)使用Python进行matplotlib 画图时,中文显示不出来
  • (分布式缓存)Redis持久化
  • (附源码)ssm捐赠救助系统 毕业设计 060945
  • (七)微服务分布式云架构spring cloud - common-service 项目构建过程
  • (三分钟了解debug)SLAM研究方向-Debug总结
  • (推荐)叮当——中文语音对话机器人
  • (一)C语言之入门:使用Visual Studio Community 2022运行hello world
  • .net core 3.0 linux,.NET Core 3.0 的新增功能
  • .net core 6 集成和使用 mongodb
  • .net 生成二级域名
  • .NET/C# 反射的的性能数据,以及高性能开发建议(反射获取 Attribute 和反射调用方法)
  • .NET的微型Web框架 Nancy
  • .secret勒索病毒数据恢复|金蝶、用友、管家婆、OA、速达、ERP等软件数据库恢复
  • [ 第一章] JavaScript 简史
  • []FET-430SIM508 研究日志 11.3.31
  • [C#]winform部署yolov9的onnx模型