文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>VFS 1

VFS 1

时间:2006-12-11  来源:Elite

VFS超级块
登记具体文件系统类型、起始级块操作函数、根目录、设备序号、等待队列、具体文件系统信息等。VFS超级块在各种逻辑文件系统安装时建立,在这些文件系统卸载时自动删除,因此只存在内存中。包含:逻辑文件系统的块设备标志号、文件系统中数据块的大小、lock位、操作函数组合、指向等待队列的指针、
super block同dentry、inode有什么关系?如何关联的?dentry有指向super block的指针。

dentry结构
维护路径与inode的对应关系,保持从目录到inode访问的高效。每个文件有一个dentry结构,包含各种目录链表、指向inode和超级块。通过文件系统的路径查找生成dentry结构,生成之后,通过文件路径的hash值可直接查找对应的dentry,进而找到对应的inode。带锁、父目录dentry、hash表bucket、inode节点别名列表<实现硬连接>、目录树超级块、操作函数组合、文件名前36字符。

inode
每个子目录或文件只能由唯一的inode描述,包括节点的各种信息、结构操作函数、文件操作函数、等待队列、对应块设备及逻辑块的描述。ext2文件系统的inode是存储在磁盘上的,是一种静态结构,要使用必须调入内存。fat文件系统根据逻辑硬盘上的数据动态生成inode。包括:索引节点inode号、主/次设备号、访问权限、与该节点建立连接的文件数<也就是dentry数>、文件拥有者标志号、文件最后访问、修改、节点修改时间、指向等待队列指针,用于同步、i mapping表示地址空间、信号量。inode有编号,所以肯定有上限。是表示一个super block之内的inode?还是一个文件系统内的inode?
超级块的等待队列有什么用?
inode的等待队列有什么作用?

每一个进程有一个file-struct结构来记录文件描述符的使用情况。包括:atomic count、最大文件描述符数、下一个文件描述符、当前fd数组,等待exec系统调用后自动关闭的文件描述符集合、打开的fd set,文件描述符<也就是file结构>数组fd-arry[]。在2.6.16中file-struct精简了很多,包含spinlock-t,把一些信息包含在fdtable中。

file结构保存打开的文件的信息。包括:file链表、对应的dentry、vfsmount、flag、mode、read ahead状态信息、用于tty的private data、event poll的list、还有address space<干什么的?>可见2.6.16作了很多改进,比如将file链表通过union表达file list,或者在file free调用之后排入RCU控制的队列。
相关阅读 更多 +
排行榜 更多 +
修狗突围

修狗突围

飞行射击 下载
末日漂移生存

末日漂移生存

休闲益智 下载
水排序谜题吧手机版

水排序谜题吧手机版

休闲益智 下载