linux0.12-12-fs

news2025/1/12 22:55:38

[606页]

第12章 文件系统

606–12-1-总体功能
607–12-1-1-MINIX文件系统
611–12-1-2-文件类型、属性和目录项
615–12-1-3-高速缓冲区
616–12-1-4-文件系统底层函数
616–12-1-5-文件中数据的访问操作
618–12-1-6-文件和目录管理系统调用
619–12-1-7-360KB软盘中文件系统实例分析

分成4个部分:高速缓冲管理;文件底层操作;文件数据访问;文件高层访问控制。

----1、高速缓冲管理
622–12-2-buffer.c程序
622–12-2-1-功能描述
628–12-2-2-代码注释

----2、文件底层操作
super.c,bitmap.c,truncate.c,inode.c和namei.c程序
638–12-3-bitmap.c程序
639–12-3-1-功能描述
639–12-3-2-代码注释

644–12-4-truncate.c程序
644–12-4-1-功能描述
644–12-4-2-代码注释

647–12-5-inode.c程序
647–12-5-1-功能描述
649–12-5-2-代码注释

658–12-6-super.c程序
658–12-6-1-功能描述
659–12-6-2-代码注释

667–12-7-namei.c程序
667–12-7-1-功能描述
668–12-7-2-代码注释

692–12-8-file_table.c程序
692–12-8-1-功能描述
692–12-8-2-代码注释

----3、文件数据访问
block_dev.c,char_dev.c,pipe.c,file_dev.c和read_write.c

693–12-9-block_dev.c程序
693–12-9-1-功能描述
694–12-9-2-代码注释

697–12-10-file_dev.c程序
697–12-10-1-功能描述
697–12-10-2-代码注释

699–12-11-pipe.c程序
699–12-11-1-功能描述
699–12-11-2-代码注释

704–12-12-char_dev.c程序
704–12-12-1-功能描述
704–12-12-2-代码注释

707–12-13-read_write.c程序
707–12-13-1-功能描述
707–12-13-2-代码注释
710–12-13-3-用户程序读写操作过程

----4、文件的系统调用接口的实现
712–12-14-open.c程序
713–12-14-1-功能描述
713–12-14-2-代码注释

720–12-15-exec.c程序
720–12-15-1-功能描述
723–12-15-2-代码注释
735–12-15-3-其他信息

739–12-16-sta.c程序
739–12-16-1-功能描述
739–12-16-2-代码注释

741–12-17-fcntl.c程序
741–12-17-1-功能描述
742–12-17-2-代码注释

744–12-18-ioctl.c程序
744–12-18-1-功能描述
745–12-18-2-代码注释

746–12-19-select.c程序
746–12-19-1-功能描述
750–12-19-2-代码注释

第12章 文件系统

本章涉及linux内核中文系统的实现代码和用于块设备的高速缓冲区管理程序。在开发Linux0.12内核文件系统时,Linus主要参照了Tanenbaum著的《MINIX操作系统设计与实现》一书,使用了其中1.0版的MINIX文件系统。因此在阅读本章内容时,可以参考该书有关MINIX文件系统
的相关章节。而高速缓冲区的工作原理可参见M.J.Bach的《UNIX操作系统设计》第3章内容。

表12-1给出了fs目录下的文件。

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

openGauss DBMind上的多指标关联性分析介绍

背景 随着互联网的发展,今天的数据库系统往往非常庞大且复杂,针对数据库系统的运维工作需要监控大量数据指标来了解数据库的运行状况。数据库指标往往以时间序列的方式出现,当业务层面关键指标出现异常时,运维人员需要迅速定位异…

对大量日志导致Java后端某些类加载错误问题记录

对大量日志产生导致Java后端某些类加载错误问题记录 报错问题: java.lang.IllegalArgumentException: Name for argument type [java.lang.String] not available, and parameter name information not found in class file either. org.springframework.util.Ass…

C语言关键字sizeof 与strlen

sizeof() sizeof操作数所占空间的字节数大小&#xff0c;是一种c中的基本运算符。 可以以类型、指针、数组和函数等作为参数。 返回值类型为unsigned int 运算值在编译的时候就出结果&#xff0c;所以可以用来定义数组维数。 1. #include<stdio.h> 2. // sizeof 关键字…

数据结构的基本概念

数据结构概念 1.数据&#xff1a;所有能输入计算机且能被计算机处理的符号总称 2.数据元素&#xff1a;是数据的基本单位&#xff0c;表示数据集合中的一个个体。 3 .数据项&#xff1a;数据元素中有独立含义的最小单位。 数据结构&#xff1a;相互之间存在一定关系的数据元素的…

YYDS练手 130道python练习题 完整版PDF

近年来&#xff0c;Python在编程语言界里赚足了风头&#xff0c;无论是受欢迎程度&#xff0c;还是薪资待遇&#xff0c;都非常可观&#xff0c;相应的&#xff0c;Python岗位要求也越来越高&#xff0c;无论你是零基础还是老前辈&#xff0c;在Python面试中都不能轻视。 不打…

MPLS-VPN实验

1、拓扑 2、需求&#xff1a; pc1通过vpn访问pc2 3、配置思路 第一步&#xff1a;配置接口地址 第二步&#xff1a;配置ospf 第三步&#xff1a;配置bgp 第四步&#xff1a;配置mpls 第五步&#xff1a;配置VRF -创建VRF -开启 ipv4-family -接口加入VRF -给接口重新配置…

挂在网盘到本地磁盘(以中移动云盘为例)

发现百度网盘速度越来越慢&#xff0c;因此我想怎么讲百度网盘中300多个G的文件同步到移动云中&#xff0c;因此就有了这一步的探索。 利用Alist将中国移动网盘挂载到本地磁盘 解压Alist工具包&#xff0c;运行里面的alist-xxxx.exe文件&#xff0c;启动过程如下&#xff1a; …

图扑虚拟现实 VR 智慧办公室可视化

前言 “虚拟现实”是来自英文“Virtual Reality”&#xff0c;简称 VR 技术&#xff0c;其是通过利用计算机仿真系统模拟外界环境&#xff0c;主要模拟对象有环境、技能、传感设备和感知等&#xff0c;为用户提供多信息、三维动态、交互式的仿真体验。 效果展示 图扑软件基于…

JS - DangerJs运用

JS - DangerJs运用 前言一. 前期准备1.1 创建私有 Token1.2 Git 设置对应的 Token 以及 Host 环境变量1.3 项目安装 dangerJs 二. 测试 前言 在开源社区中&#xff0c;DangerJs可以拿来自动判断每个人提交的代码合并请求&#xff08;github中叫Pull Request&#xff0c;简称PR…

(学习日记)2023.04.24

写在前面&#xff1a; 由于时间的不足与学习的碎片化&#xff0c;写博客变得有些奢侈。 但是对于记录学习&#xff08;忘了以后能快速复习&#xff09;的渴望一天天变得强烈。 既然如此 不如以天为单位&#xff0c;以时间为顺序&#xff0c;仅仅将博客当做一个知识学习的目录&a…

MKS SERVO4257D 闭环步进电机_系列1 产品简述

第1部分 产品概述 1.1 产品介绍 MKS SERVO 28D/35D/42D/57D 系列闭环步进电机是创客基地为满足市场需求而自主研发的一款产品。具备脉冲接口&#xff0c;RS485接口和CAN接口&#xff0c;内置高效FOC矢量算法&#xff0c;采用高精度编码器&#xff0c;通过位置反馈&#xff0c…

C语言—文件操作

文件操作 什么是文件文件的打开和关闭文件指针文件的打开和关闭fopenfclose 文件的顺序读写fputcfgetcfputsfgetsfprintffscanffwritefread经典面试题sscanfsprintf 文件的随机读写fseekftellrewind 文本文件和二进制文件文件读取结束的判定文件缓冲区 前言 在写完通讯录的程序…

Android 14新功能全面概述

Android 14有什么新功能&#xff1a;全面概述 Android 14带来了大量的新功能和更新&#xff0c;从前台服务和闹钟的改进到语法屈折和字体缩放&#xff0c;Android 14为每位开发者都提供了一些东西。我在下面列出了一些最重要的更改。让我们深入探讨一下这个最新版本的新功能。 …

Patcher:用于精确医学图像分割的混合专家patch Transformers

文章目录 Patcher: Patch Transformers with Mixture of Experts for Precise Medical Image Segmentation摘要本文方法patcher块Mixture of Experts Decoder 实验结果 Patcher: Patch Transformers with Mixture of Experts for Precise Medical Image Segmentation 摘要 提…

内存泄漏检测工具Valgrind:C++代码问题检测的利器

Valgrind&#xff1a;C代码问题检测的利器 一、引言&#xff08;Introduction&#xff09;1.1 Valgrind的定义与功能&#xff08;What is Valgrind and its functions&#xff09;1.2 Valgrind的重要性&#xff08;The importance of Valgrind&#xff09;1.3 Valgrind的应用场…

分享一个国内免费的ChatGPT网站,手机电脑通用,免费无限制,支持AI绘画

背景 ChatGPT作为一种基于人工智能技术的自然语言处理工具&#xff0c;近期的热度直接沸腾&#x1f30b;。 作为一个AI爱好者&#xff0c;翻遍了各大基于ChatGPT的网站&#xff0c;终于找到一个免费&#xff01;免登陆&#xff01;手机电脑通用&#xff01;国内可直接对话的C…

真实有用的工作英语 高阶版英文邮件写作

PS&#xff1a;美国老师建议在邮件里最好不要用&#xff0c;下划线&#xff0c;斜体&#xff0c;加粗等花里胡哨的东西。 To whom it may concern. 给可能关心这件事的人。To anyone who is interested in this matter. 给对这件事感兴趣的人。To the relevant person(s). 给相…

dom阶段实战内容

window定时器方法 ◼ 目前有两种方式可以实现&#xff1a;  setTimeout 允许我们将函数推迟到一段时间间隔之后再执行。  setInterval 允许我们重复运行一个函数&#xff0c;从一段时间间隔之后开始运行&#xff0c;之后以该时间间隔连续重复运行该函数。 ◼ 并且通常情况…

使用 Kotlin 实现 SOLID 原则编写清晰易维护的代码

使用 Kotlin 实现 SOLID 原则编写清晰易维护的代码 在编写软件时&#xff0c;很容易陷入特定编程语言&#xff0c;库和工具的细节中。然而&#xff0c;良好的软件设计不是与任何特定技术相关联的&#xff1b;相反&#xff0c;它基于一组经过多年和多个项目证明有效的原则。其中…

量子计算:纠错码 量子算法

文章目录 量子纠错码Shor 码CSS 码Steane 码一般性错误容错量子计算 量子算法量子 Fourier 变换Shor 算法求阶问题&#xff08;整数分解&#xff09;求周期问题&#xff08;离散对数&#xff09; Grover 算法 量子纠错码 对于量子态的纠错&#xff0c;与经典信息论中的纠错有着…