计算机的文件系统是一种存储和组织计算机数据的方法,它使得对其访问和查找变得容易,文件系统使用文件和树形目录的抽象逻辑概念代替了硬盘和光盘等物理设备使用数据块的概念,用户使用文件系统来保存数据不必关心数据实际保存在硬盘(或者光盘)的地址为多少的数据块上,只需要记住这个文件的所属目录和文件名。在写入新数据之前,用户不必关心硬盘上的那个块地址没有被使用,硬盘上的存储空间管理(分配和释放)功能由文件系统自动完成,用户只需要记住数据被写入到了哪个文件中。

file-system.png

文件系统通常使用硬盘和光盘这样的存储设备,并维护文件在设备中的物理位置。但是,实际上文件系统也可能仅仅是一种访问数据的界面而已,实际的数据是通过网络协议(如NFS、SMB、9P等)提供的或者内存上。

磁盘文件系统是一种设计用来利用数据存储设备来保存计算机文件的文件系统,最常用的数据存储设备是磁盘驱动器,可以直接或者间接地连接到计算机上。例如:FAT、exFAT、NTFS、HFS、HFS+、ext2、ext3、ext4、ODS-5、btrfs、XFS、UFS、ZFS。

文件系统与主流操作系统的关系

DOS / Microsoft Windows支持的文件系统

FAT12/FAT16、FAT32/VFAT、FAT64/exFAT、NTFS

maxresdefault.jpg

Windows文件系统怎么选?建议硬盘-NTFS、SSD-NTFS、U盘-FAT32(应用盘)、exFAT(数据盘)

Linux支持的文件系统

Linux操作系统使用虚拟文件系统(VFS)向上和用户进程文件访问系统调用接口,向下和具体不同文件系统的实现接口。VFS屏蔽了具体文件的实现细节,向上提供统一的操作接口。通过VFS可以实现任意的文件系统,这些文件系统通过文件访问系统调用都可以访问。

Linux系统核心可以支持十多种文件系统类型:Btrfs、JFS、ReiserFS、exFAT、ext、ext2、ext3、ext4、XFS、ISO 9660、Minix、MSDOS、UMSDOS、VFAT、NTFS(Linux Kernel内置的NTFS驱动程序,写入功能不稳定)、HPFS、NFS、SMB、SysV、PROC等。

Linux文件系统怎么选?建议根随系统自动设置,除非主动升级文件系统(如ext3->ext4),或者需要挂载NTFS磁盘。

UNIX及BSD操作系统下的文件系统

包括IRIX上的XFS、IBM AIX的JFS、HP HP-UNIX的VxFS、迪吉多Tru64的AdvFS及Solaris的ZFS。

macOS(Mac OS X)的文件系统

再早采用HFS,从1998年到2016年间使用HFS+。从2016年发布的macOS Sierra起,使用苹果文件系统(APFS)。

👍

本文由 CulmartPlay 整理发布,参考 CC-BY-SA 3.0 协议共享,欢迎转载、引用或改编。
感谢您的支持,以共同推动STEM公益教育!

楼主残忍的关闭了评论