一、程序访问的局部性原理

程序访问的局部性原理包括时间局部性和空间局部性。

  • 空间局部性:在最近的未来要用到的信息(指令和数据),很可能与现在正在使用的信息在存储空间上是邻近的
  • 时间局部性:在最近的未来要用到的信息,很可能是现在正在使用的信息

高速缓冲技术是利用程序访问的局部性原理,把程序中正在使用的部分存放在一个高速的、容量较小的Cache中,使CPU的访存操作大多数针对Cache进行,从而大大提高程序的执行速度。


二、Cache的基本工作原理

Cache位于存储器层次结构的顶层,通常由SRAM构成。

Cache和主存都被分成若干大小相等的块(Cache块又称为Cache行),每块由若干字节组成,块的长度称为块长(Cache行长)。所以Cache中的块数要远少于主存中的块数,它仅保存主存中最活跃的若干块的副本。

CPU与Cache之间的数据交换以字为单位,而Cache与主存之间的数据交换则以Cahce块为单位。

  • 当CPU发出读请求时,若访存地址在Cache中命中,就将此地址转换成Cache地址,直接对Cahce进行读操作,与主存无关;若访存地址在Cache中未命中,则需访问主存,并把此字所在的块一次性地从主存调入Cache,若此时Cache已满,则需根据某种 替换算法,用这个块替换Cache中原来的某块信息。

  • 当CPU发出写请求时,若Cache命中,有可能会遇到Cache与主存中的内容不一致的问题,此时需要根据某种 写策略 解决这个问题。


三、Cahce的性能指标

与Cahce有关的性能指标主要有:命中率,缺失率和平均访问时间。

1. 命中率H:

  • CPU欲访问的信息已在Cache中的比率

设一个程序执行期间,Cache的总命中次数为 N c N_c Nc​,访问主存的总次 N m N_m Nm​。则 H = N c / ( N c + N m ) H=N_c/(N_c+N_m) H=Nc​/(Nc​+Nm​)

2. 缺失率M:

  • CPU欲访问的信息不在Cache中的比率

M = 1 − H M=1-H M=1−H

3. 平均访问时间 T a T_a Ta​:

设 t c t_c tc​ 为命中时的Cache访问时间, t m t_m tm​为未命中时的访问时间,则 T a = H ∗ t c + ( 1 − H ) t m T_a=H*t_c+(1-H)t_m Ta​=H∗tc​+(1−H)tm​

Cache —— 局部性原理和工作原理相关推荐

  1. kafka分区与分组原理_Kafka工作原理

    Kafka工作原理 Kafka工作原理 4.1. topic和消息 4.2. Producer 4.3. Consumer 4.4. Kafka核心特性 4.5. consumer.consumer ...

  2. bootloader功能介绍/时钟初始化设置/串口工作原理/内存工作原理/NandFlash工作原理...

    bootloader功能介绍 初始化开发板上主要硬件(时钟,内存,硬盘), 把操作系统从硬盘拷贝到内存,然后让cpu跳转到内存中执行操作系统. boot阶段 1.关闭影响CPU正常执行的外设 -关闭看 ...

  3. 冯诺依曼原理计算机称为,冯·诺依曼提出的计算机工作原理又称为 工作原理。...

    冯·诺依曼提出的计算机工作原理又称为 工作原理. 更多相关问题 Y211是一种靠液压动力坐封的封隔器,而Y441或Y445是一种靠机械坐封的封隔器. 美容心理诊断对美容医学的意义 肾功能不全的老年患者 ...

  4. 太阳能电池板原理及工作原理

    本文转载于: http://www.go-gddq.com/html/NYLiYHeHuiShou/2013-04/1117691.htm 太阳能电池板原理及工作原理 随着全球能源日趋紧张,太阳能成为 ...

  5. 电热水器工作过程 c语言,电热水器工作原理—电热水器工作原理及使用注意事项介绍...

    电热水器现在已经成为了一种最为受到消费者喜爱的热水设备,而在我们大家购买电热水器的时候,并不是很了解电热水器,所以今天小编就来为大家介绍一下电热水器的一些工作原理及一些使用中的注意事项,希望可以帮助大 ...

  6. 电子邮件服务器的工作原理,电子邮件工作原理 电子邮件有什么特点呢

    电子邮件是交流信息的一种通信方式,可以用来传输文件和图片,还是非常方便的.很多人对电子邮件的工作原理感到好奇,电子邮件工作原理是怎样的?电子邮件有什么特点呢? 电子邮件工作原理 电子邮件工作原理 电子 ...

  7. [JavaScript][AJAX]onreadystatechange事件;AJAX含义及组成部分;AJAX工作原理/HTTP工作原理;一个页面从输入url到呈现网页过程;FormData对象;防抖

    目录 onreadystatechange事件 AJAX含义及组成部分 AJAX工作原理/HTTP工作原理 一个页面从输入url到呈现网页过程 TCP三次握手图示 渲染引擎渲染网页流程图 ​编辑 Fo ...

  8. 了解WiFi的原理、工作原理以及相关的标准。

    Wi-Fi 是 Wireless Fidelity 的缩写,是无线局域网 (WLAN) 的一种常用技术.它使用频率为 2.4GHz 和 5GHz 的高频电波传送数据. Wi-Fi 工作原理: 发送端: ...

  9. 计算机设备的工作原理,计算机工作原理

    基本原理 计算机在运行时,先从内存中取出第一条指令,通过控制器的译码,按指令的要求,从存储器中取出数据进行指定的运算和逻辑操作等加工,然后再按地址把结果送到内存中去.接下来,再取出第二条指令,在控制器 ...

最新文章

  1. 一个“人工智能Python机器学习与深度学习”课程表
  2. Linux 操作系统原理 — 系统启动流程
  3. 案发设计与分析 试验一
  4. Coding4Fun Toolkit支持本地化解决办法
  5. XPS reader for Silverlight
  6. 大数据技术:分布式系统和分布式事务
  7. Python全栈 MongoDB 数据库(数据的修改)
  8. linux安装卷管理,Linux安装管理ISCSI卷(initiator端)
  9. Linux删除特殊字符文件
  10. 说你又不听,听你又不懂,懂你又不做,做你又做错,错你又不认,认你又不改,改又不服,不服也不说
  11. mysql哪一款好用_用了这么多年MySql,这些好习惯你用过哪些
  12. JavaScript之表单验证
  13. 用tbtools基因家族分析《一》
  14. 在线log计算机,log换算(log计算器在线)
  15. 命令行查询ip所在地——Nali
  16. [USACO2008 Mar]土地购买
  17. 西门子 PLC S7单边通信
  18. JavaScript 获取当前日期和三十天以前日期
  19. Java Selenium3 WebDriver启动火狐、Chrome、IE,Edge浏览器的方法(一)
  20. vijos 1250 最勇敢的机器人

热门文章

  1. GeoServer发布高清卫星瓦片影像数据
  2. 如何快速恢复删除的文件?数据还原方法分享
  3. 网康下一代防火墙RCE漏洞
  4. java 交通绘图_Java模拟交通路况
  5. win7旗舰版安装sp1提示ERROR_NOT_FOUND
  6. java界面布局的super_Java中的super
  7. hdu4921 Map
  8. mysql如何在if中设置return_mysql 存储过程 if return
  9. 专访诸葛io:数据分析,让用户“路人转粉”的奇妙魔术
  10. Win10《芒果TV》商店内测版更新至v3.1.6:率先支持Xbox One平台 - 参与反馈,赢取VIP奖励...