一、初识文件系统
文件定义:一组有意义的信息的集合。
文件属性:文件名、标识符、文件类型、创建者、创建时间、上次修改时间、文件物理地址、文件路径
文件内部如何组织起来的(文件的逻辑结构)
文件之间如何被组织起来的(目录结构)
操作系统向上提供哪些功能(create、delete、open、close、read、write系统调用)
文件如何存放在外存(文件的物理结构)
操作系统如何管理外存的空闲块(空闲表法、空闲链表法、位示图法)
文件共享和文件保护
二、文件的逻辑结构(主要谈有结构文件)
1.顺序文件:链式存储和顺序存储(串结构和顺序结构),顺序存储的顺序结构可以实现随机访问。
2.索引文件:每一条记录创建一个索引,形成一个索引表,解决了不方便增删问题,同时实现了随机访问。
3.索引顺序文件:将记录分组,每一组对应一个索引: 比如我们的电话簿。
三、文件目录
文件目录的实现:一个文件对应一个FCB,一个FCB就是一个目录项,多个目录项构成了文件目录。---->升级:索引节点
目录的结构:
单级文件目录结构 不允许文件重名 两级文件目录结构 不同目录的文件可以重名 树形目录结构 不方便文件共享 无环图目录结构 共享计数器 文件共享
四、文件的物理结构
顺序分配:
FCB记录文件名和起始块。
逻辑地址->物理地址:[(逻辑地址/块大小)+ 起始块号 ] * 块大小 + 块内偏移量
缺点:产生碎片
链接分配:
隐式连接 FCB记录文件名,起始块,结束块
一个文件对应一个
方便扩展,不会产生碎片,但是只能够顺序访问
[逻辑地址/(块-指针)]->磁盘块号->磁盘块号*块大小+(指针+偏移量) 显式连接 FCB记录文件名,起始块 (末尾块用-1标识)
一个磁盘对应一个FAT表 ,开始时读入内存。
拥有隐式连接的优点,还实现了随机访问 ,但是占用一定的存储空间
(逻辑地址/块大小)->逻辑块号->FAT表找到磁盘块号->磁盘块号*块大小+块内偏移量 索引分配:
FCB记录文件名和索引块号(记录索引表的磁盘块)。
为文件块创建索引表,如果文件块过多,可以使用多层索引、混合索引。
逻辑地址->物理地址:(逻辑地址/块大小)->逻辑块号->根据索引表找到磁盘块号->磁盘块号*块大小+块内偏移量