用认真的态度与专业的情怀倾注于存储,欢迎关注我,与我交流哦!
我们常用的电脑系统主要是Windows和Linux,其中,Windows系统中常用的文件系统主要是FAT和NFTS,FAT是旧Windows和U盘用的较多,最新Win7/8.1/10均默认使用NTFS。而Linux常用的文件系统是Ext2/3/4和Btrfs.
对于电脑来说,不管是什么系统(Windows或者Linux),固态硬盘SSD都是只是一块硬盘, 类似一个黑匣子,并不需要特别的文件系统。
固态硬盘SSD中的存储介质是NAND闪存。在系统和NAND闪存之间,存在一个FTL层,也称为闪存转换层。负责磨损平衡Wearl Leveling, 垃圾回收Garbage Clean, 坏块管理Bad Block Management, ECC纠错等。
此外,系统写入的数据只是写入相应的逻辑地址(Logical address)上,通过FTL层之后,数据最后会写入到对应的物理地址(Pysical address)上。
鉴于很多文件系统都是基于机械硬盘开发的,但是,由于固态硬盘SSD和机械硬盘在结构和原理上的重大区别,一些文件系统会对固态硬盘作出特别的优化。
首先,不管哪种文件系统,都需要对固态硬盘进行4K对齐。固态硬盘的存储介质是NAND闪存,而4K对齐是提升NAND闪存性能和寿命的关键一步。4K对齐前后,固态硬盘SSD的性能会提升很多,如下图测试数据。
其次,从系统层面针对SSD进行优化。在这里说两个特别针对SSD/NAND进行优化的文件系统。
一是三星的F2FS, 全称Flash Friendly File System. 这是专门针对闪存开发的文件系统。与传统的Ext3/4文件系统相比,F2FS文件系统的4K读写性能有了很大的提升。而4K读写性能反馈的是小文件处理的速度,也是我们平时使用电脑过程中用的最多模式。华为在Mate9上也应用了F2FS替代了Ext4文件系统。让手机的碎片更少,运行更流畅!
二是苹果的新一代APFS,全称Apple File System. 在APFS还没有问世之前,苹果产品搭载的都是HFS+文件系统,而HFS+文件系统主要是基于软盘和机械硬盘研发的,在面对固态硬盘SSD时,HFS+已经不能满足性能的需求。这时,针对NAND闪存、SSD固态硬盘开发的APFS文件系统就是应运而生咯。支持SSD中的FTL和Trim,能够最大程度的提升存储空间利用率。
结语
对于电脑来说,固态硬盘SSD就是一个黑匣子,并不需要特别的文件系统。但是,一些文件系统比如F2FS, APFS,都专门针对SSD/NAND做了相应的优化。
针对这个问题,你有何想法呢?
在下抛砖引玉,欢迎各位看官拍砖讨论,感谢!