一, linux的文件系统
linux早期的版本使用的是minix的文件系统。。
二, minix文件系统的格式
1, 超级快
2, i结点位图 minix 1.0最多可以使用64MB
3, 逻辑块位图
4, 数据区
三, 小知识点。。
1, 为什么逻辑块和i位图结点的第一个都是1,因为查失败的情况下,就返回0
2, Minix的逻辑块的大小是1kb
3, i的结构有些是只在内存中使用的,但是还是定义在文件系统中
4, 文件系统中,文件的具体的数据被放在什么位置,都是在其中指明的。在i_mode块中。。。一个9short的结构。前7个是直接,第8个是一次间接,第九个是二次间接。
5, 目录的结构,就是一个文件的名称加上一个一个文件的inode结点的索引。
6, 硬链接:两个不同名字的文件使用同一个inode。也就是删除一个的时候,inode并能删除。。。硬链接是不能够跨盘的。
7, 软连接:软连接的文件的数据块中存放的是文件的完整的路径,所以软连接是可以跨盘的。。
四, 高速缓冲区
五, 管道:管道主要用于在进程之间按照先进先出的方式传送数据。。。。。
有名管道:只要是被授权的进程都可以进行使用
无名管道:只用子进程可以进行调用。。。。
对管道的使用和对文件的使用是一样的,不同的是,对于管道只是用一个直接快,呵呵
六, 文件系统在内核中需要的三个结构。。。
(1) 进程控制表中有一个f打开文件表,存放的是全局打开文件表的一个索引
(2) 全局有一个打开文件表
(3) 打开的inode表,这个也是全局维护的。。在linux中可以最多打开linux内核文件放在哪64项
一个进程最多可以打开20个。
七, stat.c:用于实现取文件状态信息系统调用。。。stat和fstat(通过文件句柄获取信息);
八, 符号连接:在数据内容中存放的是一个绝对路径。。。别的文件的绝对路径。
硬连接:硬连接就是文件所在的目录中的inode节点是与人共享的。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论