os CH10 文件系统接口
CH10 文件系统接口
文件系统是外存的抽象,虚拟内存是内存的抽象
10.1 File Concept
文件:最重要的要素是按名字进行存取;是存储在某些设备上的比特流
文件属性,有各种名称 权限 修改时间,等等信息
操作系统角度来看,有三个bit定义了如下的七种文件:
比如说,这里的目录文件指的就是像文件夹这样的存储其他内容的容器
文件的结构:(如果考试问哪两种,就说前两种即可)
取决于操作系统和程序
10.2 Access Methods(文件的访问方法)
这里一共有三种存取方法:顺序存取、直接存取、索引存取 这里应该不是难点和考点,看ppt即可
10.3 Directory Structure(目录结构)
一般来说,文件属性(名字,类型等等一系列信息)和文件内容会分开存放,呈现出下面这样的结构
这部分内容从磁盘开始讲起
首先明白分区(partition)和磁盘(disk):一个分区可能有多个磁盘,一个磁盘也可能有多个分区 稍微注意一下重名问题:
对于目录结构,早期有单极和二级的目录;现在使用树形目录
回忆一下绝对路径和相对路径 
- 无环图结构 这个说的是,同一个物理文件被不同的路径共享时的情况;使用硬链接的方式,使得多个目录指向同一个文件。那么再涉及文件删除的时候,需要维护一个链接数,当链接数为0的时候,才是删除文件,否则仅仅移除路径;在这里,不同的目录下相同的文件可能有不同的名字
- 普通图结构 这个时候就可能出现环路;一般地会保证hard link的内容是文件而不是目录,或者采用环检测算法来规避;但是需要注意的是快捷方式、符号链接可以形成环
10.4 File System Mounting(文件系统的安装(挂载))
比方说看下面的图为例:将新的内容(比如说,插入了一个U盘)挂在到user之下,就会变成下面图片的情况:

但是,挂载之后原始的文件并没有(在外存上)被删除,而是内存中的路径解析重定向了;之后(拔掉U盘),原始路径会恢复
10.5 File Sharing
简单说就是这些 关于符号链接和硬链接具体的区别,看下面这张表
10.6 Protection
也就是说,对于文件系统需要规定什么东西可以被谁操作 Linux系统中,权限分为如下的三种,并且列举了三种用户:
os CH10 文件系统接口
https://zrwrz.github.io/2026/01/02/os-CH10-文件系统接口/