操作系统精髓与设计原理(原书第6版)——学习笔记(3)

本文详细探讨了高速缓存的工作原理和设计,包括高速缓存的动机、基本原理以及设计考虑因素,如大小、块大小、映射函数、替换算法和写策略。高速缓存利用局部性原理提高处理器性能,通过最近最少使用(LRU)等算法实现有效替换。
摘要由CSDN通过智能技术生成


    条件d)有效的基础是访问的局部性原理[DENN68]。在执行程序期间,处理器的指令访存呈现“簇”状(一组数据集合)。典型的程序包含许多迭代循环和子程序,一旦程序进入一个循环或子程序执行,就会重复访问一个小范围的指令集合。同理,对表和数组的操作也涉及存取“一簇”数据。经过很长的一段时间,程序访问的“簇”会改变,但在较短的时间内,处理器主要访问存储器中固定的“簇”。

         因此,可以通过层次组织数据,使得随着组织层次的递减,对各层次的访问比例也依次递减。此原理可以应用于多级存储器组织结构中。最快、最小和最贵的存储器类型由位于处理器内部的寄存器组成。在典型情况下,一个处理器包含多个寄存器,某些处理器包含上百个寄存器。向下跳过两级存储器层次就到了内存层次,内存是计算机中主要的内部存储器系统。内存中的每个单元位置都有一个唯一的地址对应,而且大多数机器指令会访问一个或多个内存地址。内存通常是高速的、容量较小的高速缓存的扩展。高速缓存对处理器不可见,它应用于在内存和处理器之间分段移动数据,以提高数据访问的性能。

         外部的、非易失性的存储器称为二级存储器辅助存储器,它们用于存储程序和数据文件,其表现形式是程序员可以看到文件和记录,而不是单个的字节或字。

         在软件中还可以有效的增加额外的存储层次。这种技术,有时称为磁盘高速缓存,可以通过两种方法提高性能:

  • 磁盘成簇写。即采用次数少、数据量大的传输方式,而不是次数多、数据量小的传输方式。选择整批数据一次传输可以提高磁盘的性能,同时减少对处理器的影响。

  • 一些注定要“写入”的数据也许会在下一次存储到磁盘之前被程序访问到。在此情况下,数据能够迅速地从软件设置的磁盘高速缓存中取出,而不是从缓慢的磁盘

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WEL测试

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值