这篇文章我尽量说明高速缓存的是啥,和高速缓存至关重要的作用。(纯爱好,发现错误赶快联系我)

如果单单去观察一个HelloWord和程序是如何在计算机从执行的,就会发现系统花了大量的时间吧信息从一个地方加载到另一个地方,HelloWord程序最初存放在硬盘上,然后当程序加载时被复制到主存,当CPU运行,这些程序又要复制到CPU…,这些复制的开销减慢了程序的执行效率。那么怎么办呢?

首先我们要清楚的是,较大的储存设备比较小的设备运行的慢(机械原理决定的),而同类存储设备中,存储快的设备比存储慢的设备贵很多。比如吧:你的硬盘可能比你的内存大1000倍,但是CPU从硬盘上读取一字节花费的时间可能比你从内存中花费的时间多1000万倍!

在比如说寄存器文件(CPU里的一个存数据的东西,比高速缓存还要快)只能存储几百个字节,内存里可能存放几十亿字节,但是从寄存器文件中读取数据要比从内存中大概快100倍!

针对这种CPU和内存的差异,这篇文章的主角高速缓存诞生了。高速缓存比主存更小更快,存放CPU经常访问的数据。这样可以大大提高程序的执行性能。

当然高速缓存比你想的还要复杂一点,高速缓存也是分级的,暂且成为L1,L2两级,L1的存放容量大概分为几万字节,访问速度基本和寄存器差不多,L2容量在数十万字节到数百万字节之间,但是仍然比访问内存块5-10倍,L1和L2用的是静态随机访问存储器(SRAM)的硬件技术实现,我还没弄明白这是个啥玩意呢,就不解释了。反正不影响你理解高速缓存的重要性。

正是由于高速缓存的存在,CPU有了一个比较大而且访问速度还挺快的存储器。大大提高了程序的执行性能。

哦对了 ,我在找工作,有那个老板缺java后台开发人员可以了解下我,达内培训机构出身,马上完成培训。算是半入行,就差这临门一脚。微信ma18526290799

高速缓存是啥和高速缓存的至关重要性相关推荐

  1. linux内核学习6:Linux的CPU高速缓存cache和页高速缓存cache,buffer

    一.CPU高速缓存(cache) 参考:https://blog.csdn.net/u014470361/article/details/80060701 参考:https://blog.csdn.n ...

  2. color key在倒车显示功能上的至关重要性

    color key在倒车显示功能上的至关重要性 随着经济的高速发展,汽车越来越多了,在城市里停车位越来越难找,停车位也越来越小,这时候倒车技术就显得非常重要了,左边是宝马,右边是奥迪,车位后面还可能有 ...

  3. 每个程序员都应该了解的 CPU 高速缓存 英文原文:Memory part 2: CPU caches

    现在的CPU比25年前要精密得多了.在那个年代,CPU的频率与内存总线的频率基本在同一层面上.内存的访问速度仅比寄存器慢那么一点点.但是,这一局面在上世纪90年代被打破了.CPU的频率大大提升,但内存 ...

  4. 每个程序员都应该了解的 CPU 高速缓存

    每个程序员都应该了解的 CPU 高速缓存 英文原文:Memory part 2: CPU caches 来源:oschina [编者按:这是Ulrich Drepper写"程序员都该知道存储 ...

  5. java底层知识(3)--CPU 高速缓存

    本文转载自: http://blog.jobbole.com/36263/ 尊重原创 3.CPU的高速缓存 现在的CPU比25年前要精密得多了.在那个年代,CPU的频率与内存总线的频率基本在同一层面上 ...

  6. 每个程序员都应该了解的 CPU 高速缓存 【第二部分】

    链接地址:http://www.oschina.net/translate/what-every-programmer-should-know-about-cpu-cache-part2 原文地址:h ...

  7. 每个程序员都应该了解的 CPU 高速缓存【第二部分】

    文章来源 每个程序员都应该了解的 CPU 高速缓存 [编者按:这是Ulrich Drepper写"程序员都该知道存储器"的第二部.那些没有读过第一部 的读者可能希望从这一部开始.这 ...

  8. 每个程序员都应该了解的内存知识-CPU高速缓存

    [编者按:这是Ulrich Drepper写"程序员都该知道存储器"的第二部.那些没有读过第一部 的读者可能希望从这一部开始.这本书写的非常好,并且感谢Ulrich授权我们出版. ...

  9. 深入理解操作系统(16)第六章:存储器层次结构(2)高速缓存存储器+对程序性能的影响(包括:L1/L2高速缓存历史/缓存写:直写和写回/暂无L4级缓存/缓存命中率/存储器山/高速缓存友好的代码/)

    深入理解操作系统(16)第六章:存储器层次结构(2)高速缓存存储器+对程序性能的影响(包括:L1/L2高速缓存历史/缓存写:直写和写回/暂无L4级缓存/缓存命中率/存储器山/高速缓存友好的代码/) 1 ...

最新文章

  1. [译]函数式响应编程入门指南
  2. Xamarin图表开发基础教程(8)OxyPlot框架
  3. 使用LaunchScreen.storyboard黑屏
  4. 一个算法对于某个输入的循环次数是可以事先估计出来的_数据结构与算法:算法...
  5. JS-数据属性与访问器属性
  6. delphi7 如何判定dbgrid两行重复_教你如何在服装上加入好看的毛线刺绣花边
  7. client 连接 host —— 虚拟机
  8. 吴恩达机器学习笔记一
  9. 三星Nexus S刷回官方4.0.4教程
  10. 宿州学院省二计算机什么时候报名,宿州学院2017年9月全国计算机等级考试报名时间及报名网址公布...
  11. 配置nfs环境的一些命令
  12. SAP屏幕设计器专题:表格控件属性的设定(七)
  13. MTK:socket通信
  14. 怎么爬取全量企业工商数据(思路)
  15. 《分布式任务调度平台XXL-JOB》
  16. CAN总线隔离器简介
  17. a113 智能音箱芯片方案_智能音箱九大芯片方案商及其生产厂商和代表作品介绍-控制器/处理器-与非网...
  18. Bootstrap可以这样学-曹领雄-专题视频课程
  19. 数字钱包(IOST)使用指南
  20. 关于调节ijkPlayer的音量和静音

热门文章

  1. 【蓝桥软件学院】论MyBatis日志
  2. 微软开价446亿美元欲收购雅虎(最新消息)
  3. G-NO.0 Markdown——高效码字神器
  4. jh锂电保护电路_锂电池保护电路设计方案
  5. css文字纵向排列且居中
  6. 模板文件下载后乱码或异常的可能原因及解决方案
  7. Office控件开发总结-Office 开发基本知识
  8. CVPR2023对抗攻击相关论文
  9. 三维电子沙盘数字沙盘元宇宙大数据人工智能无人机倾斜摄影三维全景建模第17课
  10. sheel脚本 centos7环境 自动安装 zeppelin