操作系统 第四章 第一部分 文件管理(王道考研)

操作系统 第四章 第一部分 文件管理(王道考研)

初识文件管理

文件的属性

文件名:计算机里,完整的文件名应该包括主文件名和扩展文件名两部分。扩展文件名就是你说的“后缀”。针对你说的情况,文本文件名应该写为:1.txt。

标识符=文件的路径+文件名

文件内部数据的组织(文件的逻辑结构)

有结构文件 = 表文件

文件之间的组织形式(目录结构)

操作系统提供的功能

基本功能:文件的增删改查

文件怎么放在外存中?(文件的物理结构)

操作系统实现的文件管理功能

小结

文件的逻辑结构

无结构文件

有结构文件

记录的长度是否固定

实际生活中,最常用的是可变长记录

有结构文件的逻辑结构

顺序文件

结合链表和数组进行理解

链式存储:链表
顺序存储:数组

可变长记录就要去访问每条记录的长度

数组元素长度固定的数组

索引文件

索引表配置记录的指针,从而相当于定长记录的顺序文件。

索引顺序文件

二级页表的思想,表中有表

索引的索引

多级索引顺序文件

超级套娃,索引的索引的索引的。。

小结

文件目录

目录示例

文件控制块

对目录的操作

目录结构

单机目录结构

只有一层的文件夹

两级文件目录

有多个用户,但是用户对自己的文件不能进行进一步的管理

多级目录结构

树的结构

当前目录->相对路径(减少IO次数)

缺点

无环图目录结构

索引结点(FCB的改进)

只放一些有用的数据项

小结

文件的物理结构

文件块,磁盘块

文件分配方式

连续分配

优点
  1. 支持随机访问

  1. 速度最快

缺点
  1. 不方便拓展
  2. 存储空间利用率低,产生难以利用的磁盘碎片

链接分配

类似于链表

隐式链接

起始块号是0号块,链表的头和尾,每个节点包含指向下一个节点的指针。

优点

缺点

显示链接

FAT

优点

缺点

FAT(文件分配表)占用一定的存储空间。

小结

链接分配默认是隐式链接。

索引分配

索引块对应一个索引表,占用存储空间

优点

缺点

索引块占用一定的存储空间。

索引表太小了,怎么解决?

链接方案

类似:链表中每个元素都是数组

缺点:要找到最后一个逻辑块,必须所有的索引块都读入内存,效率低

多层索引

简单理解:目录的目录

磁盘IO次数多

混合索引

小结

文件分配方式的小结

文件存储空间管理

存储空间的划分和初始化

空闲表法

空闲链表法

空闲盘块链

单链表的增删改查(多次)

空闲盘区链

节点大小不定长的单链表的增删改查(有可能是多次或者是1次)

位示图法

二维数组

成组链接法

理解即可,树状结构,长度不用写死,每个节点有长度和数据,关键看是已经用到的目录还是代表空闲节点

这张图我得好好解释一下,首先来看左边绿色的空闲盘块号栈,这是第一组(唯一进入内存的一组,只有它会占据存储空间)。看到S.free = 100了没,这表示该组有100个空闲块数目,再往下看,第0号对应的是300,表示下一组物理空闲块的物理盘块号为300,你看它指向的是不是300号对应的磁盘块。再看黄色的块,这些块里保存的才是真正的可用的空闲块,也就是说每组中只有99个块可用。尽管如此,每组还是有100个块的。特别要注意的是,最后一组的下一组盘块号不是没有么,我们这里采用的是结束标记“0”,也就是最右边一个蓝色块的第二项为0。

小结

文件的基本操作

文件的增删改查

创建文件

删除文件

打开文件

内存中存放正在打开的文件,免得重新加载
打开文件是找到对应的文件的指针,不是全部加载文件。

系统中只有一个包含文件所有信息的打开文件的记录总表(系统的打开文件表)
进程中有打开文件表。

关闭文件

打开计数器为0时,才能进行文件删除功能。

读文件

写文件

保存文件的功能

小结

文件描述符:指向文件的指针

文件共享

共享:系统中只有一份文件数据

硬链接

硬链接就是复制了一份的文件目录项,直接指向文件。

该目录项只包含文件名。索引结点指针。

不能对目录创建硬链接

软链接

(符号链接):删除链接文件对于原文件无影响

小结

文件保护

口令保护

密码

加密保护

通过“密码”加密和解密 ,加解密的密码是一致的。 异或加密

访问控制

用户的权限控制,对一个目录进行的设置,其下的所有目录和文件都是相同的设置

用户分组

小结

文件系统的层次结构

本章的目录结构

例子

posted @ 2020-07-01 21:41  亥码  阅读(561)  评论(0编辑  收藏  举报