计算机组成原理第三章 11 存储器的层次结构 存储器的分类 存储器的性能指标

news2024/11/22 14:56:42

文章目录

      • 存储器的层次结构
      • 存储器的分类
        • (存储介质分类)
        • 存取方式分类
        • 读写方式分类(是否可读可写)
        • 断电后信息是否丢失
        • 信息是否被破坏
      • 存储器的性能指标

存储器的层次结构

【

其中CPU可以直接和cache和主存进行交互。辅存内的数据需要调到主存内才能被CPU访问,这很好理解,计算机中的IO操作很多,CPU速度很快,如果CPU直接和辅存交互那就会导致每个线程一旦使用IO基本就得进行等待队列被挂起等待。其中主存和cache的数据交换一般是硬件内部自动完成的,而主存和辅存的数据交换是操作系统和硬件完成的,这也很好理解,操作系统需要对底下的硬件进行管理,例如缺页中断,实施页面置换算法等等。
在这里插入图片描述
主存和cache 的数据交互是硬件自动完成的,对于所有程序员都是透明的,这很好理解,程序员根本不用管这个,内部就直接实现了算法了。

主存和辅存的交互需要硬件和操作系统共同完成,对应用程序员是透明的,这里的应用程序员应该是操作系统之上,处于用户层的程序员,对于系统程序员来说是可见的。

主存和辅存:实现了虚拟存储系统,解决了主存容量不够的情况,通过操作系统的干涉,使用页表置换算法,缺页中断的措施解决了主存容量不够的情况。

Cache的存在:解决主存和CPU速度不匹配的问题,这也很理解,cache的速度是主存的几十上百倍。

在存储系统的所有分级层次结构中,上一级的内容都是下一级内容的拷贝。即上一级是下一级的缓冲。

cache-主存
主存-副存
TLB快表-页表

计算机的存储系统由什么组成?

计算机的存储系统由CPU内部寄存器,cache,主存,外存构成。

多级存储系统的存在降低了存储成本。

cache-主存的速度接近于cache,但是价格缺和主存差不多。主存-副存的速度接近于主存,但是价格缺和副存差不多。通过多级存储系统解决了速度,容量,成本三者之间的矛盾。

存储器的分类

(存储介质分类)

   ( 1 ) (1) (1)半导体存储器
特征:以半导体器件存储信息
例如:DRAM(MOS管+栅极电容),SRAM(双稳态触发器),闪存(mos管)其中mos管和触发器都是半导体元器件。

   ( 2 ) (2) (2)磁存储器
特征:使用磁性材料存储信息
例如:机械硬盘

例如:磁带,机械硬盘
   ( 3 ) (3) (3)光存储器
特征:使用光介质存储信息
例如:光盘

存取方式分类

   ( 1 ) (1) (1)相联存储器

工作模式:根据内容检索,同时也可以做到根据地址选择内容,其根据内容选择数据的速度很快,
例如TLB快表。

   ( 3 ) (3) (3)随机存取存储器(Randmo Access memory)RAM

工作模式:根据存储地址选择内容
特征:读写任何一个存储单元需要的时间都相同,即不受存储数据位置的限制
用处:其主要用主存或者cache,主存是具有地址的,访问主存的某个存储单元的时候我们要进行寻址,使用随机存取存储器我们就可以直接访问主存某个存储单元里的数据,就不用从地址开始的地址00000一直检索到对应地址。

   ( 3 ) (3) (3)顺序存取存储器(Sequential Access Memory)SAM

工作模式:根据存储地址检索内容
特征:读写存储单元需要的时间由存储单元所在位置决定。
例如:磁带
在磁带中,读写头的位置是固定的,磁带在滚轮的带动下会进行运动,读写头会读写当前指向的磁带里的数据,所以读写头要读取的数据和数据的存储位置有关。
在这里插入图片描述

   ( 4 ) (4) (4)直接存取存储器(Direct Access Memory)DAM

工作模式:根据存储地址选择内容
特征:具有随机存取和顺序存储特性。
注:其虽然具有随机存储特性,但是其并不像普通的随机存储存储器一样随机,因为其并不是所有位置的数据都能够立马读出,而不受位置的约束。
例如:机械硬盘
在机械硬盘中,读写磁头是可以动的,所以我们可以直接将读写磁盘先放到想要读取的位置,这也是为什么直接存储存储器具有随机存取的特性,但是其放到对应位置以后还需要进行顺序的将数据读取下来,并且读写磁头大小有限,不是所有位置的数据在读取前都能先放到对应位置,所以直接存取存储器的随机读取特性是不完整的。
在这里插入图片描述

读写方式分类(是否可读可写)

   ( 1 ) (1) (1)读写存储器(Read\write Memory)
特征:可读可写
例如:cache,主存,磁盘。

   ( 2 ) (2) (2)只读存储器(Read Only Memory)ROM
特征:只能读不能写(事实上,现在的一些ROM也支持写入了)。
例如:CD唱片
特征:可以做到随机读取,有点类似随机存储存储器。
现在的主存一般由ROM和RAM组成。因为我们知道RAM存储芯片一断电就会导致数据全部丢失,但是我们开机的时候是需要将硬盘中操作系统加载到内存中,所以在主板的bios芯片(ROM)里存储了操作系统的开机程序,每次开机cpu都会固定到bios芯片读取指令,完成操系统的装载工作。因为计算机需要bios来完成开机指导工作,将操作系统装到主存,所以主板上的bios芯片在逻辑上也被看作是主存的一般分。有点类似MAR和MDR,但是其关系又比MAR和MDR更加紧密。因为在编址的时候,bios芯片也参与了主存的编址,也就是说通过寻址我们也是能够找到bios的,即ROM。
但是需要注意的是,操作系统是被加载到RAMA中的。

在这里插入图片描述

   ( 1 ) (1) (1) MROM

其通过掩模技术完成,在生产的时候根据客户的要去进行信息的写入,也就是说其也只能够在生产的时候进行一次写入,不支持反复写入,特点是可靠性高(内容不容易被人串改),灵活性差(出了生产以外即无法修改),生产周期长,只适合批量定值。(可以认为掩模技术比较复杂,所以生产周期比较高,一般只有数量比较多的时候才会进行定制,不然不划算。)
在这里插入图片描述

   ( 2 ) (2) (2)PROM

PROM我们可以将其看作就是一个普通的存储器,即我们买来的时候这个存储器里面是没有任何内容的,但是我们可以使用PROM写入器进行写入,重点是我们也只能够写入一次,只不过是由我们用户自己完成这次的写入。
在这里插入图片描述

   ( 3 ) (3) (3)EPROM

EPROM允许用户多次重写,但是其写入的时间很长,并且虽然说支持重复写入,但是实际上重复写入的次数是有限的,根据擦除的方式EPROM又分为以下两种:
在这里插入图片描述

   ( 4 ) (4) (4)FLASH memory

其特点就是可以反复重写,并且重写和擦除的速度较快,但是写的速度比读要慢。我们可以这样理解:因为在写的过程中,可能原来的空间上已经有数据了,而闪存不能直接对数据进行覆盖写入,其需要先擦除然后写入,所以说速度较慢。
并且闪存的集成度和位密度相比RAM来说要高,因为闪存的存储元只需要使用一个MOS管,而即使是DRAM也需要MOS管和栅极电容,存储元体积更小,集成度更高,在相同物理面积下,闪存可以容纳更多的存储元,所以位密度更高。
在这里插入图片描述

   ( 5 ) (5) (5)SSD

固态硬盘的存储芯片用的也是闪存芯片,事实上SSD和U盘没什么区别,只不过固态硬盘内加了控制电路,其特性是速度快,功耗低(这里的功耗我们应该理解为机械硬盘寻址非常慢,需要读写头,定位盘片,扇区等操作,其读写需要花费的时间长,所以耗能就比较高),价格高但是(这里的价格我们应该使用固态硬盘和机械硬盘进行比较),寿命相比机械硬盘要短,因为每个页的擦除次数都是有限的,机械硬盘基本上可以一直使用。ROM中写的速度一般都是比读的速度慢,因为写入可能是要先擦除的。要记住,固态硬盘无法做到覆盖写入,当写入的块有数据时,固态必须先进行擦除。
在这里插入图片描述
注:现在一些手机也使用闪存芯片,但是手机使用的闪存芯片更优质,集成度更高,功耗低,价格也更贵。

断电后信息是否丢失

   ( 1 ) (1) (1)易失性存储器:断电后信息消失
例如:RAM

   ( 2 ) (2) (2)易失性存储器:断电后信息不消失
例如:磁盘,光盘,ROM

信息是否被破坏

破坏性读出:信息读出后,原存储信息会被破坏,需要进行重写。
例如:DRAM

非破坏性读出:信息读出后,原存储信息不会被破坏。
例如:光盘,磁盘,SRAM。

存储器的性能指标

   ( 1 ) (1) (1)存储容量

存储容量=存储单元个数 * 存储字长

   ( 2 ) (2) (2)单位成本

即存储容量中每个bit位需要的价格,例如1000bit的硬盘要1000元,那么该硬盘1bit的价格就是1000/1000也就是1元,那么该硬盘的单位成本就是1元。

   ( 3 ) (3) (3)存储速度

数据传输率(主存带宽)=数据传输的宽度(存储字长)/存储周期
数据传输率(主存带宽)表示每秒从主存进出信息的最大数量,单位是字/秒,字节/秒,bit/位每秒。

疑惑:主存带宽和数据通路带宽的联系是什么?
在这里插入图片描述

什么是存储周期

一个存储周期由存取时间和恢复时间构成,一个存取周期可以存取一个存储字(存储单元?)在这里插入图片描述

存取时间(Ta):存储时间是指从开始一次存储器操作到完成该操作所经历的时间,分为读出时间或者写入时间。这里的时间可以是平均时间。存取时间又可以叫做读写时间或者总线传输时间,这很好理解,因为无论是写入数据还是读出数据,这整个过程都是需要总线作为中间介质来进行传输。

存储周期Tm:存取周期又称为读写周期或者访问周期,指存储器进行一次完整的读写操作需要的全部时间,即连续两次独立访问存储器所需的最小时间间隔。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1119740.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C语言】指针进阶【下】

🎈个人主页:.满船清梦压星河_-CSDN博客 🌂c/c领域新星创作者 🎉欢迎👍点赞✍评论❤️收藏 😛😛😛希望我的文章能对你有所帮助,有不足的地方还请各位看官多多指教&#xf…

修改ConsoleApplication17_2项目实现oss上线

首先创建号oss,上传文件,复制临时链接 木马内写 可以看到能成功上线但是有个问题就是占用cpu大小为9%左右,这里我用的是腾讯云oss实现的,用阿里云oss实现也是9%左右 我再次进行url的aes加密 还是百分之9左右, 这里…

利用ChatGPT进行数据分析并生成数据分析报告

目录 1 1 请罗列出中国所有的省份 按省份人口数量排序,给出序号,并整理成表格,人口最多的排在最前面; 在原有的数据源上,添加一些新的分类,并将分类结果进行反馈。 在表格中添加以下类别:男女…

网络协议--ICMP:Internet控制报文协议

6.1 引言 ICMP经常被认为是IP层的一个组成部分。它传递差错报文以及其他需要注意的信息。ICMP报文通常被IP层或更高层协议(TCP或UDP)使用。一些ICMP报文把差错报文返回给用户进程。 ICMP报文是在IP数据报内部被传输的,如图6-1所示。 ICMP…

新兴网络安全威胁:数字防御新格局

根据Check Point Research (CPR)的数据,今年上半年犯罪活动大幅增加,第二季度全球每周网络攻击激增 8%,这创下了两年来的最高成交量。 勒索软件和黑客行为等传统威胁已经演变,犯罪团伙不断调整其方法和工具来渗透和影响世界各地的…

BFS专题9 中国象棋-马-有障碍

题目: 思路: 由题意,这也是 BFS 即可,这里注意的是,我们要存储好哪些坐标有障碍,在搜索各个方向的时候,判断搜索的对应方向是否有障碍,即 !r[tem.x dx[i] / 2][tem.y dy[i] / 2]…

Hadoop3教程(三十三):(生产调优篇)慢磁盘监控与小文件归档

文章目录 (161)慢磁盘监控(162)小文件归档小文件过多的问题如何对小文件进行归档 参考文献 (161)慢磁盘监控 慢磁盘,是指写入数据时特别慢的一类磁盘。这种磁盘并不少见,当机器运行…

HTML选项框的设计以及根据不同选项的值对应不同的事件

文章目录 HTML选项框的设计JS根据不同的选项框对应出不同的事件 HTML选项框的设计 在前端页面的设计中&#xff0c;多选框的设计用select标签完成实现 全部选项都显示的选项框 <form><select multiple"multiple"><option></option><opti…

google登录k8s dashboard ui显示“您的连接不是私密连接”问题解决梳理

1.问题描述 OS Version:CentOS Linux release 7.9.2009 (Core) K8S Version:Kubernetes v1.20.4 k8s dashboard ui安装完毕后&#xff0c;通过google浏览器登录返现https网页&#xff0c;发现非官方的https网页无法打开 网址&#xff1a;https://192.168.10.236:31001 2.原…

[java进阶]——异常详解,try catch捕获异常,抛出异常

&#x1f308;键盘敲烂&#xff0c;年薪30万&#x1f308; 目录 一、异常的体系结构 二、处理异常的本质 三、异常处理的三种方式 3.1虚拟机jvm处理(默认) 3.2 try catch捕获异常 3.3抛出异常 3.4finally关键字 四、自定义异常 五、总结 一、异常的体系结构 分析&#…

pensieve运行的经验

1运行run_videopy时出现如下问题&#xff1a; cmd: Union[List[str], str], ^ SyntaxError: invalid syntax原因是EasyProcess版本与python版本不对应&#xff0c;解决办法可见之前这篇博客&#xff1a;SyntaxError: invalid syntax。 2解决完上述问题后&#xff0c;输…

NSSCTF第8页(1)

[HGAME 2023 week1]Classic Childhood Game js代码审计&#xff0c;找关键语句&#xff0c;发现event.js里边东西是最多的 找到了通关语句 他下边应该是就关键代码了&#xff0c;有一串16进制代码 解出来是base64&#xff0c;接着解 两次base64 解码&#xff0c;就得到了flag…

Vector3(即是位置,也是方向)

在三维世界中&#xff0c;最重要的就是确定物体在三维世界中 的位置、大小和缩放等信息。在Unity中&#xff0c;Vector3结构体就是用来表示这些信息的&#xff0c;此外也用Vector2来表示二维世界中的信息。 Vector3结构体由x、y、z这3个数值组成&#xff0c;表示了一个向量&am…

Nautilus Chain 与 Coin98 生态达成合作,加速 Zebec 生态亚洲战略进

目前&#xff0c;行业内首个模块化 Layer3 架构公链 Nautilus Chain 已经上线主网&#xff0c;揭示了模块化区块链领域迎来了全新的进程。在主网上线后&#xff0c;Nautilus Chain 将扮演 Zebec 生态中最重要的底层设施角色&#xff0c;并将为 Zebec APP 以及 Zebec Payroll 规…

算法-动态规划-java

文章目录 动态规划动态规划的核心动态规划算法的两种形式首先使用递归的方法实现这个算法①自顶向下的备忘录法②自底向上的动态规划&#xff08;推荐使用&#xff09; 更好的理解动态规划经典例题&#xff1a;钢条分割首先使用递归的方法实现这个算法①自顶向下的备忘录法②自…

2023-10-16 LeetCode每日一题(只出现一次的数字 III)

2023-10-16每日一题 一、题目编号 260. 只出现一次的数字 III二、题目链接 点击跳转到题目位置 三、题目描述 给你一个整数数组 nums&#xff0c;其中恰好有两个元素只出现一次&#xff0c;其余所有元素均出现两次。 找出只出现一次的那两个元素。你可以按 任意顺序 返回答…

CSS中 通过自定义属性(变量)动态修改元素样式(以 el-input 为例)

传送门&#xff1a;CSS中 自定义属性&#xff08;变量&#xff09;详解 1. 需求及解决方案 需求&#xff1a;通常我们动态修改 div 元素的样式&#xff0c;使用 :style 和 :class 即可&#xff1b;但想要动态修改 如&#xff1a;Element-ui 中输入框&#xff08;input&#x…

【每日一题】统计无向图中无法互相到达点对数

文章目录 Tag题目来源题目解读解题思路方法一&#xff1a;并查集方法二&#xff1a;DFS乘法原理 写在最后 Tag 【DFS乘法原理】【并查集】【图】【数组】【2023-10-21】 题目来源 2316. 统计无向图中无法互相到达点对数 题目解读 节点之间的连接关系是通过数组给出的&#x…

10月9日 Jdbc(2)

PreparedStatement的使用和jdbcUtil工具类的封装 拼接带来的sql注入问题(拼接sql) Statement PreparedStatement的使用 package com.fs.db;import com.fs.util.JdbcUtil;import java.sql.*; import java.util.Date; import java.util.Scanner;/*** 模拟SQL攻击*/ public clas…

使用 dynamic-datasource 完成多数据源操作

本次操作是将达梦数据库的数据插入到MySQL数据库中。 准备工作 创建一个 Spring Boot 项目添加依赖配置数据源属性 POM文件 <dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</art…