CSAPP 第六章存储器的结构层次

news2024/11/28 6:49:31

源程序 执行程序 空间代码都要存在外存上,程序运行的时候操作系统要把外存的东西加载到内存里,CPU要从内存一行一行的读、译码和分析

我们来看一个例子:

指令位于内存中的代码段中,必须从内存中读出来进行译码分析之后才能运行

指令必须从内存中读出经过CPU的译码器 才能翻译成机器语言

关于存储器的一些基本术语:

 如果上一级不命中回到下一级来寻找:

不命中的分类:

首先要理解局部性原理 为啥层次结构行得通 因为局部性原理访问第K层的数据要比访问第K+1层的数据要频繁。cache是由硬件自动完成的。

 为啥要把指令和数据cache分开 为了避免资源的冲突 这个是一个很重要的东西 计组也考了(但是我错了) 

 一位不命中的代价太高了 所以cache采用按块求取的方式,读取8不命中 然后就到下方的内存中找数据。

查找方式:

比如这一条语句:

movl n(rip), %eax

 传地址 然后由硬件自动将地址进行切割,找到组 然后逐路进行查找  先看有效位valid是不是1,然后再看 再比较字地址的标记位和块的tag位是不是相等。b决定从第几个字节开始读 movl决定读几个字节。

B = 64块      S = 32kB/64B每块/8路=64 E = 8 C=SEB

35 6 6机器数在计算机中是小端存储 

 全相联映射示意图

ACD 没有路索引        

直接映射会发生窗口抖动的现象 全相联映射会出现比较器比较多而产生电路设计复杂的问题。

抖动指的是多次冲突不命中。

存储器山

 

 编写面向cache友好的程序:

第一次 读00 调入cache 读disc调入cache

 第二部访问source 01命中 但是dst 10不在cache里 调入 10 11

第三次访问source 10 m调入 11 访问dis01 命中

第四次访问source 11 命中 访问 11命中

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/533222.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

细说java动态代理及使用场景

一、定义 Java代理模式是一种结构型设计模式,它允许通过创建一个代理对象来间接访问另一个对象,从而控制对原始对象的访问。 1.1 作用 1、在访问原始对象时增加额外功能,如访问前或访问后添加一些额外的行为。 2、控制对原始对象的访问。 J…

热水智能控制系统有什么优点?

热水智能控制系统是一种先进的技术,可以极大地提高家庭和商业场所的热水使用效率,降低能源消耗和运营成本。这种系统利用现代化的传感器、控制器和通讯技术,可以智能地监测和控制热水的温度、流量和使用情况,并根据实际需求来调节…

ASEMI代理ADI亚德诺ADM706SARZ-REEL原厂芯片

编辑-Z ADM706SARZ-REEL参数描述: 型号:ADM706SARZ-REEL VCC工作电压范围:1.0-5.5V 电源电流:100μA 重置阈值滞后:20 mV 复位脉冲宽度:200 ms PFI输入阈值:1.25V PFI输入电流&#xff…

Linux 部署 scrapydweb

一、 创建虚拟环境,在虚拟环境下操作 1、安装scrapyd pip install scrapyd2、安装scrapyd-client pip install scrapyd-client3、安装scrapydweb pip install scrapydweb4、安装Logparser pip install Logparser二、新建一个scracyd的配置文件 sudo mkdir /etc/scr…

MySql.Data.dll 因版本问题造成报错的处理

NetCore 链接MySQL 报 Character set ‘utf8mb3‘ is not supported by .Net Framework 异常解决_character set utf8mb3_csdn_aspnet的博客-CSDN博客 查看mysql版本号,两种办法: 第一种在数据库中执行查询:SELECT version; 第二种使用工具…

数据治理和合规性:如何确保大数据应用遵守法规和标准

第一章:引言 在数字时代,大数据的应用日益普遍,对企业和组织的决策、运营和创新产生了深远的影响。然而,随着数据规模的不断增长,以及数据泄露和滥用事件的频繁发生,数据治理和合规性问题愈发突显。企业和…

推荐系统用户长序列建模

目录 一、背景 二、技术方案 2.1 DIN 简介 论文细节 优缺点 2.2 DINE 简介 论文细节 2.3 MIMN 简介 论文细节 2.4 SIM 简介 论文细节 优缺点 2.5 DSIN 简介 论文细节 一、背景 阿里巴巴的精排模型从传统lr,到深度学习,再到对用户长历…

使用云服务器可以做什么?十大使用场景举例说明

使用阿里云服务器可以做什么?阿里云百科分享使用阿里云服务器常用的十大使用场景,说是十大场景实际上用途有很多,阿里云百科分享常见的云服务器使用场景,如本地搭建ChatGPT、个人网站或博客、运维测试、学习Linux、跑Python、小程…

6年测试,不断磨炼升级打怪自动化测试,一路晋升他终于冲出月35k+

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 Python自动化测试&…

ViT 论文逐段精读

https://www.bilibili.com/video/BV15P4y137jb Vision Transformer 挑战了 CNN 在 CV 中绝对的统治地位。Vision Transformer 得出的结论是如果在足够多的数据上做预训练,在不依赖 CNN 的基础上,直接用自然语言上的 Transformer 也能 CV 问题解决得很好…

如何学习web前端开发?这样学前端事半功倍,能救一个是一个!

非常理解想要自学前端的伙伴,因为好程序员的学员一开始也是自学插画的,很多同学,自学到最后真的非常枯燥乏味,且走了很多弯路。小源想着能帮一把是一把的原则,这两天整理了一份前端的高效学习路线,想学web前…

接口测试常用工具及测试方法(基础篇)

首先,什么是接口呢? 接口一般来说有两种,一种是程序内部的接口,一种是系统对外的接口。 系统对外的接口:比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把数据库共享给你,他只能给…

Windows管理内存的3种方式——堆、虚拟内存、共享内存

一、操作系统管理内存概述 在 Windows 操作系统中,每个进程都被分配了 4GB 的虚拟地址空间,这被称为进程的虚拟地址空间。虚拟地址空间提供了一个抽象的地址空间,使得每个进程都可以认为它拥有自己的独立内存空间。这个虚拟地址空间被分为两…

720度沉浸式体验,VR虚拟展馆的价值有哪些?

展馆作为一个展示商品、会议交流、信息传播、经济贸易的场所,能够创造巨大的经济效益和社会效益。什么是VR虚拟展馆呢?VR虚拟展馆是基于VR全景技术打造的线上展厅,可以应用在多种领域中展示各式的商品和内容,观众通过VR虚拟展馆可…

ubuntu系统下使用ros控制UR真实机械臂,逻辑清晰,亲测有效

梳理一下在ubuntu系统使用ros控制UR真实机械臂的思路,逻辑清晰,亲测有效,并记录踩过的坑。从0开始,使用ros控制真实UR机械臂。 环境:ubuntu18.04 ros版本:melodic 机械臂型号:UR5e 一&#xff…

当我与单链表分手后,在酒吧邂逅了双向循环链表.....

链表的种类有8种,但我们最常用的为无头单向非循环链表和带头双向循环链表。 带头双向循环链表 当带头双向循环链表只有哨兵位头的时候,双向链表的指向如下图。 head->pre和head->next都是指向自己,这个是有巨大优势的,代码…

CTFHub | 文件包含

0x00 前言 CTFHub 专注网络安全、信息安全、白帽子技术的在线学习,实训平台。提供优质的赛事及学习服务,拥有完善的题目环境及配套 writeup ,降低 CTF 学习入门门槛,快速帮助选手成长,跟随主流比赛潮流。 0x01 题目描述…

一篇文章让你上手Canal数据同步神技~

视频教程传送门: Canal极简入门:一小时让你快速上手Canal数据同步神技~_哔哩哔哩_bilibiliCanal极简入门:一小时让你快速上手Canal数据同步神技~共计13条视频,包括:01.课前导学与前置知识点、02.Canal组件了解、03.My…

光纤收发器可以连接光模块吗?

随着科技的进步发展,城市信息化速度的加快,光通信产品在数据中心和安防监控等场景中的运用越来越广泛,而这之间的连接则需要光模块和光纤收发器来实现。很多用户对光模块和光纤收发器的使用有些疑虑,两者该如何连接?又…

2023年5月实时获取地图边界数据方法,省市区县街道多级联动【附实时geoJson数据下载】

首先,来看下效果图 在线体验地址:https://geojson.hxkj.vip,并提供实时geoJson数据文件下载 可下载的数据包含省级geojson行政边界数据、市级geojson行政边界数据、区/县级geojson行政边界数据、省市区县街道行政编码四级联动数据&#xff0…