操作系统概念第九版期末复习
第十章 File-System Interface
文件基本概念,文件属性,文件类型等
Windows (和其他一些系统 ) 使用特殊的文件扩展名 (图标) 来指示每个文件的类型
文件操作(创建,读,写,偏移,删除,打开等)
大多数 OS 要求文件在访问之前打开,并在所有访问完成后关闭文件
文件打开表
- 系统打开文件表(引用计数)
- 进程打开文件表(跟踪进程打开的所有文件、当前文件指针、访问权限、记帐信息等)
一些系统支持文件锁定
文件结构
对于操作系统来说,支持特定的文件格式会增加操作系统的大小和复杂性。UNIX 将所有文件视为字节序列,无需进一步考虑内部结构。 操作系统必须至少支持一个文件结构,即可执行文件的结构。
通常,每个文件浪费一半物理块,块大小越大,内部碎片损失的空间就越多
文件访问方式
- 顺序访问
- 直接访问
- 其他(索引访问)
可以使用直接访问轻松模拟顺序访问。逆向是复杂和低效的。
索引访问:
磁盘结构
磁盘或分区可以原始使用 – 无需文件系统,也可以使用文件系统格式化
包含文件系统的实体称为卷(虚拟磁盘)
**除了通用文件系统外,还有许多特殊用途的文件系统,通常都在同一操作系统或计算机
目录
目录是包含有关所有文件的信息的节点集合,保存着文件名和文件路径的信息
目录和文件一样都保存在磁盘上
目录操作包括:
搜索文件 创建文件 删除文件 重命名文件
目录结构
单级目录实现简单,但每个文件都必须有一个唯一的名称。
双级目录中,每个用户都拥有自己的目录空间 。文件名只需要在给定用户的目录中是唯一的。主文件目录 )用于跟踪每个用户目录并维护。
系统(可执行)文件通常需要一个单独的目录
用户之间共享系统文件的方法:
- 将系统文件复制到每个用户目录空间UFD
- 搜索路径
树形结构文件
每个用户(主目录)/进程都有一个当前目录的概念,所有 (相对) 搜索都从该目录进行。可以使用绝对路径名(相对于树的根)或相对路径名(相对于当前目录)访问文件。目录的存储方式与系统中的任何其他文件相同,但存在将它们标识为目录的指示位。需考虑是否能删除非空目录?
硬链接和符号链接(相当于windows的快捷方式)的概念原理
文件系统映射
mount挂载命令被赋予一个要挂载的文件系统和一个要附加它的挂载点 (目录)。将文件系统挂载到挂载点后,对该目录的任何进一步引用实际上都引用挂载的文件系统的根。
在挂载新文件系统之前存储在装载点目录中的任何文件(或子目录)被挂载的文件系统隐藏,并且不再可用。因此,某些系统只允许安装到空的目录上。
文件共享
组ID 用户ID 文件权限
在分布式系统上,文件可以通过网络共享。网络文件系统(NFS)是一种常见的分布式文件共享方法
文件一致性
参考第五章 进程同步的算法
文件保护
备份和受控访问(文件权限有读写删除等等,)**给文件设置密码