Linux0.11源码分析---文件系统管理---高速缓冲区分析

本文介绍了实际物理内存中从1M到4M范围内的缓冲区管理方式,包括缓冲块的结构和逻辑,以及如何通过空闲缓冲队列和HashTable进行管理。主要讨论了用于读取缓冲块的函数如bread系列函数,搜索缓冲块的getblk函数,以及释放缓冲块的brelse函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实际物理内存:1M---4M

缓冲区结构:低端是buffer_head缓冲头结构----高端是缓冲块

缓冲块的结构与逻辑盘的大小相同;

缓冲区的管理:空闲缓冲队列(双向的循环列表)和HashTable来进行管理

主要的函数分为:(1)上层的读取函数 bread 、breada 、bread_page等目的是读取缓冲块、函数的参数是设备号+设备上对应的数据的逻辑块号

(2)缓冲块的搜索函数:getblk主要目的是搜索前面几个函数对应的缓冲块、主要的返回结构包括一个请求的缓冲块或者是空闲的缓冲块。

(4)brelse函数主要是释放缓冲块。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值