- 10.2 访问方法
- 10.2.1 顺序访问
- 最为简单的访问方式是顺序访问。文件信息按顺序,一个记录接着一个记录地加以处理。这种访问模式最为常用,例如,编辑器和编译器通常按这种方式访问文件。
- 基于磁带模型
- 10.2.2 直接访问
- 另一方式是直接访问(或相对访问)。文件由固定长度的逻辑记录组成,以允许程序按任意顺序进行快速读和写。直接访问方式是基于文件的磁盘模型,这是因为磁盘允许对任意文件块进行随机读和写。对直接访问,文件可作为块或记录的编号序列。因此,可先读取块14,再读块53,最后再写块7。对于直接访问文件,读写顺序是没有限制的。
- 由用户向操作系统所提供的块号通常为相对块号。相对块号是相对于文件开始的索引。因此,文件的第一块的号码是0,下一块为1,依次类推,而第一块的真正绝对磁盘地址可能为14703,下一块为3192等。
- 10.2.3 其他访问方式
- 其他访问方式可建立在直接访问方式之上。这些访问通常涉及创建文件索引。索引包括各块的指针。为了查找文件中的记录,首先搜索索引,再根据指针直接访问文件,以查找所需要的记录
- 对于大文件,索引本身可能太大以至于不能保存在内存中。解决方法之一是为索引文件再创建索引。初级索引文件包括二级索引文件的指针,而二级索引再包括真正指向数据项的指针。
- 10.2.1 顺序访问
- 10.3 目录结构
- 文件系统实现按名访问
- 10.3.1 存储结构
- 磁盘(或任何足够大的存储设备)可以整体地用于一个文件系统。但是,有时需要在一个磁盘上装多种文件系统,或一部分用于文件系统而另一部分用于其他地方,如交换空间或非格式化的磁盘空间。这些部分称为分区或片,或称为小型磁盘(IBM的说法)。每个磁盘分区可以创建一个文件系统。如下一章所述,这些部分可以组合成更大的可称为卷(volume)的结构,也可以在其上创建文件系统。现在,为简单起见,可以将存储文件系统的一大块存储空间作为卷。卷可以存放多个操作系统,使系统启动和运行多个操作系统。
- 包含文件系统的每个卷还必须包含系统上文件的信息。这些信息保存在设备目录或卷表中。设备目录(常简称为目录)记录卷上所有文件的信息如名称、位置、大小和类型等。
- 10.3.2 目录概述
- 目录可看做符号表,它能将文件名称转换成目录条目。如果采用这种观点,那么目录可按许多方式来加以组织。对目录,需要能够插入条目、删除条目、搜索给定条目、列出所有目录条目。
- 在考虑特定目录结构时,需要记住目录相关操作:
- 搜索文件,创建文件,删除文件,遍历文件 重命名文件 跟踪文件系统
- 注意 目录也是稳健,它的一些属性标识它是目录
- 10.3.3 单层结构目录
- 最简单的目录结构。 所有文件爱你都包含在同一目录中,特点是 便于理解和支持。
- 在文件类型增加时或系统有多个用户时,单层结构目录有严格限制。由于所有文件位于同一目录,他们必须具有唯一名称。
- 10.3.4 双层目录结构
- 单层结构目录会在不同目录之间引起文件名称的混淆。标准解决方法是每个用户创建独立目录。
- 对于双层结构目录的结构,每个用户都有自己的用户文件目录(user file directory,UFD)。每个UFD都有相似的结构,但只列出了单个用户的文件。当一个用户作业开始执行或一个用户注册时,就搜索系统的主文件目录(master file directory,MFD)。通过用户名或账号可索引MFD,每个条目指向用户的UFD。
- 缺点:虽然解决了名称冲突问题,这种结构有效地对用户加以隔离。这种隔离在用户需要完全独立时是优点,但是在用户需要在某个任务上进行合作和访问其他文件时是个缺点。
- 10.3. 5 树状结构目录
- 绝对路径名:从根开始并给出路径上的目录名知道所指定的文件。
- 相对路径名:从当前目录开始定义路径。
- 10.3.6 无环图目录
- 无环图允许目录含有共享子目录和文件。同一文件或目录可出现在两个不同目录中。无环图是树状结构目录方案的扩展。
- 实现共享文件和目录有许多方法。
- 创建一个称为链接的新目录条目。链接实际上是另一文件或目录的指针。 链接可以通过使用路劲名定位真正的文件来获得解析。
- 10.3.7 通用图目录
- 对已存在的树状结构目录增加链接时,树状结构就被破坏了,产生了简单的图结构。
- 10.4 文件系统安装
- 文件系统在被系统上的进程使用之前必须安装(mount)具体的说,目录结构可以建立在多个卷上,这些卷必须被安装以使他们在文件系统命名空间中可用。
- 通常,安装点为空目录。 Mount point
- 10.5 文件共享
- 10.5.1 多用户
- 10.5.2 远程文件系统
- 文件传输 如FTP
- 分布式文件系统 DFS 远程目录可本机上直接访问。
- 万维网
- 10.5.3 一致性语义
- 一致性语义(consistency semantics)是评估文件系统对文件共享支持的一个重要准则。这是描述多用户同时访问共享文件时的语义。特别地,这些语义规定了一个用户所修改的数据何时对另一用户可见。这种语义通常是由文件系统代码来实现的。
- 10.6 保护
- 10.6.1 访问类型
- 人们所需要的是控制访问。
- 通过限制可进行的文件访问类型,保护机制可提供控制访问。
- 读 写 执行 添加 删除 列表清单
- 10.6.2
- 10.6.1 访问类型
- 由于内存通常太小,并不足以永久保存所有数据和程序,所以计算机系统必须提供外村以备份内存。
- 现代计算机系统才欧诺个磁盘作为主要在线存储以保存信息(程序和数据)文件系统为存储与访问磁盘上的数据与程序提供机制。
- 文件是一组由创建者所定义的相关信息的集合。操作系统将文件映射到物理设备上。
- 文件通常按目录来组织,以便于使用
- 对绝大多数用户而言,文件系统是操作系统中最为可见的部分。它提供了在线存储和访问计算机操作系统和所有用户的程序与数据的机制。文件系统由两个不同部分组成:一组文件(文件用于存储相关数据)和录结构(目录用于组织系统内的文件并提供有关文件的信息)。
- 10.1 文件概念
- 文件是记录在外存上的相关信息的具有名称的集合。
- 从用户角度而言,文件时逻辑外存的最小分配单元,即数据除非在文件中,否则不能写到外存。
- 10.1.1 文件属性
- 名称 文件符号名称是唯一的、按照人们容易读取的形式保存。
- 标识符 标识文件系统内文件的唯一标签,通常为数字;对人而言这是不可读的文件名称。
- 类型:被支持不同类型的文件系统所使用。
- 位置:该信息为指向设备和设备上文件位置的指针。
- 大小:文件当前大小(以字节、字或块来统计),该属性也可包括文件允许的最大容保护:决定谁能读、写、执行等的访问控制信息。
- 时间、日期和用户标识:文件创建、上次修改和上次访问的相关信息。这些数据用于保护,安全和用户标识。
- 所有文件的信息保存在目录结构中,而目录结构也保存在外存上。
- 10.1.2 文件操作
- 创建文件 写文件 读文件 在文件内重定位 删除文件 截短文件 (删除内容而保留其属性)
- 每个打开文件有如下相关信息:
- 文件指针,文件打开计数器,文件磁盘位置,访问权限。
- 文件锁,共享锁 类似于读者锁,可供多个进程并发获取,专用锁 类似于写者锁,只有一个进程可获取此锁。
- 操作系统可提供强制或建议文件加锁机制。如果文件加锁是强制的,那么有一个进程获得该锁后,操作系统就会阻止其他进程访问已加锁的文件 。 建议锁 并不阻止修改。
操作系统复习笔记——第十章 文件系统接口
2020-11-13 10:31:48
浏览数 (1)