linux内核设计与实现读书笔记——页高速缓存

一、页高速缓存

内容对应磁盘上的物理的内存物理页面。

写缓存实现策略:

1)nonwrite:直接写磁盘,同时将缓存中数据失效。

2)write-through cache:自动更新内存缓存同时更新磁盘文件。

3)写回:写到缓存中并标记页面为脏,加入脏页链表中,由写回进程周期性写回磁盘。(linux使用的方法)

缓存回收策略:

1)最近最少使用LRU:跟踪页面的访问(或按照访问时间顺序的页链表)

2)双链策略:修改的LRU。维护活跃链表和非活跃链表。以队列的形式换出。(linux使用)

 二、laddress_space

linux页高速缓存可以缓存任何基于页的对象,可以包含多个不连续的物理磁盘块。

address_space对象:管理缓存项和页IO操作,对应虚拟地址vm_area_struct的物理地址,定义在<linux/fs.h>中。

i_mmap :优先搜索树,将堆与radix树结合的快速检索书,搜索范围包括address_space中所有共享与私有的映射页面。

基树radixtree:每个address_space都对应唯一基树,是i二叉树,可以根据偏移量检索页。<linux/radix_tree.h>

操作: 提供了与页高速缓存交互的方法,包括读页、更新等。

三、fulsher线程

脏页写回的情况:

1)空闲内存低于特定阈值

2)臧晔在内存中驻留时间超过某个阈值

3)进程调用sync和fsync系统调用时

脏页写回由一群内核线程执行flusher。不同的flusher线程处理不同的设备队列,避免了一个忙磁盘其它饥饿的情况。现在flusher和每个设备关联。

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值