当前位置: 首页 > news >正文

计算机组成原理-存储系统-缓存存储器(Cache)

目录

 一、Cache基本概念

1.2性能分析

二、 Cache和主存的映射发生

 ​​​​​​2.1全相连映射​编辑

 2.2直接映射​编辑

 2.3组相连映射

三、Cachae的替换算法

3.1 随机算法(RADN)

3.2 先进先出算法(FIFO)

3.3 近期最少使用(LRU)

3.4 最近不经常使用(LFU)

四、写策略

4.1写命中

4.2写不命中

多级Cache


 一、Cache基本概念

CPU速度太快,内存相比太慢,Cache为2者中间的缓存速度的

1.1局部性原理(操作系统也讲)

        ① 时间局部性原理

                在未来使用的信息,可能正在使用                     (参考代码for循环)

        ② 空间局部性原理

                未来使用的信息可能于正在使用的信息存储空间相邻       (参考数组的顺序存储)

1.2性能分析

命中率H:CPU访问的信息在Cache的比率

缺失率(未命中)M:M=1-H 

Cache--主存系统的平均访问时间t为t=Ht_c+(1-H)(t_c+t_m)tc访问cache时间,tm主存时间

二、 Cache和主存的映射发生

 存储系统里的存储相关知识

 ​​​​​​2.1全相连映射

 2.2直接映射

 2.3组相连映射

三、Cachae的替换算法

3.1 随机算法(RADN)

cache已满,则随机选择一块替换     没考虑局部性原理

3.2 先进先出算法(FIFO)

先加入cache的先被替换

没考虑局部性原理。会出现”抖动现象“:刚被换出又调用

3.3 近期最少使用(LRU)

为每个cache块设置一个计数器,用于记录每个cache块已经多久没被访问,计数器大的先替换

cache块数=2^n,计数器n位

 n个cache块列一个表格,在要被替换的向前低n个重复的值,就是要替换的,5未命中,n为4,前面n个未重复的值为  2  1  4  3,所以替换3

3.4 最近不经常使用(LFU)

设置一个计数器,记录每个cache被访问过几次,,替换计数器最小的

未符合局部性原理

四、写策略

4.1写命中

4.1.1全写法(写直通法)

命中时,必须把数据同时写入Cache和主存,一般使用写缓存

4.1.2写回法

只修改Cache的内容,而不立即写入主存,只有当此块被换出时才写回主存

4.2写不命中

4.2.1 写分配法

不命中时, 先把主存的块调入Cache,后在Cache写          (通常搭配写回法)

4.2.2 非写分配法 

不命中时。只写主存,不调入Cache                (搭配全写法)

 

多级Cache

(Cache套娃)

相关文章:

计算机组成原理-存储系统-缓存存储器(Cache)

目录 一、Cache基本概念 1.2性能分析 二、 Cache和主存的映射发生 ​​​​​​2.1全相连映射​编辑 2.2直接映射​编辑 2.3组相连映射 三、Cachae的替换算法 3.1 随机算法(RADN) 3.2 先进先出算法(FIFO) 3.3 近期最少使用(LRU) 3.4 最近不经常使用(LFU) 四、写策略 4…...

打开c语言生成exe文件,出现闪退的解决方法

为什么打开c语言生成的exe文件,立马闪退。 起初个别问的时候,我只是简单的说明程序运行完了,就自动关了, 首先,生成的exe文件本质是控制台程序,这些都是依赖于windows的控制台窗口,程序执行完…...

算法基础学习笔记——⑩DFS与BFS\树与图

✨博主:命运之光 ✨专栏:算法基础学习 目录 DFS与BFS\树与图 ✨DFS ✨BFS 🍓宽搜流程图如下: 🍓宽搜流程: 🍓广搜模板 ✨树与图 🍓树是特殊的图(连通无环的图&am…...

chatgpt赋能python:Python中可迭代对象的介绍

Python中可迭代对象的介绍 Python是一种高级编程语言,它具有简单易学、可读性强、功能强大等特点,成为了数据科学、机器学习、Web开发等领域的热门选择。Python中有很多重要的概念和功能,其中之一就是支持可迭代对象的概念。 在Python中&am…...

报表控件FastReport使用指南——如何打开WebP格式的图片

FastReport 是功能齐全的报表控件,可以帮助开发者可以快速并高效地为.NET,VCL,COM,ActiveX应用程序添加报表支持,由于其独特的编程原则,现在已经成为了Delphi平台最优秀的报表控件,支持将编程开…...

【鲁棒、状态估计】用于电力系统动态状态估计的鲁棒迭代扩展卡尔曼滤波器研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

整理6个超好用的在线编辑器!

随着 Web 开发对图像可扩展性、响应性、交互性和可编程性的需求增加,SVG 图形成为最适合 Web 开发的图像格式之一。它因文件小、可压缩性强并且无论如何放大或缩小,图像都不会失真而受到欢迎。然而,为了编辑 SVG 图像,需要使用 SV…...

ArcGIS10.8下载及安装教程(附安装步骤)

谷歌云: https://drive.google.com/drive/folders/10igu7ZSMaR0v0WD7-2W-7ADJGMUFc2ze?uspsharing ArcGIS10.8 百度网盘: https://pan.baidu.com/s/1s5bL3QsCP5sgcftCPxc88w 提取码:kw4j 阿里云: https://www.aliyundriv…...

AI智能照片编辑:AI Photo for Mac

AI Photo是一款Mac平台上的智能照片编辑软件,它基于人工智能技术,可以帮助用户快速、轻松地对照片进行编辑和美化。AI Photo提供了多种智能修复和美化功能,包括自动调整色彩、对比度、亮度、清晰度等,使得照片的质量得到有效提升。…...

Tuxera for Mac2023中文版读写硬盘U盘工具

在日常生活中,我们使用Mac时经常会遇到外部设备不能正常使用的情况,如:U盘、硬盘、软盘等等一系列存储设备,而这些设备的格式大多为NTFS,Mac系统对NTFS格式分区存在一定的兼容性问题,不能正常读写。 那么什…...

项目遇到的实际需求: java从信任所有证书到对server证书进行校验

最近项目上开发了一个rest api,放在了一台linux服务器上,并且启用了https连接;在另一台服务器上写了一个功能需要去调用linux机器上的api。 项目里面自己封装了一个HttpsClient的类,用来发送https请求,并且在里面重写了…...

使用JS来实现轮播图的效果

最好今天分享一个使用JS制作的轮播图效果 个人名片: 😊作者简介:一名大一在校生,web前端开发专业 🤡 个人主页:几何小超 🐼座右铭:懒惰受到的惩罚不仅仅是自己的失败,…...

Springboot +spring security,自定义认证和授权异常处理器

一.简介 在Spring Security中异常分为两种: AuthenticationException 认证异常AccessDeniedException 权限异常 我们先给大家演示下如何自定义异常处理器,然后再结合源码帮助大家进行分析 二.创建项目 如何创建一个SpringSecurity项目,前…...

Dockerfile(1) - FROM 指令详解

FROM 指明当前的镜像基于哪个镜像构建dockerfile 必须以 FROM 开头&#xff0c;除了 ARG 命令可以在 FROM 前面 FROM [--platform<platform>] <image> [AS <name>]FROM [--platform<platform>] <image>[:<tag>] [AS <name>]FROM […...

【嵌入式Linux】源码菜单配置 | 编译 | 菜单配置的实现 | 源码编译的实现

源码配置编译 源码配置编译,要把中间各个环节都理清楚 厂商把自己增加的东西专门放了个文件独立&#xff0c;方便开发者发现变化 1.菜单配置 移植的第一步&#xff0c;就是选配&#xff0c;通过make menuconfig图形化界面选配 //载入配置 $ make ARCHarm64 tegra_defconfi…...

python自动化爬虫实战

python自动化爬虫实战 偶然的一次机会再次用到爬虫&#xff0c;借此机会记录一下爬虫的学习经历&#xff0c;方便后续复用。 需求&#xff1a;爬取网站数据并存入的csv文件中&#xff0c;总体分为两步 爬取网站数据存到到csv文件中 1、配置爬虫环境 1.1、下载自动化测试驱动 …...

LVGL-最新版本及其版本定义标准

lvgl的最新版本是9.0.0&#xff0c;处于开发分支中。 稳定版本是8.3.0. 建议一般开发使用稳定版8.3.0. .\lvgl.h定义了当前版本 /*************************** CURRENT VERSION OF LVGL ***************************/ #define LVGL_VERSION_MAJOR 8 #define LVGL_VERSION_MINO…...

ORB_SLAM2算法中如何计算右目和左目两个特征点的是否匹配?

文章目录 if(kpR.octave<levelL-1 || kpR.octave>levelL+1)const int &levelL = kpL.octave;if(uR>=minU && uR<=maxU)const cv::Mat &dR = mDescriptorsRight.row(iR);const int dist = ORBmatcher::DescriptorDistance(dL,dR);筛选最佳匹配特征点…...

Android 12.0系统Settings主页去掉搜索框

1.概述 在12.0定制化开发中,在系统原生设置中主页的搜索框是要求去掉的,不需要搜索功能,所以首选看下布局文件 看下搜索框是哪个布局,然后隐藏到布局,达到实现功能的目的 2.系统Settings主页去掉搜索框的主要代码 packages/apps/Settings/src/com/android/settings/home…...

电脑数据丢失如何恢复

随着电脑使用的日益普及&#xff0c;数据丢失成为了很多用户不得不面对的问题。数据丢失的原因有很多&#xff0c;例如误删除文件、磁盘格式化、电脑病毒等等。一旦发生数据丢失的情况&#xff0c;我们就需要利用专业的数据恢复工具来尽快找回被丢失的数据。下面我们就来详细介…...

【Docker】Docker的安装、使用(安装nginx、mysql、redis)、配置加速镜像、项目部署;查看lastest镜像具体版本并改tag

Docker的安装 官方文档&#xff1a; Docker Docs Docker Hub&#xff1a; Docker Hub Container Image Library | App Containerization centos7安装 1、安装 清华镜像站&#xff1a; docker-ce | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mi…...

[x-cmd] 写给计算机科学爱好者的 x-cmd 入门指南

写给计算机科学爱好者的 x-cmd 入门指南 为什么要用 命令行 整合多样能力: 当你长期只需要做一件事时&#xff0c;其实只需熟悉这项业务的图形用户界面&#xff08;例如一个网页控制台&#xff09;&#xff1b;但如果要处理多项业务时: 例如&#xff0c;在开发时&#xff0c;…...

OmenSuperHub:硬件控制与性能优化的开源工具解决方案

OmenSuperHub&#xff1a;硬件控制与性能优化的开源工具解决方案 【免费下载链接】OmenSuperHub 使用 WMI BIOS控制性能和风扇速度&#xff0c;自动解除DB功耗限制。 项目地址: https://gitcode.com/gh_mirrors/om/OmenSuperHub OmenSuperHub是一款专为惠普暗影精灵系列…...

用干词背单词,30天轻松背完小学词库1200单词!

用这个方法&#xff0c;30天轻松背完小学词库1200单词&#xff01;用干词背单词&#xff0c;30天能轻松背完小学词库1200单词&#xff01;而且会很轻松&#xff01;用干词App背完小学1200词&#xff0c;30天绰绰有余&#xff0c;甚至还能记得牢、忘得慢。小学英语单词量一般在8…...

从理论到模型:HFSS仿真平面发夹滤波器的关键步骤与参数优化

1. HFSS仿真前的理论准备 在开始HFSS仿真之前&#xff0c;我们需要先完成一些理论计算工作。这就像盖房子要先画图纸一样&#xff0c;没有理论指导的仿真就像无头苍蝇。我刚开始做滤波器设计时就犯过这个错误&#xff0c;直接上手建模&#xff0c;结果调参调到怀疑人生。 平面发…...

鸿蒙中 免密身份认证:Online Authentication Kit

本文同步发表于微信公众号&#xff0c;微信搜索 程语新视界 即可关注&#xff0c;每个工作日都有文章更新 在应用开发中&#xff0c;身份认证是一个核心功能。传统的密码登录方式存在记忆成本高、安全性风险大等问题。鸿蒙系统提供了Online Authentication Kit&#xff08;在线…...

FullControl GCode Designer:重新定义3D打印设计的参数化控制工具

FullControl GCode Designer&#xff1a;重新定义3D打印设计的参数化控制工具 【免费下载链接】FullControl-GCode-Designer Software for designing GCODE for 3D printing 项目地址: https://gitcode.com/gh_mirrors/fu/FullControl-GCode-Designer 突破传统3D打印限制…...

新手零压力:跟着快马生成的交互式指南,轻松搞定wsl2安装与初体验

作为一个刚接触开发的新手&#xff0c;第一次听说WSL2时完全摸不着头脑。什么虚拟化、PowerShell命令、Linux发行版&#xff0c;这些名词听着就让人头大。好在最近发现了InsCode(快马)平台&#xff0c;用它生成的交互式WSL2安装指南简直拯救了我这个小白。下面就把我的完整体验…...

原创论文:基于U-Net的肺部CT结节检测系统设计与实现

摘要&#xff1a;肺癌是当前威胁人类健康的重要疾病之一&#xff0c;肺结节作为肺癌早期筛查和诊断的重要影像学表现&#xff0c;其准确检测具有重要意义。CT影像因具有较高的空间分辨率&#xff0c;被广泛应用于肺部疾病检查。然而&#xff0c;传统人工阅片方式存在工作量大、…...

HunyuanVideo-Foley部署教程:vSphere虚拟机中GPU直通RTX4090D配置指南

HunyuanVideo-Foley部署教程&#xff1a;vSphere虚拟机中GPU直通RTX4090D配置指南 1. 环境准备与硬件要求 1.1 硬件配置清单 显卡&#xff1a;RTX 4090D 24GB显存&#xff08;必须&#xff09;CPU&#xff1a;10核及以上&#xff08;推荐Intel Xeon或AMD EPYC&#xff09;内…...