程序的局部性原理是指程序在执行时呈现出局部性规律,即在一段时间内,整个程序的执行仅限于程序中的某一部分。它们倾向于引用的数据项邻近于其他最近引用过的数据项,或者邻近于最近自我引用过的数据项。
在现代计算机系统的各个层次,从硬件到操作系统、应用程序等,设计上都利用了局部性原理。比如缓存机制,CPU指令顺序处理等。
局部性通常有两种形式:时间局部性和空间局部性。

时间局部性(temporal locality)

  时间局部性是指如果程序中的某条指令一旦执行,则不久之后该指令可能再次被执行;如果某数据被访问,则不久之后该数据可能再次被访问。强调数据的重复访问。

空间局部性(spatial locality)

  空间局部性是指一旦程序访问了某个存储单元,则不久之后。其附近的存储单元也将被访问。强调连续空间数据的访问,一般顺序访问每个元素(步长为1)时具有最好的空间局部性,步长越大,空间局部性越差。

3.程序的局部性原理相关推荐

  1. 什么是程序的局部性原理

    01.前言 作为有追求的程序员,我们日常在写代码的时候往往都会运用很多奇技淫巧,不单单是为了炫耀我们的技术,更是为了追求更高的效率.了解局部性原理,可以有效的帮助我们理解和写出更好的代码,对于局部性原 ...

  2. java 局部性原理_程序局部性原理

    程序局部性原理 本文目的:使读者快速理解 本文定位:学习笔记 学习过程记录,加深理解,提升文字组合表达能力.也希望能给学习的同学一些灵感 程序局部性原理 程序的局部性原理是指程序在执行时呈现出局部性规 ...

  3. (计算机组成原理)第三章存储系统-第六节1:高速缓冲存储器Cache及其相关基本概念、程序访问的局部性原理和命中率

    文章目录 一:Cache的基本原理 二:程序访问的局部性原理 三:主存块 四:命中率和缺失率 由于程序的转移概率不会很低,且数据分布的离散性较大,所以单纯依靠并行主存系统提高主存系统的频宽是有限的.这 ...

  4. 深入浅出计算机组成原理学习笔记:局部性原理-数据库性能跟不上,加个缓存就好了(第36讲)...

    平时进行服务端软件开发的时候,我们通常会把数据存储在数据库里.而服务端系统遇到的第一个性能瓶颈,往往就发生在访问数据库的时候. 这个时候,大部分工程师和架构师会拿出一种叫作"缓存" ...

  5. Linux 操作系统原理 — 内存 — 基于局部性原理实现的内/外存交换技术

    目录 文章目录 目录 前文列表 基于局部性原理实现的内-外存交换技术 局部性原理 Swap 交换分区 前文列表 <Linux 操作系统原理 - 内存 - 物理存储器与虚拟存储器> < ...

  6. 缓存机制与局部性原理

    http://www.cnblogs.com/jqctop1/p/4714116.html 1. 局部性原理 局部性原理是指计算机在执行某个程序时,倾向于使用最近使用的数据.局部性原理有两种表现形式: ...

  7. 计算机术语局部性,【计算机基础】程序的局部性简介

    什么是局部性? 局部性分类 局部性有什么作用? 局部性举例数据引用的局部性 取指令的局部性 结论 完整代码 什么是局部性? 程序倾向于使用它们最近使用的地址接近或相等的数据和指令. 局部性分类 局部性 ...

  8. 【学习笔记】第三章——内存 II(分页存储、快表与局部性原理、两级页表)

    文章目录 一. 分页存储概念 二. 地址转换 1)为什么页面大小为2的次幂? 三. 页表 1)页表项长度.页号"隐含" 四. 局部性原理与快表 五. 二级页表 1)单级页表存在的问 ...

  9. 【王道计组笔记】高速缓存器:局部性原理及性能分析

    背景: 随着CPU的工作速度成指数级增长,但是主存速度跟不上,所以要提升主存速度非常重要. m个模块采用低位交叉编址的方式可以基本上将主存的带宽提升m倍,但是这依旧与CPU差距很大. [王道计组笔记] ...

最新文章

  1. Linux常用安全设置
  2. 802.11w协议介绍
  3. 2019潜江职称计算机考试,2019湖北事业单位联考潜江地区笔试成绩分析
  4. [云炬商业计划书阅读分享]无水洗车市场推广策划书
  5. html下拉框变长,改变HTML下拉框SELECT选项的多种方法
  6. Mybatis 算术逻辑运算
  7. DataTable筛选某列最大值
  8. speedbutton用法
  9. android内核读取file文件
  10. AIR切换SDK版本时遇到的问题
  11. springboot定时发送短信_阿里大于可以发送定时短信
  12. python学习笔记——捌 ScoketServer
  13. 智汇华云 | 集群自动化部署服务流程之自动化集群配置(上)
  14. Qt使用libmodbus
  15. 物联网嵌入式高级C语言流行框架、学习路线图
  16. Graphene-SGX 总结
  17. webpack全局安装
  18. 四大机器学习降维算法:PCA、LDA、LLE、Laplacian Eigenmaps
  19. c# 新中新二代身份证阅读,包含头像,支持华视
  20. kali hydra工具介绍

热门文章

  1. ubuntu -- 不输入密码执行sudo
  2. 51单片机(STC89C52RC) IO扩展实验
  3. apache常用的配置指令:ServerRoot
  4. 英文论文中i.e.,e.g.,etc.的正确用法
  5. 使用idea创建gradle的springboot工程
  6. libevent源码深度剖析八
  7. linux 的重定向、管道、xargs 命令
  8. 爬取智联招聘(面向对象)
  9. 基于机器学习的捡球机器人设计与实现(探索)第1篇——树莓派系统的安装与配置(20190106)
  10. c++ max 的头文件_学用C/C++编写小游戏程序(2.2 打字练习游戏)