Linux世界驰骋四——文件系统和设备管理

http://tech.ddvip.com   2007年03月12日    社区交流

本文详细介绍Linux世界驰骋四——文件系统和设备管理

  2.VFS超级块

  VFS和ext2文件系统一样也使用超级块和索引节点来描述和管理系统中的文件。每个安装的文件系统都有一个VFS超级块,其中包含以下主要信息:

  (1)设备标识符。这是存储文件系统的物理块设备的设备标识符,如系统中第一个IDE磁盘/dev/hda1的标识符是0x301。

  (2)索引节点指针。安装索引节点指针指向被安装的子文件系统的第一个索引节点;覆盖索引节点指针指向安装文件系统目录(安装点)的索引节点。根文件系统的VFS超级块中没有覆盖索引节点指针。

  (3)数据块大小。文件系统中数据块的字节数。

  (4)超级块操作集。指向一组超级块操作例程的指针,VFS利用它们可以读写索引节点和超级块。 (5)文件系统类型。指向所安装的文件系统类型的指针。

  (6)文件系统的特殊信息。指向文件系统所需要信息的指针。

  可以看出,VFS超级块的结构比ext2文件系统的超级块简单,主要增加的是超级块操作集,它用于对不同文件系统进行操作,对于超级块本身并无作用。

  3.VFS索引节点

  VFS中每个文件和目录都有一个且只有一个VFS索引节点。VFS索引节点仅在系统需要时,才保存在系统内核的内存及VFS索引节点缓存中。

  VFS索引节点包含的主要内容有所在设备的标识符、惟一的索引节点号码、模式(所代表对象的类型及存取权限)、用户标识符、有关的时间、数据块大小、索引节点操作集(指向索引节点操作例程的一组指针)、计数器(系统进程使用该节点的次数)、锁定节点指示、节点修改标识,以及与文件系统相关的特殊信息。

  4.Linux文件系统的逻辑结构

  Linux系统中每个进程都有两个数据结构用来描述进程与文件相关的信息,其中一个是fs_struct结构,它包含两个指向VFS索引节点的指针,分别指向root(即根目录节点)和pwd(即当前目录节点);

作者:孟庆昌    责编:豆豆技术应用

正在加载评论...