首页 > 其他 > 详细

操作系统-第十一章-文件系统的实现

时间:2020-12-11 22:37:39      阅读:48      评论:0      收藏:0      [点我收藏+]

一、文件系统

  • 在存储设备上组织文件的方法和数据结构
  • 操作系统中负责管理存储文件信息的模块
  • 系统角度的
    • 对存储设备的空间进行组织和分配
    • 负责文件检索、读写等操作
    • 目标:存取速度和存储空间效率
  • 用户角度
    • 提供按名存取的文件访问机制
    • 文件的组织管理,如目录等
    • 目标:方便的文件存取机制

1.文件系统结构

  • 文件系统本身通常由许多不同的层组成,文件系统具有层次架构
  • 技术分享图片
  • I/O控制
    • 设备驱动程序(Device Drivers)
    • 中断
  • 设备驱动程序
    • 控制I/O设备运行
    • 向硬件控制器发送专门控制命令
    • 操作系统通过设备驱动程序控制设备进行文件的读写操作
  • 基本文件系统
    • 负责物理块读写
    • 向设备驱动程序发送控制命令控制设备控制器对存储设备进行读写操作
  • 文件组织模块
    • 管理文件、逻辑块和物理块
    • 把文件的逻辑地址转换为物理地址
    • 管理空闲空间
    • 为文件分配物理块
  • 逻辑文件系统
    • 管理文件系统中的元数据
      • 除了文件数据外的所有结构数据
    • 文件按名存取
    • 文件目录组织管理
    • 把文件名转换为文件ID,文件句柄
    • 管理FCB
    • 存储保护

2.文件系统实现

2-1:基本概念
  • 物理块):一个或多个(2n)扇区组成,基本文件读写单位
  • 物理分区Partition):磁盘分割成若干个独立的空间,每个空间称为分区
    • 两大类分区:主分区扩展分区
    • 主分区:能够安装操作系统的启动分区
    • 扩展分区:不能直接使用,必须分成若干逻辑分区
  • (逻辑磁盘)(Volume):磁盘上的逻辑分区,建立在物理分区上
    • 一般每个卷可以建立一个文件系统:技术分享图片
  • 典型文件系统技术分享图片

2-2:两种文件系统
  • 磁盘文件系统内存文件系统
  • 磁盘文件系统
    • 引导控制块:包含了系统引导操作系统的各种信息,只有安装操作系统的分区才会有引导控制块
      • UFS:引导块(Boot block)
      • NTFS:分区引导扇区(Partition boot sector)
    • 分区控制块:包含分区信息
      • 总的块数、空闲块数、块大小等信息
      • UFS:超级块(superblock)
      • NTFS:主控文件表(master file table)
    • 目录和FCB
    • 用户文件
    • 磁盘结构技术分享图片
  • 内存文件系统
    • 包含:
      • 分区表:所有安装分区信息
      • 目录缓冲结构:保存最近访问的目录信息
      • 系统打开文件表
      • 进程打开文件表
    • 文件操作需要用到内存文件系统
    • 目的:通过缓冲技术提高文件系统性能
    • 引入内存文件系统的目的是为了节省外存空间
    • 内存中文件系统结构技术分享图片

2-3:虚拟文件系统(Virtual File System)
  • 目的
    • 为了支持多个文件系统,引入虚拟文件系统VFS
    • 把多个文件系统整合成一个目录结构
    • 为用户屏蔽各个文件系统的差异
    • 虚拟文件系统可以把多个文件系统整合成一个目录结构,为用户屏蔽各个文件系统的差异
  • 虚拟文件系统(VFS):
    • 提供了一种面向对象的方法来实现文件系统
    • 为不同类型的文件系统提供了接入VFS的接口
    • 为用户提供了统一的系统调用接口(API)
  • 文件系统接口(File system interface):
    • 统一的应用程序访问文件的接口
    • 各个文件系统提供给应用程序的接口可能不同,如:open、openfile、openf、open_file等
  • VFS接口(VFS interface):
    • 为各类不同的文件系统定义VFS接口
    • 符合该接口的文件系统都可以接入VFS
  • 示意图技术分享图片

2-4:网络文件系统(NFS)
  • 网络文件系统(NFS,Network File System):用于通过LAN(或WAN)访问远程文件系统的软件系统的实现或规范
  • 好处:节省存储空间,实现共享
  • 技术分享图片

2-5:CIFS
  • 通用Internet文件系统(Common Internet File System):在Windows主机之间进行网络文件共享
  • CIFS使用客户/服务器模式
  • 技术分享图片

2-6:常用文件系统
  • Windows
    • FAT(File Allocation Table)
    • NTFS(New Technology File System)
    • ReFS(Resilient File System)
  • Linux
    • Ext(Ext2、Ext3、Ext4)
  • Mac OS
    • HFS(Hierarchical File System)
  • CD
    • CDFS

操作系统-第十一章-文件系统的实现

原文:https://www.cnblogs.com/fangzhiyou/p/14122162.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!