发布时间:2015-01-07 11:26:08
Linux中卸载文件系统由umount系统调用实现,入口函数为sys_umount()。较于文件系统的安装较为简单,下面是具体的实现。 /*sys_umont系统调用*/ SYSCALL_DEFINE2(umount, char __user *, name, int, flags) { struct path path; int retval; /*找到装载点的vfsmount........【阅读全文】
发布时间:2015-01-07 11:24:38
对于前面的根目录文件系统的安装中涉及到了mount系统调用的调用,这里我们考虑一个文件系统将被安装在一个已经安装文件系统之上的情形,即调用mount系统调用实现。mount系统调用被用来安装一个普通文件系统,他的服务例程为sys_mount()。 /*sys_mount系统调用*/ /*dev_name为待安装设备的路径名; dir_name为安装点的路径名......【阅读全文】
发布时间:2015-01-07 11:23:16
前面对linux虚拟文件系统的架构以及设计到的数据结构有了一个整体的认识,这里看看linux内核怎么根据给定的文件路径名在内存中找到和建立代表着目标文件或目录的dentry结构和inode结构。文件路径的搜索是文件系统中最基本也是最重要的一部分之一,后面我们会看到,文件的打开、关闭等等操作都将涉及到文件路径的搜索。下面我们看看linux内核中时怎么实现的。 一、搜索中所用数据结构 /*这个数据........【阅读全文】
发布时间:2015-01-07 11:19:22
Linux虚拟文件系统是一个内核软件层,用来处理与UNIX标准文件系统相关的所有系统调用。其健壮性表现在能为各种文件系统提供一个通用的接口。 Linux虚拟文件系统支持的文件系统可以划分为三种主要的类型: 磁盘文件系统 这些文件系统管理在本地磁盘分区中可用的磁盘空间或者其他可以起到磁盘作用的设备(比如说一个USB闪存)。 网络文件系统 这些文件系统允许访问属于其他网络计算机的文件系统所包........【阅读全文】
发布时间:2015-01-07 11:16:00
Linux虚拟文件系统在内核初始化的start_kernel()函数中主要调用两个函数来实现。......【阅读全文】