day17-高速缓冲区的管理机制

1.目的

        用户与磁盘进行文件交互时的流程

        磁盘与高速缓冲区的关系

        加深块设备驱动的理解

        hash 循环链表 单链表的使用方法

2.高速缓冲区的工作流程

        高速缓冲区中存储这对应的块设备驱动的数据

        当从块设备中读取数据的时候,OS首先会从高速缓冲区中进行检索,如果没有则从块设备中读出数据,如果有且为最新的,就直接和该高速缓冲区进行数据交互。

buffer.c

高速缓冲区中有缓冲区低区和高区

低区和高区中的缓冲块一一对应

缓冲区的描述头-------高速缓冲区

高速缓冲区的头是?

        高速缓冲区的头是一个结构体,里面存着高速缓冲区所有的状态 时间 信息

struct buffer_head {
	char * b_data;			/* pointer to data block (1024 bytes) */ 数据区 1k
	unsigned long b_blocknr;	/* block number */        数据逻辑块号 1k
	unsigned short b_dev;		/* device (0 = free) */    块设备号
	unsigned char b_uptodate;
	unsigned char b_dirt;		/* 0-clean,1-dirty */
	unsigned char b_count;		/* users using this block */
	unsigned char b_lock;		/* 0 - ok, 1 -locked */
	struct task_struct * b_wait;
	struct buffer_head * b_prev;
	struct buffer_head * b_next;
	struct buffer_head * b_prev_free;
	struct buffer_head * b_next_free;
};

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/168462.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

当代职场人做分析,当然要用大数据分析工具

不管是从效率、分析的可用性以及灵活性来看,用大数据分析工具都还板上钉钉的。毕竟大数据分析工具集齐了大数据时代数据分析工具应具备的特点优势。 1、对接ERP,立得100BI报表 点击对接金蝶、用友ERP后,BI系统立即即可取数分析,…

移动云电脑:摆脱传统桎梏,助推企业数字化转型

如今,随着“云”在企业数字化转型战略中的作用日益凸显,上云是企业数字化转型第一步,已成为业界共识。尤其对于中小企业而言,数字化转型更是一种生存之道。 实际上,企业数字化转型面临很多传统桎梏。例如,数…

邮箱设置第三方登录授权码获取

以QQ邮箱为例 QQ邮箱设置——账户 开启POP3/SMTP服务——完成验证后获得授权码,保存授权码

如何用内容营销推动企业成长?媒介盒子教你三步实现

信息时代下每个人都能通过网络了解自己所需的信息,企业与受众的接触也更加直接,企业在获得更多消费者触达通道的同时,消费者也在经历信息爆炸和碎片化,如何在大量信息中脱颖而出,抓住消费者心智,成为许多品…

Sublime Text:代码编辑器的卓越典范

Sublime Text是一款高效、强大且灵活的代码编辑器,在开发社区中广受欢迎。它不仅提供了丰富的功能,还具备美观的界面和卓越的性能,成为了众多开发者的首选工具。 Sublime Text的优点 高性能:Sublime Text具有极高的启动速度和响…

深入理解 synchronized 原理

目录 一. 前言 二. Java对象的内存布局 2.1. 对象头 2.2. Mark Word 2.3. Class Metadata Pointer 2.4. Length 三. 偏向锁 3.1. 偏向锁的工作流程 3.2. 偏向失效 3.2.1. 误区一 3.3. 偏向撤销 3.3.1. 误区一 3.4. 偏向撤销的底层实现 3.5. HashCode与偏向撤销 …

【数据结构】——双链表(增删查改)

目录 前言: 一:双链表的定义 ​编辑 二:双向链表的实现 2.1:链表的构造 2.2:创建头节点 2.3:创建节点 2.4:链表的尾插 2.5:链表的打印 2.6:链表的尾删 2.7&a…

【C++百宝箱】语法总结:引用 | 内联函数 | auto | 范围for循环

🚩纸上得来终觉浅, 绝知此事要躬行。 🌟主页:June-Frost 🚀专栏:C入门宝典 🔥本文主要探讨C的语法,并深入了解C如何针对C语言中存在的不合理之处进行优化改进。 目录: ⌛…

数据资产入表规划演示(无形资产路线)

数据“入表”有利于企业盘活数据资产、数据资产的交易定价等,通过数据资产“入表”可以加快数据要素市场化配置,为下一步全国数据市场要素市场建立提供基础支撑。数据资产入表,可以拆解为三步,第一步是入表形成原始资产&#xff0…

机器学习的概念和类型

1、人工智能、机器学习、深度学习之间的关系 人工智能(AI)是广泛的概念,指赋予计算机智能特性。机器学习(ML)是AI的一个分支,是指通过计算机学习和改进性能。深度学习(DL)是ML的一类…

IP地理位置定位技术:保护网络安全的新利器

随着互联网的普及和网络活动的日益频繁,网络安全问题越来越受到人们的关注。恶意流量攻击、网络欺诈等网络安全威胁层出不穷,如何准确识别和定位网络攻击者成为一项重要任务。在这个背景下,IP地理位置定位技术应运而生,为网络安全…

Sam Altman 或回归 OpenAI;格力 1.3 万研发人员没有海归派 外国人丨 RTE 开发者日报 Vol.86

开发者朋友们大家好: 这里是 「RTE 开发者日报」 ,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE (Real Time Engagement) 领域内「有话题的 新闻 」、「有态度的 观点 」、「有意思的 数据 」、「有思考的 文…

Databend 开源周报第 120 期

Databend 是一款现代云数仓。专为弹性和高效设计,为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务:https://app.databend.cn 。 Whats On In Databend 探索 Databend 本周新进展,遇到更贴近你心意的 Databend 。 使用自定义 CON…

PIL中ImageFilter模块几种图片滤波处理和使用方法

PIL中ImageFilter模块几种图片滤波处理和使用方法 1 关于PIL库1.1 PIL简单介绍1.2 常见PIL子库或类 2 ImageFilter模块滤波处理2.1 图片轮廓2.2 浮雕效果2.3 边缘增强2.4 图片模糊2.5 细节增强2.6 不同灰度边缘增强2.7 寻找边缘信息2.8 平滑处理2.9 深度平滑处理2.10 锐化处理 …

百分点科技|怎样做数据运营,才能让数据中台真正用起来?

导读:大多数企业用户已完成数据平台初步建设工作,但数据在业务运营和管理中没有发挥应有价值。数据开发工作繁重,数据质量问题严重,IT、数据和业务协作不畅,诸多问题依然困扰着企业用户的IT部门和数据部门。数据运营成…

如何通过cpolar内网穿透工具实现远程访问本地postgreSQL

文章目录 前言1. 安装postgreSQL2. 本地连接postgreSQL3. Windows 安装 cpolar4. 配置postgreSQL公网地址5. 公网postgreSQL访问6. 固定连接公网地址7. postgreSQL固定地址连接测试 前言 PostgreSQL是一个功能非常强大的关系型数据库管理系统(RDBMS),下…

77基于matlab的蚁群优化路径算法,二维路径和三维路径优化

基于matlab的蚁群优化路径算法,二维路径和三维路径优化。输出可视化最优路径和距离迭代曲线。数据可更换自己的,程序已调通,可直接运行。 77三维和二维路径可视化 (xiaohongshu.com)

rotation matrix reflection matrix

文章目录 1. rotation matrix1.1 结论 2. reflection matrix2.1 结论 1. rotation matrix 图像逆时针旋转 θ \theta θ的矩阵 Q r o t a t e [ cos ⁡ θ − sin ⁡ θ sin ⁡ θ cos ⁡ θ ] (1) Q_{rotate}\begin{bmatrix}\cos\theta&-\sin\theta\\\sin\theta&\c…

Unity中Shader法线贴图(下)实现篇

文章目录 前言一、回顾一下上一篇中公式二、在Shader中实现1.appdata中定义NORMAL与TANGENT语义.2.v2f中声明三个变量用于组成成切线空间下的旋转矩阵.3.在顶点着色器中执行:4.在片断着色器中计算出世界空间下的法线,然后再拿去进行需要的计算: 三、最终效果 前言 我们在这篇文…

NLP | SimKGC论文详解及项目实现

本文主要讲解了论文SimKGC:基于预训练语言模型的简单对比KGC的论文总结以及项目实现。 论文题目:2022_SimKGC: Simple Contrastive Knowledge Graph Completion with Pre-trained Language Models 论文地址:2022.acl-long.295.pdf (aclanthol…