- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 文件系统的注册、安装与卸载 LINUX第八讲 file_system_type 结构成员 超块读取例程 read_super 当属于该文件系统类型的实际文件系统被挂装时,VFS 调用该例程读取超块。 文件系统名称 name 文件系统的名称。例如 Ext2、vfat、iso9660等。 要求设备requires_dev 该文件系统是否需要设备支持?并不是所有的文件系统都需要特定设备,例如,/proc 文件系统并不需要块设备。 文件系统的注册、安装与卸载 LINUX第八讲 文件系统类型的注册和注销函数 int register_filesystem(struct file_system_type * fs) int unregister_filesystem(struct file_system_type * fs) file_systems file_system_type file_system_type file_system_type 文件系统的注册、安装与卸载 LINUX第八讲 2. 文件系统的挂装 要使用一个文件系统,除了注册之外,还必须挂装这个文件系统。和所有的Unix 版本一样,Linux 利用特殊文件代表系统的硬件设备。设备文件实际并不占用任何文件系统的空间,它只是作为访问设备驱动程序的入口。Ext2 文件系统和 VFS 文件系统将设备文件作为特殊索引节点实现。设备分为块设备和字符设备两种。设备文件的索引节点中包含对应设备的主设备号和次设备号,分别标识设备类型以及该设备在同类设备中的编号。 文件系统的挂装和卸装一般只能由超级用户完成。参见 fs/super.c add_vfsmnt() 。 文件系统的注册、安装与卸载 LINUX第八讲 / bin etc dev usr Root filesystem /usr filesystem Complete hierarchy after mounting /usr / bin man lib / bin etc dev usr usr bin man lib 文件系统的注册、安装与卸载 LINUX第八讲 用户(一般是 root)在挂装文件系统时,要指定三种信息:文件系统的名称、包含文件系统的物理块设备和文件系统在已有文件系统中的挂装点。例如: $ mount -t iso9660 /dev/hdc /mnt/cdrom 上述命令指定了要挂装的文件系统类型,文件系统所在设备以及挂装点,并将文件系统挂装为只读。如果要在系统启动时自动挂装文件系统,则可以在 /etc/fstab 文件中为每种文件系统的挂装提供有关文件系统的名称、包含该文件系统的物理设备以及该文件系统的挂装点的信息。有关内容可参见 fstab 手册。 文件系统的注册、安装与卸载 LINUX第八讲 (1)寻找对应的文件系统信息。VFS 通过 file_systems 在 file_system_type 组成的链表中根据指定的文件系统名称搜索文件系统类型信息。参见 fs/super.c中的do_mount() 和fs/super.c中的get_fs_type() 函数。 (2) 如果在上述链表中找到匹配的文件系统,则说明内核具有对该文件系统的内建支持。否则,说明该文件系统可能由可装载模块支持,VFS 会请求内核装入相应的文件系统模块,此时,该文件系统在 VFS 中注册并初始化。 (3) 不管是哪种情况,如果 VFS 无法找到指定的文件系统,则返回错误。 (4) VFS 检验给定的物理块设备是否已经挂装。如果指定的块设备已被挂装,则返回错误。 文件系统的注册、安装与卸载 LINUX第八讲 (5) VFS 查找作为新文件系统挂装点的目录的 VFS 索引节点。该 VFS 索引节点可能在索引节点高速缓存中,也有可能需要从挂装点所在的块设备中读取。 (6) 如果该挂装点已经挂装有其他文件系统,则返回错误。因为同一目录只能同时挂装一个文件系统。 (7) VFS 挂装代码为新的文件系统分配超块,并将挂装信息传递给该文件系统的超块读取例程。系统中所有的 VFS 超块保存在由 super_blocks 指向的 super_block 数据结构指针数组中。 (8) 文件系统的超块读取例程将对应文件系统的信息映射到 VFS 超块中。如果在此过程中发生错误,例如所读取的超块幻数和指定的文件系统不一致,则返回错误。 (9)
您可能关注的文档
- 第2章 理想光学系统与实际光学系统解说.ppt
- 第六章第五节宇宙航行课题.ppt
- 第2章 流体静力学-2014解说.ppt
- lesson3C语言程序运算讲述.ppt
- Lesson16TheBearEscaped!讲述.ppt
- 第六章电磁学课题.ppt
- 第2章 媒体及媒体解说.ppt
- 第六章多元回归课题.ppt
- 第2章 摩擦轮传动解说.ppt
- LINUX系统常用命令及基本配置-jg讲述.ppt
- 广东省东莞市2024-2025学年八年级上学期生物期中试题(解析版).pdf
- 非遗剪纸文创产品开发经理岗位招聘考试试卷及答案.doc
- 广东省东莞市2024-2025学年高二上学期期末教学质量检查数学试题.pdf
- 体育安全理论课件图片素材.ppt
- 3.1 公民基本权利 课件-2025-2026学年道德与法治八年级下册 统编版 .pptx
- 广东省潮州市湘桥区城南实验中学等校2024-2025学年八年级上学期期中地理试题(解析版).pdf
- 大数据运维工程师岗位招聘考试试卷及答案.doc
- 广东省深圳市福田区八校2026届数学八年级第一学期期末教学质量检测模拟试题含解析.doc
- 广东省潮州市湘桥区城基初级中学2024-2025学年八年级上学期11月期中考试数学试题(解析版).pdf
- 广东省潮州市湘桥区城西中学2024-2025学年八年级上学期期中地理试题(解析版).pdf
原创力文档


文档评论(0)