📜  操作系统-文件系统(1)

📅  最后修改于: 2023-12-03 15:26:01.157000             🧑  作者: Mango

操作系统-文件系统

1. 文件系统(File System)是什么?

在操作系统中,文件系统是负责管理计算机文件、目录的一种机制。所有电脑中的数据都存在着不同的存储媒介中(硬盘、U盘、网络驱动器等等),而文件系统是必须存在的,它们将这些数据组织成一个个文件,使得我们可以方便地访问、修改这些文件。

文件系统 (File System) 是指对文件(File)进行存储、组织、管理、保护、共享及获取的一组原理、规范和方法,包含了创建文件、删除文件、查找文件、文件存储空间的分配、文件名/文件路径编写等内容。

2. 文件系统在操作系统中的作用

文件系统是操作系统中最重要的组成部分之一,它负责管理磁盘上的文件和目录的命名、组织、存储和访问。在操作系统引导完成后,文件系统会挂载磁盘上的分区(如 /、/home、/var等等)。

3. 常见的文件系统
3.1 FAT 文件系统

FAT 意为 File Allocation Table,即文件分配表。它是 MS-DOS 操作系统使用的文件系统,后来 Windows 操作系统继续沿用并发展了这种文件系统,直到 Windows 7 之前。

FAT 文件系统的主要优点是简单、兼容性好,不需要太高的计算机性能即可运行,可移动设备上也十分常见,缺点是不支持文件或目录的权限等安全控制的功能。

3.2 NTFS 文件系统

NTFS(New Technology File System)是 Windows NT 操作系统使用的文件系统,Windows 8及以后的 Windows 操作系统使用的默认文件系统。也是 Windows Server 系统主流的文件系统。

NTFS 文件系统支持大于 4GB 的单个文件,支持加密、压缩等功能,支持更高的可靠性和安全性,支持文件和目录的权限等安全控制的功能。

3.3 EXT 文件系统

EXT(Extended File System)是最早的针对 Linux 操作系统开发的文件系统,适用于 Linux 平台,后续的文件系统发展也都建立在 EXT 的基础上。

EXT 文件系统的优点在于效率较高、可靠性较强、支持软链接和硬链接等特性,但目前 EXT 文件系统也有许多不足,在性能、最大文件或文件系统大小上有限制。

4. 文件系统的内存缓存

文件系统在访问磁盘数据时,为了节省访问时间,会把磁盘上的文件内容读入内存缓存中,并建立文件与缓存的映射关系。这样,在下一次访问这个文件的时候,就可以直接在内存中查找数据,而不需要重新访问磁盘。

但是文件系统和内存缓存之间也存在一些数据同步的问题,比如当文件被修改过后,缓存中的数据和磁盘上的数据就不再一致。因此,文件系统需要考虑如何保证数据的一致性和安全性。

5. 磁盘碎片整理

为了高效地利用磁盘空间,文件系统会把文件存储在物理磁盘上空闲的空间中。随着文件不断增多和删除,文件系统在磁盘中留下的区域就不再连续,这就是碎片。为了保持较高的性能,文件系统需要定期对碎片进行整理或压缩,统一连续的空闲区域,使得新的文件能够被连续存储。

6. 总结

文件系统是操作系统中至关重要的组成部分之一,它的作用是管理及组织文件和目录,并提供对数据的安全性和可靠性保护。在应用程序开发中,开发人员需要了解和熟悉操作系统中的文件系统,以更好地进行文件的读写、查找、命名等操作,提升应用程序的稳定性和性能。