【操作系统笔记】高速缓存

CPU 高速缓存

存储器的分层结构:

问题:为什么这种存储器层次结构行之有效呢?

衡量 CPU 性能的两个指标:

  • 响应时间(或执行时间):执行一条指令平均时间

  • 吞吐量,就是 1 秒内 CPU 可以执行的指令的总条数

响应时间越小、吞吐量越大,那么CPU的性能当然就越好了。

高速缓存在 CPU 芯片中,位于寄存器 文件和主存之间

为什么需要高速缓存呢?

随着时间变迁,CPU和内存之间的性能差距越来越大:

为了弥补两者之间的性能差异,我们在现代 CPU 中引入了高速缓存。





高速缓存寻址

问题:如何定位 CPU 高速缓存中的数据?

多处理器系统

  • 一般的话 CPU 同一时刻只能执行一条指令(也可能同一时刻执行多条指令的不同阶段),也就是只能串行执行指令

  • 多处理器系统将多个 CPU 集成到一个集成电路芯片上,每个 CPU 称为一个 CPU 核心

多核心处理器

  • 使得同一时刻可以同时并行的执行多条指令,从而提高处理器的吞吐量
  • 超线程技术可以使得一个核心当两个核心用,称为逻辑处理器



相关推荐
冰冷的希望1 小时前
【系统】VMware17虚拟机安装黑苹果macOS 15.0详细步骤(保姆级)
macos·操作系统·系统·vmware·虚拟机·黑苹果
请输入蚊子17 小时前
«操作系统真像还原» 第二章 编写MBR主引导记录
linux·汇编·操作系统·bochs·操作系统真像还原
添砖java‘’2 天前
线程的互斥与同步
linux·c++·操作系统·线程·信息与通信
燃于AC之乐2 天前
【Linux系统编程】进程控制完全指南:从fork创建、优雅终止到进程等待的全面解析
linux·操作系统·进程控制·进程创建·进程等待·进程终止·fork函数
Trouvaille ~3 天前
【Linux】Linux线程概念与控制(四):glibc源码剖析与实现原理
linux·运维·服务器·c++·操作系统·glibc·线程控制
_OP_CHEN3 天前
【Linux系统编程】(二十四)深入 Ext2 块组内部:inode、数据块与目录的底层工作机制
linux·操作系统·文件系统·c/c++·inode·块组·数据块映射
番茄灭世神4 天前
Linux从入门到进阶第一章
linux·计算机·操作系统
燃于AC之乐4 天前
【Linux系统编程】进程地址空间完全指南:页表、写时拷贝与虚拟内存管理
linux·操作系统·虚拟内存·进程地址空间
_OP_CHEN4 天前
【Linux系统编程】(二十三)从块到块组:Ext2 文件系统核心架构的初步认识
linux·操作系统·文件系统·c/c++·ext2文件系统·磁盘分区·块组
Byte不洛5 天前
Linux 多线程编程入门:线程栈、TLS、互斥锁与条件变量详解
linux·操作系统·多线程·pthread·线程互斥