文件的打开、共享与复制

2016-4-22 chenhui 文件系统

在我们创建一个进程时,系统会根据创建时的参数来决定共享或复制一些文件给新进程。 进程的创建可参考:进程的创建 在了解文件的共享和复制之前,需要先了解进程是怎么打开文件的,而了解进程是怎么打开文件的之前,需要了解进程是怎么管理打开的文件的。 进程描述符(task_struct)中,有一个类型为 files_struct 的&nbs...

阅读全文>>

评论(0) 浏览(333)

super_block、file、dentry、inode 详解

2016-4-21 chenhui 文件系统

 Linux 的虚拟文件系统中,super_block、file、dentry、inode 这四个结构体是非常重要的,要了解 VFS,就必须了解他们。 本文详细讲解这四个结构体的作用和来源。 dentry 称为目录项描述符,每一个文件都会有这么一个目录项描述符,但是一个文件只会有一个目录项描述符。他的作用是,VFS 通过 dentry 来形成树形的文件系统目录结构...

阅读全文>>

评论(0) 浏览(265)

根文件系统的挂载之根文件系统镜像挂载

2015-12-23 chenhui 文件系统

流程( 一定要注意:现在是把 rootfs 作为临时的根文件系统 ): 把 devfs 挂载到 /dev 目录 得到存放根文件系统镜像的分区块设备路径,得到块设备的设备号,并再为他创建设备文件 /dev/root 尝试用系统中所有已注册的文件系统来装载块设备上的文件系统到 /root, 只要有一个成功即根文件系统挂载成功 把进程的...

阅读全文>>

评论(0) 浏览(250)

根文件系统的挂载之 rootfs 的挂载

2015-10-11 chenhui 文件系统

所谓的根文件系统,就是挂载点为根目录的文件系统。在 Linux 中实际上有两个根文件系统,第一个是在启动过程中挂载的 RAMDISK,他在内核中被称为 rootfs;第二个则是在后来挂载的开发者烧写到存储介质里的文件系统镜像。 下面介绍的就是挂载这个 RAMDISK 的过程。 先来看一下 RAMDISK 的挂载的函数执行流程: ...

阅读全文>>

评论(0) 浏览(294)

文件系统的挂载与卸载

2015-7-30 chenhui 文件系统

挂载步骤: 得到安装文件系统的目录 得到文件系统在注册时插入的 file_system_type 对象,并得到文件系统的超级块 为新安装的文件系统创建 vfs_mount 对象,并记录文件系统超级块和安装目录信息 如果安装目录上已安装了一个文件系统,就进入该文件系统的根目录,在这个根目录上继续安装 把 vfs_mount 插入已安...

阅读全文>>

评论(0) 浏览(359)

文件系统的注册

2015-7-30 chenhui 文件系统

VFS 在使用文件系统之前,我们必须把对应的文件系统注册到 VFS 内,这个操作是通过register_filesystem () 来实现的。 struct file_system_type 是用来描述一个文件系统的结构体,我们需要通过他来描述一个待...

阅读全文>>

评论(0) 浏览(273)

Copyright ©2015-2016 freehui All rights reserved