linux内核情景学习笔记.docx

linux内核情景分析学习笔记精要

文件系统 VFS为用户程序提供了一个统一的,抽象的,虚拟文件系统界面。这个界面主要由一组标准的,抽象的文件操作构成如而且用,read( ),write() vfs明确定义了这些函数接口,不同的文件系统要通过不同的程序实现各种功能。 当进程能过调用open()函数,同时就创建了一个file结构体,每个file结构体中有一个指向file_operations结构类型的指针。这样通过打开文件的同时也就与具体的文件系统挂上了钩。 strace 代表进程的结构体中关于文件的指针: 其中fs_struct *fs是用来描述文件系统的信息(因为可以使用多种文件系统) files_struct *files中描述了进程中打开的所有文件的信息。 struct fs_struct { ? ? ? ? atomic_t count; ? ? ? ? rwlock_t lock; ? ? ? ? int umask; ? ? ? ? struct dentry *root,*pwd,*altroot; ? ? ? ? struct vfsmount *rootmnt,*pwdmnt,*altrootmnt; }; pwd 指向当前进程所在的路径。 root 指向的代表着本进程的“根目录” fs_struct 结构中的信息都是与文件系统和进程有关的,与具体已经打开的文件没什么关系。 与具体文件相关的信息放

文档评论(0)

1亿VIP精品文档

相关文档