术语物理文件系统参考 https://en.wikipedia.org/wiki/File_system#Architecture。
在我看来,物理文件系统是构建在物理存储介质上的。它使用低级接口与物理存储介质交互。因此它应该在特定类型的存储介质上工作。例如,您无法将光盘格式化为专为磁盘设计的 ext4 文件系统。
我的问题是,如果上述描述属实,为什么 ext4 文件系统可以用于闪存,闪存是与磁盘不同类型的存储介质。 Flash 和 HDD 是否具有相同的低级接口或协议?
我用Google搜索过,但没有找到有用的信息。希望大家能给点建议。
这取决于文件系统驱动程序,但通常文件系统可以使用不同的媒体类型。
特别是 ext4 适用于 HDD 和 SSD 以及其他闪存驱动器类型。
它能做到这一点的原因是因为它使用Linux的“块层”作为其磁盘抽象,因此任何可以表示为块设备的东西都可以格式化为ext4。
也就是说,ext4 是为 HDD 编写的,并针对它们进行了优化 - 即使您使用的文件系统可以存储在其他类型的介质上,您也可能无法充分利用该介质。
请注意,其他类型的文件系统可能会避免块设备抽象并直接与驱动程序对话。例如 UBIFS 和 NFS。