文件系统结构

文件系统提供了在线存储和访问包括数据和程序在内的的文件内容的机制,文件系统永久地驻留在外存上,外存可以永久存储大量数据

磁盘提供大量的外存空间来维持文件系统,磁盘有以下的两个特点,使其成为存储多个文件的方便介质

  • 1、可以原地重写,可以从磁盘上读一块,修改该块,并将它写回到原来的位置
  • 2、可以直接访问磁盘上的任意一块信息。因此,可以方便地按顺序或随机地访问文件,从一个文件切换到另一个文件切换到另一个文件只需要简单地移动读写磁头并等待磁盘转运即可以完成

为了改善I/O效率,内存与磁盘之间的I/O转移是以块为单位而不是以字节为单位来进行。每块为一个或多个扇区,根据磁盘驱动器的不同,扇区从32-4096B,通常为512B

为了提高对磁盘的高效且便捷的访问,操作系统通过文件系统来轻松地存储、定位、提取数据。文件系统有两个不同的设计问题

  • 1、一个就是如何定义文件系统对用户的接口,这个任务是涉及定义文件以及其属性、文件所允许的操作、组织文件的目录结构
  • 2、还有一个就是创建数据结构和算法来将逻辑文件映射到物理外存设备上

文件系统本身就是由许多不同的层组成的,每层利用较低层的功能创建新的功能来为更高层服务,下面我们就看下分层设计的文件系统

这里写图片描述

I/O控制为最底层,主要是由设备驱动程序和中断处理程序组成的,实现了内存与磁盘之间的信息传输。设备驱动程序可以作为翻译器,其输入由高层命令组成比如说”retrive block 123”,其输出由底层的、硬件特定的命令组成,这些命令是用于控制硬件控制器的,通过硬件控制器可以使I/O设备和系统的其他部分进行连接

设备驱动程序通常在I/O控制器的特定位置写入特定位格式来通知控制器在什么位置采取什么动作

基本文件系统只需要向合适的设备驱动程序发送一般命令就可以对磁盘上的物理块进行读写,每个块是由其的数值磁盘地址来标识的(比如说驱动器1,柱面73,磁道3,扇区10)

文件组织模块(file-organization module) 知道了文件的分配类型和文件的位置,文件组织模块可以将逻辑块地址转换为基本文件系统所用的物理块地址

逻辑文件系统是管理元数据的,元数据包括文件系统的所有结构数据,但不包括实际的数据也就是文件内容,其主要功能就是根据给定符号文件名来管理目录结构,并且提供给文件组织模块所需要的信息

逻辑文件系统通过文件控制块来维护文件结构,文件控制块(file control block,FCB)包含文件的信息比如说拥有者、权限、文件内容的位置。逻辑文件系统也负责保护和安全

采用分层的机构实现文件系统,能够最大限度的减少重复的代码,相同的I/O控制代码可以被多个文件系统采用,每个文件系统有自己的逻辑文件系统和文件组织模块

绝大多数的CD-ROM都是按照ISO 9660的格式来刻录的,这一个格式是CD-ROM制造商所遵循的标准格式

猜你喜欢

转载自blog.csdn.net/ZCMUCZX/article/details/80586838