欢迎来到天天文库
浏览记录
ID:51494924
大小:144.81 KB
页数:4页
时间:2020-03-25
《Linux的虚拟文件系统中数据结构的研究.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、万方数据第21卷第3期2001年9月湛江海洋大学学报JournalofZhanjiangOceanUniversityVoJ.21No.3Sep.2001Linux的虚拟文件系统中数据结构的研究沈玉利(湛ft.海洋大学工程学院.广东堪江524025抽要:本文从源代码分析人手.着重讨论了虚拟文件系统中内存的主要数据结构的掏成.其属性的作用,意义及其调用方法.美薯词:虚拟文件系统数据结构操作系统中围分类号:F301.24文献标识码:A文章绾号;1007—7995(2001)03—0060—04StudyoftheDataStructuresofLi
2、nux’SVFSShenYuli(CollegeofEngineering,ZhanjiangOceanUniversity,ZhanjiangGuangdong524025)Abstract:Inthispaper,thestudybeginswiththesourcecodes.ThemainmemorydatastructuresoftheLinux’svirtualfilesystemarediscussed,andthefunctions,meaningsandusingmethodsofeachstructure’sparamete
3、rsarealsointroduced.Keywords:VirtualfilesystemDatastructuresOperatingsystem自LinuxTorvalds在1991年创建以来,由于该系统的源程序可被自由的拷贝、分散和使用,并鼓励其他人进一步对Linux操作系统进行开发。一个通过Internet网络的全球范围内的自发的开发队伍,正在对Linux逐步完善,大有成为主要操作系统之势。本文针对Linux的虚拟文件系统中数据结构进行了较详细的讨论。1VFS概述由于Linux最重要的特征之一是支持多种不同文件系统。为了能支持多种文件
4、系统,Linux用了一个称为虚拟文件系统(VirtualFileSystem)的接口层将实际的文件系统同操作系统分离开来。VFS也称为虚拟文件交换(VirtualFileSwitch)。它屏蔽了不同文件之间的差异,使所有文件系统对操作系统的其他部分和用户程序来说都是相同的。Linux目前可以支持EXT2、EXT、XIAFS、ISOFS、HPFS、MSDOS、UMSDOS、PROC、SYSV、MINIX、SMB、UFS、NCP、VFAT、AFFS等格式的文件,它们都在Linux内核源程序中提供了支持。VFS将真实的文件系统从系统服务中分离出来,用
5、户程序利用VFS的统一操作界面与每一个具体文件系统相交互,而不必去关心具体操作的哪一种文件系统。VFS实际上是用户进程与实际收稿日期:2001—03—33作者简价:沈玉利(1956一).男.在读博士,研究方向:计算机安全、模式识别、图像处理万方数据第3期沈玉利:Linux的虚拟文件系统中数据结构的研究61文件系统之间的一种接12,为了兼容各种文件系统,VFS定义了一组标准功能,并要求任何一种通过VFS装的文件系统都必须实现这些功能,这些功能包括三个主要部分:文件系统操作,i一节点操作和文件打开操作。在Linux操作系统中,对不同设备的访问是通过
6、不同设备标识符实现的,这很类似UNIX操作系统。在Linux文件系统的/dev/目录下列出了所有设备的标识符。在对不同文件访问时,Linux操作系统会将该设备的文件系统安装到文件系统目录上作为一个目录。操作系统对该设备的文件系统的访问就表现在对该目录的访问。VFS的内核源程序的头文件通常存放在/include/目录下以一.h一为扩展名;其源程序则存放在/fs/目录下以”.C”为扩展名。2VFS的结构Linux的文件系统结构清晰,在用户进程对文件系统提出操作请求后,VFS将内存的数据结构与具体文件系统的数据结构关联起来,同时调用具体的文件系统的操
7、作函数,启动设备的输入/输出操作,实现设备上文件的读取、写回、查找、更改、更新等操作,即由VFS提供的内存节点缓冲区,内存目录项缓冲区,数据块缓冲区提供了内存中操作节点、目录、数据块手段,文件系统尽量在内存中处理文件,减少读取外设的操作次数。操作完成之后,文件系统在适当的时机将调用VFS的更新例程,将改变的数据从内存中全部写回外部设备。3VFS的主要数据结构VFS是Linux文件系统的核心,也是多种文件系统的统一操作界面,VFS存在于内存中,它用内存中数据结构表示函数例程处理多种文件系统的数据结构和函数例程,故约定对于VFS的数据结构都称为内存
8、中的数据结构,以与具体文件系统的数据结构相区别。3.1文件系统类型文件系统类型数据结构用来描述每一个被内核支持的文件系统的数据结构,该数据结struc
此文档下载收益归作者所有