首页 > 其他分享 >虚拟文件系统和文件系统的挂载

虚拟文件系统和文件系统的挂载

时间:2024-10-20 21:58:38浏览次数:1  
标签:文件 对象 文件系统 目录 索引 虚拟 挂载 节点

虚拟文件系统

虚拟文件系统(VFS)屏蔽了不同文件系统的差异和操作细节,向上为用户提供了文件操作的统一调用接口,如图 4.24 所示。当用户程序访问文件时,通过 VFS 提供的统一调用函数(如open()等)来操作不同文件系统的文件,而无须考虑具体的文件系统和实际的存储介质。

img

虚拟文件系统采用了面向对象的思想,它抽象出一个通用的文件系统模型,定义了通用文件系统都支持的接口。新的文件系统只要支持并实现这些接口,即可安装和使用。为了实现虚拟文件系统,系统抽象了四种对象类型。每个对象都包含数据和函数指针,这些函数指针指向操作这些数据的文件系统的实现函数。这四种对象类型如下

  • 超级块对象

    • 表示一个已安装(或称挂载)的特定文件系统。超级块对象对应于磁盘上特定扇区的文件系统超级块,用于存储已安装文件系统的元信息。其操作方法包含一系列可在超级块对象上调用的操作函数,主要有分配 inode、销毁 inode、读 inode、写 inode 等。
  • 索引节点对象

    • 表示一个特定的文件。索引节点和文件是一对一的关系。只有当文件被访问时,才在内存中创建索引节点对象,每个索引节点对象都会复制磁盘索引节点包含的一些数据。索引节点对象还提供许多操作函数,如创建新索引节点、创建硬链接、创建新目录等。
  • 目录项对象

    • 表示一个特定的目录项。目录项对象是一个路径的组成部分,它包含指向关联索引节点的指针,还包含指向父目录和指向子目录的指针。不同于前面两个对象,目录项对象在磁盘上没有对应的数据结构,而是 VES 在遍历路径的过程中,将它们逐个解析成目录项对象的。
  • 文件对象

    • 表示一个与进程相关的已打开文件。可以通过调用 open()打开一个文件,通过调用 close()关闭一个文件。文件对象和物理文件的关系类似于进程和程序的关系。文件对象仅是进程视角上代表已打开的文件,它反过来指向其索引节点。文件对象包含与该文件相关联的目录项对象,包含该文件的文件系统、文件指针等,还包含在该文件对象上的一系列操作函数。

img

img

文件系统挂载

img

如文件在使用前要打开那样,文件系统在进程使用之前必须先安装,也称挂载(Mounting)。将设备中的文件系统挂载到某个目录后,就可通过这个目录来访问设备上的文件。注意,这里的设备指的是逻辑上的设备,如一个磁盘上的不同分区都可视为不同的设备。Windows 系统维护一个扩展的两级目录结构,用驱动器字母表示设备和卷。卷具有常规树结

img

标签:文件,对象,文件系统,目录,索引,虚拟,挂载,节点
From: https://www.cnblogs.com/AH20/p/18488026

相关文章

  • 《深入理解Java虚拟机》读后笔记-垃圾收集器
    优点:与其他收集器的单线程相比简单而高效,对于内存资源受限的环境,它是所有收集器里额外内存消耗最小的。对于单核处理器或处理器核心数较少的环境来说,Serial收集器由于没有线程交互的开销,专心做垃圾收集自然可以获得最高的单线程收集效率应用场景:Serial收集器对于运行......
  • PbootCms后台登陆不显示验证码(阿里云虚拟主机)
    进入虚拟主机管理页面在控制台中找到并点击“云虚拟主机”或类似的选项,进入虚拟主机管理页面。进入高级环境设置选择您需要配置的虚拟主机实例,点击“管理”按钮。在虚拟主机管理页面中,找到并点击“高级环境设置”。进入PHP.INI设置在高级环境设置页面中,找到“PH......
  • pbootcms在阿里云虚拟主机上验证码不显示的原因?
    解决方案开启PHP输出缓冲区登录阿里云控制台:访问阿里云官网,使用您的账号登录。进入主机管理面板:在控制台中找到并进入您的虚拟主机管理页面。配置PHP设置:找到PHP设置或配置选项。选择您当前使用的PHP版本进行配置。编辑 php.ini 文件:在PHP配......
  • 使用xfs文件系统加密磁盘分区
    目录简介磁盘管理常用命令1.查看操作系统支持的文件系统类型2.已经加载到内存中支持的文件系统3.更新Linux核心的分区表信息4.XFS文件系统的描述数据观察5.文件系统的整体磁盘使用量6.目录所占用容量7.链接8.列出系统上的所有磁盘列表查看格式化的磁盘分区信息9.列出磁盘的分区表......
  • DJ混音创作 DJ Mix Pads 2 激活版 虚拟乐器和音效创建混音软件
    DJMixPads2是一款功能强大的音乐制作软件,它允许用户通过虚拟乐器和音效创建自己的音乐混音和曲目。该软件具有用户友好的界面,提供多种预加载样本和循环,支持电子、流行、摇滚等多种音乐风格。用户可以通过点击不同的打击垫和循环来实时创作音乐,并添加混响、延迟等效果。此外,DJ......
  • OVH虚拟机安装MikrotikOS
    先pingip地址,如果不通可以检查路由器连接是否正常,检查防火墙是否拦截 先进入恢复模式RescueMode,正常系统模式可能DD不成功.*先进入恢复模式RescueMode,正常系统模式可能DD不成功.****先进入恢复模式RescueMode,正常系统模式可能DD不成功.***登录恢复模式先更新系......
  • Java21虚拟线程:我的锁去哪儿了?
    0前言最近的文章中,我们详细介绍了当我们迁移到Java21并将代际ZGC作为默认垃圾收集器时,我们的工作负载是如何受益的。虚拟线程是我们在这次迁移中兴奋采用的另一个特性。对虚拟线程新手,它们被描述为“轻量级线程,大大减少编写、维护和观察高吞吐量并发应用程序的工作量。”......
  • ntfs MFT损坏(ntfs文件系统故障)导致oracle异常恢复---惜分飞
    联系:手机/微信(+8617813235971)QQ(107644445)标题:ntfsMFT损坏(ntfs文件系统故障)导致oracle异常恢复作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]客户虚拟化环境,由于断电,启动数据库报ORA-01157错误,通过操作系统层面查看,发现......
  • 【Java基础】物理内存&虚拟内存
    前言在Java程序运行过程中,操作系统为其分配了物理内存和虚拟内存。理解这两者的概念有助于明晰内存管理和性能优化。一、物理内存物理内存是指计算机的实际RAM(随机存取存储器)。Java进程在运行时需要向操作系统请求内存资源,操作系统通过分配物理内存来满足Java进程的内存......
  • 低功耗4G模组Air780E快速入门:使用文件系统存储温湿度数据
    ​伙伴们,今天我们来学习合宙低功耗4G模组Air780E快速入门之使用文件系统存储温湿度数据。一、编写脚本1.1准备资料780E开发板购买链接780E开发板设计资料LuatOS-Air780E-文件系统的使用-程序源码demo合宙的TCP/UDP测试服务器API使用介绍780E开发板和DHT11 ​1.2 ......