CPU、内存、缓存的关系

这篇具有很好参考价值的文章主要介绍了CPU、内存、缓存的关系。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

术语解释

CPU、内存、缓存的关系

(1)CPU(Central Processing Unit)
中央处理器
(2)内存

  • 内存用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。它是外存与CPU进行沟通的桥梁,内存的运行决定计算机整体运行快慢。
  • 缓冲区(Buffer)是内存空间的一部分,在内存中预留了一定的存储空间,用来暂时保存输入和输出等I/O操作的数据,这部分预留的空间就叫做缓冲区,且缓冲区是有大小的。 为了达到最佳的磁盘操作效率,可以把需要写入到磁盘的数据先在缓冲区中缓存起来,在缓冲区满了的时候才真正写入到磁盘中,这样就可以减少磁盘IO次数。

(3)缓存(Cache)

  • 内存缓存(from memory cache):将编译解析后的文件,直接存入该进程的内存中,占据该进程一定的内存资源,以方便下次运行使用时的快速读取,一旦该进程关闭,则该进程的内存则会清空。
  • 硬盘缓存(from disk cache):将缓存写入硬盘文件中,读取缓存需要对该缓存存放的硬盘文件进行I/O操作,然后重新解析该缓存内容,读取复杂,速度比内存缓存慢。

Q:为什么要引入缓冲区?
高速设备与低速设备的不匹配,势必会让高速设备花时间等待低速设备,因此需要在这两者之间设立一个缓冲区。
Q:缓存(cache)与缓冲(buffer)的主要区别?
Buffer的核心作用是用来缓冲,缓和冲击。Cache的核心作用是加快取用的速度。简单来说就是buffer偏重于写,而cache偏重于读。

关系

CPU、内存、缓存的关系
1.容量与速度
容量:网络存储(云存储)>硬盘>内存>缓存>寄存器
速度:寄存器>缓存>内存>硬盘>网络存储(云存储)
在理论上,物理内存太大反而会减慢速度,因为它增加了寻址的时间。
2.缓存是为了解决CPU速度和内存速度的速度差异问题
CPU、内存、缓存的关系
CPU存取数据的速度非常的快,一秒钟能够存取、处理十亿条指令和数据(术语:CPU主频1G),而内存就慢很多,快的内存能够达到几十兆就不错了,可见两者的速度差异是多么的大 。
内存中被CPU访问最频繁的数据和指令被复制入CPU中的缓存,这样CPU只要到缓存中去取就行了,而缓存的速度要比内存快很多 。
这里要特别指出的是:
1.因为缓存只是内存中少部分数据的复制品,所以CPU到缓存中寻找数据时,也会出现找不到的情况(因为这些数据没有从内存复制到缓存中去),这时CPU还是会到内存中去找数据,这样系统的速度就慢下来了,不过CPU会把这些数据复制到缓存中去,以便下一次不要再到内存中去取。
2.因为随着时间的变化,被访问得最频繁的数据不是一成不变的,也就是说,刚才还不频繁的数据,此时已经需要被频繁的访问,刚才还是最频繁的数据,现在又不频繁了,所以说缓存中的数据要经常按照一定的算法来更换,这样才能保证缓存中的数据是被访问最频繁的

3.关于一级缓存和二级缓存
CPU、内存、缓存的关系
RAM和ROM相对的,RAM是带电存储,即断电信息就消失,ROM则不受影响。
RAM又分两种, 一种是静态RAM,SRAM;一种是动态RAM,DRAM。前者的存储速度要比后者快得多,我们现在使用的内存一般都是动态RAM。 缓存通常都是静态RAM,速度是非常的快, 但是静态RAM集成度低(存储相同的数据,静态RAM的体积是动态RAM的6倍), 价格高(同容量的静态RAM是动态RAM的四倍), 但是为了提高系统的性能和速度,我们必须要扩大缓存, 这样就有了一个折中的方法,不扩大原来的静态RAM缓存,而是增加一些高速动态RAM做为缓存, 这些高速动态RAM速度要比常规动态RAM快,但比原来的静态RAM缓存慢, 我们把原来的静态ram缓存叫一级缓存,而把后来增加的动态RAM叫二级缓存。
一级缓存和二级缓存中的内容都是内存中访问频率高的数据的复制品(映射),它们的存在都是为了减少高速CPU对慢速内存的访问。
通常CPU找数据或指令的顺序是:先到一级缓存中找,找不到再到二级缓存中找,如果还找不到就只有到内存中找了。随着单个CPU中核数的增加,未来甚至可能会出现更多层级的缓存。文章来源地址https://www.toymoban.com/news/detail-473361.html

到了这里,关于CPU、内存、缓存的关系的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 硬盘、内存、缓存(CPU)和寄存器 空间大小与存取速度的区别及设计原理

    很多人会将 寄存器 与 存储器 二者混淆,认为它们是同一个东西。但并不是!! 寄存器是CPU上的一个模块 存储器是 内存+硬盘的统称 CPU(包含寄存器,缓存)    内存    硬盘 内存和硬盘之间的速度,差 3~4 个数量级;寄存器和内存之间的速度也差了 3~4 个数量级。       

    2024年03月22日
    浏览(49)
  • OpenGL ES与EGL的关系(二十一),完美讲解内存缓存LruCache实现原理

    glEnable(GL_TEXTURE_2D); glTexEnvx(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE); const GLint xc = (mWidth - mAndroid[0].w) / 2; const GLint yc = (mHeight - mAndroid[0].h) / 2; const Rect updateRect(xc, yc, xc + mAndroid[0].w, yc + mAndroid[0].h); glScissor(updateRect.left, mHeight - updateRect.bottom, updateRect.width(), updateRect.height()); // Blend st

    2024年04月11日
    浏览(40)
  • 网络技术领域专业术语解释大全-170个术语

    1. 自主访问控制(DAC:Discretionary Access Control) 自主访问控制(DAC)是一个访问控制服务,其执行一个基于系统实体身份的安全政策和它们的授权来访问系统资源。 2. 双附接集线器(DAC: Dual-attached Concentrator) 双附接集线器(DAC)是FDDI或CDDI集线器有能力接入到一个FDDI或CDDI网络的两个环。

    2023年04月15日
    浏览(55)
  • 芯片测试的常用术语解释

    1.lot 批次,用作单位。 2.on hold lot 被扣留的批次。有时某些批次的产品会因为一些问题被扣留给某些部门分析处理,其状态为on hold。 3.Tester/ATE 测试机,指各种集成测试仪器。内部通常集成各种电源(V/I源)、电表、时间测量仪器、开关网络、波形发生器等。 4.Handler/Prober 分选

    2023年04月12日
    浏览(54)
  • Kafka 入门到起飞 - 核心概念(术语解释)

    在kafka之旅,我们会大量讨论Kafka中的术语,那么就让我们先来了解一下这些核心概念 消息(Message): kafka的数据单元称为消息,相当于DB里的 一行数据 或 一条记录 消息由 字节数组 组成 批次: 生产者组一批数据再向kafka推送,批次大小可以通过参数配置 把消息分成批次传输

    2024年02月17日
    浏览(59)
  • 【IC基础】集成电路设计领域术语缩写及名词解释(字母索引版)

    笔者在大三上学习学习《SoC设计导论》时整理的有关集成电路设计领域的常见有英文缩写和对应的名词解释,文中标注的页码均出自《SoC设计方法与实现》这本参考书: 目录 前言: 目录 A B C CTG(Clock Tree Generation):时钟树生成 D F I J L N P R S T U ASIC(Application Specific Integrated Cir

    2024年02月16日
    浏览(65)
  • 微博AI评论机器人“评论罗伯特”引发热议;Local LLM常用术语解释

    🦉 AI新闻 🚀 微博AI评论机器人“评论罗伯特”引发热议 摘要 :微博平台上活跃的AI评论机器人“评论罗伯特”引发了网友的热议。这个机器人不断在微博评论区留下震惊人心的言论,受害者数量众多,还被组建了一个“受害者联盟”。罗伯特其实是新浪官方的AI机器人,主

    2024年01月20日
    浏览(65)
  • 聊一聊 .NET高级调试 中的一些内存术语

    在高级调试的旅程中,经常会有一些朋友问我什么是 工作集(内存) ,什么是 提交大小 ,什么是 Virtual Size , 什么是 Working Set 。。。截图如下: 既然有很多朋友问,这些用口头也不怎么好描述,刚好上午有时间就系统的聊一下吧。 可能有些朋友知道,内存中的虚拟地址被划分

    2024年02月05日
    浏览(52)
  • Kafka Producer/Consumer 关系解释及测试demo

    Kafka的生产者(Producer)和消费者(Consumer)的关系,可以通过一个餐厅的例子来形象地说明。 想象一个忙碌的餐厅,这里有: 厨师(Producers) :负责准备美味的菜肴。 服务台(Kafka Topic) :菜肴准备好后,厨师会将它们放到服务台上,服务台有多个部分,每部分代表一个不

    2024年02月19日
    浏览(28)
  • CPU的一、二、三级缓存

    在Java并发编程中,我们经常会遇到共享变量的读写问题,关于这类问题我们经常会说到原子性、可见性、有序性这三大特性,再进一步会了解到总线和CPU的一、二、三级缓存。关于这三个级别的缓存网上文章介绍比较多,今天我们这篇文章,算是知识梳理与记录,也是总结与

    2023年04月14日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包