当前位置: 首页 > news >正文

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

1.目的

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

        磁盘与高速缓冲区的关系

        加深块设备驱动的理解

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

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

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

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

buffer.c

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

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

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

高速缓冲区的头是?

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

struct buffer_head {char * b_data;			/* pointer to data block (1024 bytes) */ 数据区 1kunsigned long b_blocknr;	/* block number */        数据逻辑块号 1kunsigned 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;
};

 

 

相关文章:

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

1.目的 用户与磁盘进行文件交互时的流程 磁盘与高速缓冲区的关系 加深块设备驱动的理解 hash 循环链表 单链表的使用方法 2.高速缓冲区的工作流程 高速缓冲区中存储这对应的块设备驱动的数据 当从块设备中读取数据的时候,OS首先会从高速缓冲区中进行检索&#xff0…...

文心一言 VS 讯飞星火 VS chatgpt (139)-- 算法导论11.4 3题

三、用go语言,考虑一个采用均匀散列的开放寻址散列表。当装载因子为 3/4 和 7/8 时,试分别给出一次不成功查找和一次成功查找的探查期望数上界。 文心一言: 在开放寻址法中,当散列表的装载因子超过其阈值时,会触发重…...

Java 解压文件

maven库&#xff1a; <!--FileUtil、ZipUtil 依赖--> <dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.3.1</version> </dependency><!--IOUtils 依赖--> <depen…...

SASS/SCSS精华干货教程

目录 介绍 基本说明 特点 sass语法格式sass的语法格式一共有两种&#xff0c;一种是以".scss"作为拓展名&#xff0c;一种是以".sass"作为拓展名&#xff0c;这里我们只讲拓展名&#xff1a; 编译环境安装 Vscode安装编译插件 简单使用 sass语法扩张…...

8.jib-maven-plugin构建springboot项目镜像,docker部署配置

目录 1.构建、推送镜像 1.1 执行脚本 2.2 pom.xml配置 ​2.部署镜像服务 2.1 执行脚本 2.2 compose文件 3.docker stack常用命令 介绍&#xff1a;使用goole jib插件构建镜像&#xff0c;docker stack启动部署服务&#xff1b; 通过执行两个脚本既可以实现构建镜像、部…...

海康威视综合安防管理平台任意文件上传

系统介绍 HIKVISION iSecure Center综合安防管理平台是一套“集成化”、“智能化”的平台&#xff0c;通过接入视频监控、一卡通、停车场、报警检测等系统的设备&#xff0c;获取边缘节点数据&#xff0c;实现安防信息化集成与联动&#xff0c;公众号&#xff1a;web安全工具库…...

Linux环境下C++ 接入OpenSSL

接上一篇&#xff1a;Windows环境下C 安装OpenSSL库 源码编译及使用&#xff08;VS2019&#xff09;_vs2019安装openssl_肥宝Fable的博客-CSDN博客 解决完本地windows环境&#xff0c;想赶紧在外网环境看看是否也正常。毕竟现在只是HelloWorld级别的&#xff0c;等东西多了&am…...

美国网站服务器SSL证书介绍

美国网站服务器的SSL证书也是一种数字证书&#xff0c;由权威数字证书机构CA验证网站的身份后所颁发&#xff0c;可实现浏览器与网站主机之间的数据传输加密。美国网站服务器搭建的网站在安装SSL证书后会在浏览器显示安全锁标志&#xff0c;数据传输协议则从HTTP传统协议升级为…...

JSP命令标签 静态包含/动态包含

好 下面我们聊聊JSP中的指令标签 这边 我们来说两个 分别是 静态包含 和 动态包含 我们可以将重用性代码包含起来 更好的使用 比如 我们界面上中下 分别有三个导航栏 那么 如果你写三份 就会出现很多重复代码 而且 改起来 也很不方便 要一次改三份 口说无凭 我们来做一个小案…...

Cesium点位弹窗

1.弹窗没法向加入点位一样加入到地图内部&#xff0c;entity没法实现 2.使用绝对定位&#xff0c;将地图组件通过定位加入到地图上&#xff0c;注意弹窗层级一定在地图上 3.通过判断点击位置是否是点位来获取entity信息&#xff0c;将信息显示在弹窗 4.将点击处点位的经纬度转为…...

基于单片机16路抢答器仿真系统

**单片机设计介绍&#xff0c; 基于单片机16路抢答器仿真系统 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机的16路抢答器仿真系统是一种用于模拟和实现抢答竞赛的系统。该系统由硬件和软件两部分组成。 硬件方面&am…...

Linux常用命令亲测总结

在实际开发中&#xff0c;经常会进行下位机的搭建&#xff0c;在搭建过程中&#xff0c;对于常用的LInux命令进行总结&#xff0c;方便自己使用 1.rm -rf 删除对应文件&#xff08;字节小的&#xff09; 2、ln -s 文件关联&#xff08;长的关联短的。三个则关联两次&#xff0…...

二百零六、Flume——Flume1.9.0单机版部署脚本(附截图)

一、目的 在实际项目部署时&#xff0c;要实现易部署易维护&#xff0c;需要把安装步骤变成安装脚本实现快速部署 二、部署脚本在Linux中文件位置 文件夹中只有脚本文件flume-install.sh和tar包apache-flume-1.9.0-bin.tar.gz 三、Flume安装脚本 #!/bin/bash #获取服务器名…...

不必购买Mac,这款国产设计工具能轻松替代Sketch!

介绍 即时设计是新一代可以直接在浏览器中使用的设计工具&#xff0c;具有Sketch和实时协作功能。与本地Sketch相比&#xff0c;增加了实时协作功能&#xff0c;即时设计可以看作是在线Sketch&#xff0c;两个工具可以简单粗暴地总结为一个公式&#xff1a; 即时设计Sketch云…...

通过多线程的方式每次发送10条MQ消息

背景&#xff1a;传入一个List<person>,不知道list中有多少条数据。 import org.apache.rocketmq.client.producer.DefaultMQProducer; import org.apache.rocketmq.client.producer.Message; import org.apache.rocketmq.client.producer.SendResult;import java.util.A…...

springboot上传文件后显示权限不足

前言&#xff1a; 最近一个老项目迁移&#xff0c;原本一直好好的&#xff0c;迁移后上传文件的功能使用不正常&#xff0c;显示文件没有可读取权限&#xff0c;这个项目并不是我们开发和配置的&#xff0c;由第三方开发的&#xff0c;我们只是接手一下。 前端通过api上传文件…...

spring-boot-maven-plugin插件 —— 打包时减小jar包的大小方法

Maven 在打包时会将所依赖的 jar 包全部打包进去&#xff0c;包含了所有的依赖和资源文件&#xff0c;就会导致打出来的包比较大。如果再上传服务器&#xff0c;那么耗时特别长。 由于依赖包变化小&#xff0c;占用空间大&#xff0c;而且大部分情况是添加一次后&#xff0c;就…...

java Bigdecimal

一、BigDecimal概述 BigDecimal是Java在java.math包中提供的线程安全的API类&#xff0c;用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数&#xff0c;但在实际应用中&#xff0c;可能需要对更大或者更小的数进行运算和处理。一般情况下&am…...

【C++11并发】thread 笔记

简介 进程和线程的区别 进程&#xff1a;一个在内存中运行的应用程序。每个进程都有自己独立的一块内存空间&#xff0c;一个进程可以有多个线程&#xff0c;比如在Windows系统中&#xff0c;一个运行的xx.exe就是一个进程。 线程&#xff1a;进程中的一个执行任务&#xff08…...

OBS Studio免费开源录屏工具

OBS是Open Broadcaster Software的缩写&#xff0c;是一款免费且开源的多平台录屏和直播软件。它可以用于录制屏幕、捕获游戏、创建教学视频、直播游戏等。OBS功能强大且灵活&#xff0c;提供了许多配置选项和自定义功能&#xff0c;使用户能够根据自己的需求进行设置和调整。它…...

3个理由让你爱上VR-Reversal:在普通电脑上自由探索VR世界

3个理由让你爱上VR-Reversal&#xff1a;在普通电脑上自由探索VR世界 【免费下载链接】VR-reversal VR-Reversal - Player for conversion of 3D video to 2D with optional saving of head tracking data and rendering out of 2D copies. 项目地址: https://gitcode.com/gh…...

脑机接口的 “信号生命线”:自研模拟前端如何破解非侵入式采集的性能困局

近些年来&#xff0c;脑机接口技术飞速发展&#xff0c;打破了人脑与外部设备之间的沟通壁垒&#xff0c;摆脱肢体、语言的限制&#xff0c;实现大脑信号与机器设备的直接交互。这项技术广泛应用于医疗康复、智能交互、疲劳监测、认知分析等领域&#xff0c;也是当下人工智能、…...

3Dmigoto:如何让破败的立体游戏重获新生?

3Dmigoto&#xff1a;如何让破败的立体游戏重获新生&#xff1f; 【免费下载链接】3Dmigoto DX11 modding wrapper to enable fixing broken stereoscopic effects. Warning: 3Dmigoto[.]com is a phishing site, not us. 项目地址: https://gitcode.com/gh_mirrors/3d/3Dmig…...

【 linux 】来完成一个进度条吧

c语言是有缓冲区的&#xff0c;缓冲区刷新有三种方式&#xff0c;输入\n&#xff0c;程序结束后自动刷新&#xff0c;fflush&#xff08;stdout&#xff09;手动刷新。效果展示视觉上#是逐个往后加的&#xff0c;这是视觉欺骗。事实是每次#都是从头开始的&#xff0c;只不过计算…...

MoE模型中‘2%激活率’的原理、陷阱与工程实践

1. 这不是“参数越多越好”的简单故事&#xff1a;GPT-4参数量与激活机制的真实逻辑你可能已经看到过那条刷屏的推文&#xff1a;“GPT-4有1.8万亿参数&#xff0c;但每次只用其中2%。”这句话像一颗小石子&#xff0c;砸进了AI圈的池塘&#xff0c;激起一圈又一圈的涟漪——有…...

Python:4 == 4.0 结果为True的原因

特殊情况&#xff1a;在 Python 中&#xff0c;整数和浮点数进行比较时&#xff0c;如果数值相等&#xff0c;则结果为 True。即 4 4.0 的结果是 True。如果两个对象代表相同的概念或数值&#xff0c;即使类型不同&#xff08;如 int 和 float&#xff09;&#xff0c;也可能返…...

保姆级教程:在Gazebo中为你的ROS机器人添加激光雷达和摄像头(附完整xacro配置)

Gazebo传感器配置实战&#xff1a;从激光雷达到摄像头的全流程解析 在机器人仿真开发中&#xff0c;让虚拟机器人"看得见"往往比让它"动起来"更具挑战性。许多开发者精心设计了URDF模型&#xff0c;却在Gazebo中遭遇传感器数据无法显示的困境——激光雷达没…...

5分钟掌握终极音乐解密方案:Unlock Music Electron完整指南

5分钟掌握终极音乐解密方案&#xff1a;Unlock Music Electron完整指南 【免费下载链接】unlock-music-electron Unlock Music Project - Electron Edition 在Electron构建的桌面应用中解锁各种加密的音乐文件 项目地址: https://gitcode.com/gh_mirrors/un/unlock-music-ele…...

3分钟部署OpenClaw最新版v2026.4.26指南,可视化小白可用操作简单

装OpenClaw这件事&#xff0c;说难不难&#xff0c;但真要踩到坑里也挺耽误时间的。今天把我踩过的几个坑整理出来&#xff0c;给大家省点排查时间。 下载地址&#xff1a;https://top.wokk.cn&#xff0c;有详细版本说明可以先看一下。 坑1&#xff1a;PowerShell执行策略拦路…...

Claude Desktop for Linux桌面集成:.desktop文件与MIME类型配置

Claude Desktop for Linux桌面集成&#xff1a;.desktop文件与MIME类型配置 【免费下载链接】claude-desktop-debian Claude Desktop for Linux 项目地址: https://gitcode.com/GitHub_Trending/cl/claude-desktop-debian Claude Desktop for Linux是一款强大的桌面应用…...