-
CPU,缓存,内存,外存概念挖掘
2019-06-24 19:55:57四:内存与外存的区别 五:参考文章 一:缓存 定义:凡是位于速度相差较大的两种硬件之间,用于协调两者数据传输速度差异的结构,均可称之为Cache 被扩充概念:如今缓存的概念已被扩充,不仅在CPU和主内存之间有...目录
一:缓存
定义:凡是位于速度相差较大的两种硬件之间,用于协调两者数据传输速度差异的结构,均可称之为Cache
被扩充概念:如今缓存的概念已被扩充,不仅在CPU和主内存之间有Cache,而且在内存和硬盘之间也有Cache(磁盘缓存),乃至在硬盘与网络之间也有某种意义上的Cache──称为Internet临时文件夹或网络内容缓存等。存放的数据:内存中被CPU访问最频繁的数据和指令被复制入CPU中的缓存
作用:
用于协调两者数据传输速度差异的结构实际例子:
缓存是CPU(Central Processing Unit)的一部分
缓存(Cache memory)是硬盘控制器上的一块内存芯片
(硬盘上的缓存:当硬盘存取零碎数据时需要不断地在硬盘与内存之间交换数据 )
二:CPU
(1)组成一般由逻辑运算单元、控制单元和存储单元(寄存器)组成
(2)为什么需要缓存
事例:
1.因为缓存只是内存中少部分数据的复制品,所以CPU到缓存中寻找数据时,也会出现找不到的情况(因为这些数据没有从内存复制到缓存中去),这时CPU还是会到内存中去找数据,这样系统的速度就慢下来了,不过CPU会把这些数据复制到缓存中去,以便下一次不要再到内存中去取。 2.因为随着时间的变化,被访问得最频繁的数据不是一成不变的,也就是说,刚才还不频繁的数据,此时已经需要被频繁的访问,刚才还是最频繁的数据,现在又不频繁了,所以说缓存中的数据要经常按照一定的算法来更换,这样才能保证缓存中的数据是被访问最频繁的(3)作用
1、缩短延迟访问缓存的时间应该尽可能缩短,可以通过多种的方式缩短这个时间,比如能够通过减小缓存的大小或关联性来降低缓存的延迟,还有方式预测、增加带宽等方法。
2、提升命中率
所谓的命中率是在高速缓存中找到内存引用的速率,我们希望能够首先通过缓存中获得信息,以得到速度优势,所以缓存需要最大限度地实现这一目标。对于单个高速缓存,大小、关联性和块大小决定命中率。3、降低更低级别内存下的开销
高速缓存是内存层次结构的一部分,其性能会影响其它性能,处理其它内存花费的时间越长,意味着系统性能越低,也就是说尽可能让处理在缓存中完成。
4、减少错失惩罚
缓存中不能命中是无法避免的事情,但是我们可以减少处理未命中所需的时间以获得更好的处理器性能,通过提升命中率并通过应用不同的优化,能够降低错失惩罚。
高速缓存是CPU中十分重要的部分,占据了大量的资源开销和成本,如果您看过CPU架构图的话,您就会发现缓存占据了至少50%的面积,绝对至关重要。
(4)CPU的多级缓存一级缓存(L1 Cache)
CPU一级缓存,就是指CPU的第一层级的高速缓存,主要当担的工作是缓存指令和缓存数据。一级缓存的容量与结构对CPU性能影响十分大,但是由于它的结构比较复杂,又考虑到成本等因素,一般来说,CPU的一级缓存较小,通常CPU的一级缓存也就能做到256KB左右的水平。
二级缓存(L2 Cache66)
CPU二级缓存,就是指CPU的第二层级的高速缓存,而二级缓存的容量会直接影响到CPU的性能,二级缓存的容量越大越好。例如intel的第八代i7-8700处理器,共有六个核心数量,而每个核心都拥有256KB的二级缓存,属于各核心独享,这样二级缓存总数就达到了1.5MB。
三级缓存(L3 Cache)
CPU三级缓存,就是指CPU的第三层级的高速缓存,其作用是进一步降低内存的延迟,同时提升海量数据量计算时的性能。和一级缓存、二级缓存不同的是,三级缓存是核心共享的,能够将容量做的很大。
CPU的核心数量、高频高低都会影响性能,但如果让CPU更聪明、更有效率的执行计算任务,那么缓存的作用就至关重要了。
三:运行内存 与 物理内存 与虚拟内存 的区别
运行内存就是指的物理内存事例:
正在运行的一个进程,他所需的内存是有可能大于内存条容量之和的:比如你的内存条是256M,你的程序却要创建一个2G的数据区。
那么不是所有数据都能一起加载到内存(物理内存)中,势必有一部分数据要放到其他介质中(比如硬盘)。
待进程需要访问那部分数据时,在通过调度进入物理内存。虚拟内存是进程运行时所有内存空间的总和,并且可能有一部分不在物理内存中(也叫这个虚拟内存为内存交换区)
物理内存就是我们平时所了解的内存条四:内存与外存的区别
外存储器:磁性介质或光盘,像硬盘,软盘,磁带,CD
内存储器(内存):物理实质就是一组或多组具备数据输入输出和数据存储功能的集成电路
五:参考文章
https://blog.csdn.net/as02446418/article/details/47913387
https://zhidao.baidu.com/question/4890990.html
-
操作系统-内存与外存的对换
2020-09-01 23:55:54在上述情况下,还有些作业在外存上等待调入内存,但因内存空间已被那些阻塞的进程占用所以这些在外存上等待的作业无法被调入内存执行。 上诉两个问题会导致系统资源被严重浪费,且系统吞吐量(单位时间内完成的工作...1.对换的引入
在多道程序环境下,可能会有如下两个问题:
- 内存中的某些进程可能被阻塞(由于等待I/O或其他原因),但是该进程占用了大量的内存空间,甚至会发生内存中所有的进程都被阻塞的情况。
- 在上述情况下,还有些作业在外存上等待调入内存,但因内存空间已被那些阻塞的进程占用所以这些在外存上等待的作业无法被调入内存执行。
上诉两个问题会导致系统资源被严重浪费,且系统吞吐量(单位时间内完成的工作量)会下降。为了解决这个问题,引入了对换(swapping)。
2.概念
对换是指将内存中的暂时还不能被运行的进程或者暂时用不到的程序和数据,调到外存上(在linux中,有个/swap分区专门用户对换),以便腾出足够的内存供在外存中等待的作业使用。
3.对换分类
按照进行对换的单位,可以将对换分为如下三类:
- 进程对换(整体对换):以进程为单位进行对换。
- 页面对换(部分对换):以页面为单位进行对换。
- 分段对换(部分对换):以分段为单位进行对换。
整体对换主要用于分时系统,而部分对换的主要目的是为了支持虚拟存储系统。
4.进程对换
为了实现进程对换,要操作系统要实现的三大功能:
- 对换空间的管理
- 进程的换出
- 进程的换入
4.1.对换空间(外存的磁盘空间)的管理
具有对换功能的操作系统通常将外存分为文件区和对换区。
文件区用于存放文件,对换区存放从内存中换出的进程。
文件区的侧重点是外存空间利用率,为了提高文件区的外存空间利用率,文件区采用离散分配方式。
对换区的侧重点是换入换出速度,为了提高对换区的换入换出速度,对换区采用连续分配方式。
为了对换区中的空闲磁盘分区进行管理,可以采用类似于动态分区分配中采用的空闲分区表/链。
至于对换区中的空闲磁盘分区的分配算法也可以借鉴动态分区分配算法。4.2进程的换出
(1)选择处于阻塞状态下并且优先级最低的进程作为换出进程
(2)启动磁盘
(3)将该进程的程序和数据传送到磁盘4.2进程的换入
(1)操作系统定时的查看所有进程的状态
(2)找出处于就绪状态的进程
(3)找出换出时间最长的进程作为换入进程
(4)将该进程换入内存 -
计算机的内存、外存、主存、辅存
2017-10-01 16:27:50存储器是计算机的重要组成部分,用于存储程序与数据,可分为:计算机内部的存储器(内存储器,简称内存)、计算机外部的存储器(外存储器,简称外存)一般来说,主存指的是内存;但是在一些专业性较强的场合,主存与...存储器是计算机的重要组成部分,用于存储程序与数据,可分为:计算机内部的存储器(内存储器,简称内存)、计算机外部的存储器(外存储器,简称外存)
一般来说,主存指的是内存;但是在一些专业性较强的场合,主存与内存还是有一定区别的。内存储存器还有其他形式。而外存指的是辅存,比如硬盘、U盘、光盘及软盘等。
cpu中的存储器和主存是两个概念。处理器需要自己的内存储器,它们以寄存器的形式存在。
内存
内存又称主存,是CPU能直接寻址的存储空间,它的特点是存取速率快。内存是电脑中主要部件,它是相对于外存来说。
内存一般采用半导体存储单元,包括随机存储器(RAM)、只读存储器(ROM)和高级缓存(Cache)。
RAM(Random Access Memory)
高速存取,支持读写数据,读写时间相等,且与地址无关,但是断电后其中的数据会丢失。
ROM(Read Only Memory)
断电后信息不丢失,如计算机启动用的BIOS芯片。存取速度很低,(较RAM而言)且不能改写。由于不能改写信息,不能升级,现已很少使用。
Cache
介于CPU与内存之间,常用有一级缓存(L1)、二级缓存(L2)、三级缓存(L3)(一般存在于Intel系列)。它的读写速度比内存还快,当CPU在内存中读取或写入数据时,数据会被保存在高级缓冲存储器中,当下次访问该数据时,CPU直接读取高级缓冲存储器,而不是更慢的内存。
外存
外储存器是指除计算机内存及CPU缓存以外的储存器,此类储存器一般断电后仍然能保存数据。外存需要通过I/O系统与之交换数据,又称为辅助存储器。常见的外储存器有硬盘、软盘、光盘、U盘等
-
内存、外存、主存、辅存
2016-08-21 15:38:09但是,在一些专业性较强的场合,主存与内存还是有一定区别的.内存储存器还有其他形式. cpu中的存储器和主存是两个概念;处理器需要自己的内存储器,它们以寄存器的形式存在 辅存狭义上是我们平时讲的硬盘。科学地...外储存器是指除计算机内存及CPU缓存以外的储存器,此类储存器一般断电后仍然能保存数据。常见的外储存器有硬盘、软盘、光盘、U盘等
一般来说,主存就指内存;但是,在一些专业性较强的场合,主存与内存还是有一定区别的.内存储存器还有其他形式. cpu中的存储器和主存是两个概念;处理器需要自己的内存储器,它们以寄存器的形式存在
辅存狭义上是我们平时讲的硬盘。科学地说是外部存储器(需要通过I/O系统与之交换数据,又称为辅助存储器)。存储容量大、成本低、存取速度慢,以及可以永久地脱机保存信息。主要包括磁表面存储器、软盘存储器、磁带存储设备、光盘存储设备
-
CPU,缓存,内存,外存全解析
2020-07-05 20:25:27被扩充概念:如今缓存的概念已被扩充,不仅在CPU和主内存之间有Cache,而且在内存和硬盘之间也有Cache(磁盘缓存),乃至在硬盘与网络之间也有某种意义上的Cache──称为Internet临时文件夹或网络内容缓存等。... -
内存管理学习之概念篇
2012-10-15 16:21:00从所周知,cpu直接从内存中读取置零和数据,而不会与外存进行交互,因此存储在外存的程序和数据(可执行文件)必须装入内存才能够执行,这就是冯.诺依曼存储思想。 但是在多道程序操作系统中或者是存在大进程的情况... -
JS数据类型转换与内存模型
2019-04-29 20:02:00拓展知识:内存与外存 基础数据类型,对象,栈内存与堆内存 一道经典(SB)面试题的内存分析 垃圾回收与内存泄漏 深拷贝与浅拷贝的概念 JS数据类型转换 一张图表示,简单明了~ 拓展:内存与外存 内存 内存分为RAM和... -
排序的基本概念与分类
2017-11-02 14:12:001、排序技巧 实现一次排序即完毕组合排序:将多个徐排序的...外排序是因为排序的记录个数太多,不能同一时候放置在内存,整个排序过程须要在内外存之间多次交换数据才干进行。 时间性能:高效的内排序算法应该是具有... -
进程的概念与创建,孤儿进程与僵尸进程的认识,进程的优先级
2019-08-20 21:42:55存储器:内存(中间缓冲,缓存数据,数据的吞吐量大)–外存() 运算器:cpu 控制器: 所有设备都是围绕存储器工作的 操作系统 –一个软件安装在计算机硬件上 目的:为了让计算机更加好用—功能:合理统筹管理... -
有这一篇就够了,带你理解嵌入式内存各种概念
2020-12-10 15:10:55存储器的种类很多,按其用途可分为主存储器和辅助存储器,主存储器又称内存储器(简称内存),辅助存储器又称外存储器(简称外存)。 外存通常是磁性介质或光盘,像硬盘,软盘,CD等,能长期保存信息,并且不依赖与... -
数据结构与算法的学习——排序的基本概念和分类
2019-05-20 21:25:44是在整个过程中,待排序的所有记录全部被放置在内存中外排序是 由于排序的记录个数太多,不能同时放置在内存,真个排序过程需要在内外存之间多次交换数据才能进行 排序算法的性能主要的影响: 1、时间性能 2、辅助... -
【算法】排序的基本概念与分类
2020-03-27 11:58:36分内部排序和外部排序,若整个排序过程不需要访问外存便能完成,则称此类排序问题为内部排序。反之,若参加排序的记录数量很大,整个序列的排序过程不可能在内存中完成,则称此类排序问题为外部排序。内部排序的过程... -
指针概念与解析
2018-07-23 18:39:58进程:正在运行的程序(CPU会通过文件系统去将外存中的程序加载到内存并分配空间) 存储单元: 1最小的存储单元:bit (存放0/1) 2计算机的存储基本单元:byte (每次一次性取出的宽度) 3其他单位: KB=... -
内存管理
2020-12-06 15:05:16文章目录内存管理内存的基础知识装入的三种方式链接的三种方式内存管理概念覆盖与交换覆盖技术:解决程序大小超过物理内存的问题交换技术:内存空间紧张时,系统将内存中某些进程暂时换出外存,把外存中 某些已具备... -
3.4 存储器的基本概念
2020-09-19 23:24:233.4 存储器的基本概念 ...辅助存储器(辅存、外存) 2.从存储器使用材料的不同来分 1.磁表面存储器:磁盘、磁带 2.磁芯存储器 3.半导体存储器 4.光存储器:光盘 不同的材料表现出不同的特性,进而表现 -
数据结构与算法之--基本概念
2017-07-08 16:44:00数据结构是数据在计算机内存或者外存中的组织方式,算法就是计算机操作数据结构中数据的方式方法,比如查找、排序。 很少有数据结构是为了节省存储空间的,数据结构和算法的常见目的都集中与提高数据操作的速度上... -
排序算法之基本概念与总结
2016-08-20 16:37:233. 内排序与外排序 内排序在内存中;外排序是指排序记录太多,整个排序过程需要在内外存之间多次交换数据才能进行; 4. 排序算法主要受3个方面影响:时间性能、辅助空间、算法本身的复杂度; 5. 排序分类 6. 排序... -
《Oracle数据库管理与维护实战》——第 2 章 Oracle体系结构及其基本概念
2017-05-02 09:36:00第 2 章 Oracle体系结构及其基本概念 ...Oracle是个庞大的体系,结构复杂,内容涉及内存、外存及网络。本章的目的就是让读者了解Oracle的体系结构,知道Oracle的运行机制,为后面的数据库管理打好基础。 ... -
朱老师ARM裸机学习笔记(三):CPU和与外部存储器的接口
2016-03-08 16:45:09内存和外存的概念内存内存指 内部存储器,运行程序的地方 RAM外存外存指 外部存储器, 保存数据或者文件的地方 ROMCPU连接内存和外存的方式内存通过数据总线和地址总线直接和CPU 相连接。 好处 : 访问速度快,... -
操作系统概论【引入操作系统中的基本概念和操作】
2020-10-24 15:20:39概论只做系统性的陈述,串联,不涉及内部的实现细节。 操作系统: 操作系统是管理计算机硬件并提供应用程序行环境的软件。操作系统最为直观之处或许是它提供的用户与计算机系统的界面...最常用的外存是磁盘,它提供数 -
JVM-垃圾回收的名词概念
2021-02-07 19:16:17现在的手机之所以变快,是因为手机的内存增加,应用程序会缓存在内存中,就不用每次都从外存读取进来了,就会觉得打开应用很快。 这些不必要的缓存会在内存空间不足时被清除,这就是软弱引用的原理。 一、System.gc... -
数据结构中排序的基本概念及常用的一些方法
2020-05-20 11:16:09排序完全在内存中进行的就叫做内部排序,借助外存的叫做外部排序。 相通的数据元素在不同排序过程中发生位置改变的叫做不稳定排序,反之就是稳定排序。 常用方法 ①直接插入排序 这种方法最简单,就是依次将记录序列... -
8.7.1外部排序的基本概念 8.7.2外部排序的方法
2020-10-20 22:08:42然后进行那个排序的算法,但是在外部排序当中,我们排序的这样一个文件,这个序列的长度可能会远远的超过我们内存送到存放的长度,所以我们要一部分一部分地从外存读入到内存当中,然后进行排序,那么之前我们讲述过... -
【数据结构与算法】【排序】基本概念
2014-10-31 09:47:55排序:将线性表中的元素按照升序或者降序进行有序排列的操作。 排序方法的稳定性:...外排序:在待排序的元素(记录)太多的情况下,不能同时将所有元素放置在内存中,在排序过程中需要在内外存之间进行多次数 -
Android优化笔记--内存优化
2020-08-09 08:55:57内存: 它是外存与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影响非常大。内存(Memory)也被称为内存储器和主存储器,其作用是用于暂时存放CPU中的运算数据,以及与硬盘... -
混乱不清的概念(3)——序列化和持久化(转载)
2018-12-18 20:50:55参考来源:序列化和持久化的区别与联系 持久化 内存 ——> 外存 实现三个接口: -
DMA(direct memory access)直接内存访问
2017-07-26 19:21:54DMA(Direct Memory Access),这里的 memory,指的是计算机的内存,自然与外存(storage)相对。这里的关键词在 Direct (直接),与传统的相对低效的,需要通过 CPU 来访问内存(此为 indirect,间接)的方式相对...