操作系统笔记--文件系统

文件可以理解成是一种数据结构,它具有逻辑结构和物理结构。

文件的逻辑结构可以分为流式文件(无结构)如二进制文件和记录式文件(有结构)如文本文件。记录式结构有顺序文件,索引文件和索引顺序文件

目录文件是一种特殊的文件,它里面记录了文件名和FCB的映射关系,但是由于查找文件时并不需要过多的信息,所以只需要存放文件名和物理地址的映射关系就可以。所以引入了索引节点,目录文件的目录项中保存了文件名和索引节点的映射,索引节点与其所在的物理块号存放在内存中,这个物理块号中就存放着该文件的FCB。使目录文件减小,这样就可以减少查找文件时的平均启动磁盘次数。

文件的共享有基于索引节点(硬链接)和基于符号链实现(软连接)。软连接的一个实例就是快捷方式。

文件保护,在linux系统中每个文件都有三个权限即可读,可写,可执行。并且分成了拥有者,组合其他用户。

 

文件的实现

目录文件可以采用线性表和哈希表来实现

文件的物理存储有连续分配,链接分配和索引分配。索引分配需要为每一个文件创建一个索引表。先查找这个文件的索引块,在找到目标盘块号,为了解决索引表的大小问题,可以采用多级索引和混合索引的方式。

文件系统有FAT,NTFS,EXT2/3/4,WINDOWS不能识别EXT文件系统

EXT系统使用inode来找到文件的位置。目录文件的inode中保存了这个目录下的文件名与inode的关系,系统找到这个文件名对应的inode号;其次,通过inode号计算其在inode表中位置,到这个位置获取inode信息;最后,根据inode信息,找到文件数据所在的block,读出数据。

硬链接:两个文件名对应同一个inode结点,只不过inode结点的连接数为2,删除其中一个硬链接时不会删除真正的文件。

软连接:两个文件名分别对应各自的inode结点,这两个inode号指向同一个文件块,通过原文件名删除之后,建立的软连接就无法使用

posted @ 2020-04-18 19:24  不二良  阅读(224)  评论(0编辑  收藏  举报