移动存储卡仍然用FAT32文件系统的真相

微软在2001年就为自家的XP系统的本地磁盘默认使用了NTFS文件系统,但是12年之后,市面上的USB可移动设备和SD卡等外置存储器仍然在用着FAT32文件格式,这是什么理由让硬件厂商选择过时的文件系统格式?

很显然,这不是硬件厂商自身的问题,但是对于用户而言,用过NTFS格式后,会发现FAT32文件系统格式带来诸多不便。

FAT32文件系统的不足之处:

• FAT32文件系统不支持4G及以上单文件的存储,FAT32文件系统最大支持的储存空间为2TB。例如高清电影,几乎无法往FAT32格式的磁盘里面拷贝或者写入。

• FAT32不是一个日记型的文件系统,也意味着该文件系统更容易发生问题。但是NTFS就添加了对文件系统的检查功能,降低了磁盘的数据风险问题。

• FAT32不支持文件的权限功能。借助NTFS文件系统,可以进一步增强磁盘存储文件的安全权限能力。

因此,对于Windows的系统盘,最佳的方式是使用NTFS格式的文件系统进行管理,NTFS格式也更安全、可靠以及支持更大的文件体积和驱动设备。

但是对于可移动存储设备的情况,却不同了。

以下是详细原因:

1、U盘/SD卡的容量都低于2TB,因此不用担心磁盘容量有上限的问题。偶尔会用拷贝移动体积在4G左右的文件。

2、无论U盘还是SD卡,不需要使用类似系统盘的日记型磁盘管理功能,最主要的功能在于便携,可移动性,如果U盘使用NTFS格式,也会带来更大的读写量,降低U盘闪存的寿命。

3、对于文件权限功能,U盘或者SD卡也不大会用上。只有当在不同的机器设备之间移除可移动设备时,才会遇到类似的问题。

例如在A机器本地磁盘,由于本地驱动和管理,并分配了唯一的特殊的用户ID号码,就可以一直正常工作,但是对于U盘和SD卡设备而言,由于需要在不同的机器设备之间变更,因此每次都会生成不同的ID识别号码,因此也不存在文件权限安全的问题。

因此,除非是需要使用4G以上的单文件的写入时,才需要将U盘/SD卡格式化为NTFS文件系统,在其余的使用环境下,FAT32文件系统也足够使用了。

最后谈一下所有桌面系统对FAT32和NTFS两种文件系统的兼容性:

• Win平台:两者都兼容

• Mac平台:Mac OS X全面支持读取NTFS文件系统,无法写入;对于FAT32可以正常读写

• Linux平台:可以正常读写NTFS文件格式,但并不完美,一般使用Linux自家的文件系统格式

因此,对于可移动设备,经常会连接到不同的桌面系统上,如果使用FAT32文件系统,都可以正常操作和读写,如果使用可NTFS文件系统,不能保证正常工作。因此对于硬件厂商而言,只能选择一种通用性更强的文件系统,即FAT32,用于U盘或者SD卡等可移动存储设备中。

同时微软也提供了一种exFAT的文件格式,但通用性更低。

时间: 2024-10-01 00:46:08

移动存储卡仍然用FAT32文件系统的真相的相关文章

FAT32文件系统学习(3) —— 数据区(DATA区)

FAT32文件系统学习(3) —— 数据区(DATA区) 今天继续学习FAT32文件系统的数据区部分(Data区).其实这一篇应该是最有意思的,我们可以通过在U盘内放入一些文件,然后在程序中读取出来:反过来也可以用程序在U盘内写入一下数据,然后在windows下可以看到写入的文件.这些笔者都会在这篇文章中演示.同时,在写这篇文章的时候笔者也发现了许多意想不到的规律. 1.本文目录 1.读取根目录 2.短文件名目录项 3.长文件名目录项 4.U盘写入文件夹 5.参考文献 2.读取根目录 两张FAT

FAT32文件系统--For TF卡

1. TF卡空间是如何分配的? 下面以4GB TF卡为例,通过WinHex工具进行分析,其空间分配如下图所示: FAT32把目录当做文件来管理,所以没有独立的目录区,所有的文件目录项都是在数据区里面的. 2. 启动扇区 (DBR) DBR(DOS BOOT RECORD,DOS引导记录),位于柱面0,磁头1,扇区1,即逻辑扇区0 ;    DBR包括: •  一个引导程序: DOS 引导程序完成DOS系统文件(IO.SYS,MSDOS.SYS)的定位与装载 • 一个BPB:  BPB用来描述本D

【转载】FAT32文件系统详解

硬盘是用来存储数据的,为了使用和管理方便,这些数据以文件的形式存储在硬盘上.任何操作系统都有自己的文件管理系统,不同的文件系统又有各自不同的逻辑组织方式.例如:常见的文件系统有FAT,NTFS,EXT,UFS,HFS+等等.作者后面的文章会一一讲到,下面就来学习一下基于Windows的FAT32文件系统. FAT32文件系统由DBR及其保留扇区,FAT1,FAT2 和 DATA 四个部分组成,其机构如下图: 这些结构是在分区被格式化时创建出来的,含义解释如下: DBR及其保留扇区:DBR的含义是

FAT32文件系统学习(2) —— FAT表

1.题外话 在继续本文学习FAT32文件系统之前,先来插入一点别的话题.我们都知道U盘有一个属性是容量,就拿笔者的U盘为例,笔者手上的U盘是金士顿的DataTraveler G3 4GB的一个U盘.电脑上显示的容量如图1所示为3.75GB.那么这个3.75GB是怎么计算出来的呢? 图 1 系统显示U盘属性 我们先来回顾一下上一篇BPB参数当中的Sectors(扇区总数)这个参数,这一参数代表了这个U盘在出厂时的总扇区数,笔者手上这个是7884672个,可以从图2中看到.其中每个扇区为512 B,

FAT32文件系统学习(1) —— BPB的理解

FAT 32 文件系统学习 1.本文的目标 本文将通过实际读取一个FAT32格式的U盘来简单了解和学习FAT32文件系统的格式.虽然目前windwos操作系统的主流文件系统格式是NTFS,但是FAT32由于其兼容性原因,还是有一定的学习价值.为了能做出一个窗体程序提供直观的感觉,本文的代码采用c#编写,对应的c++代码也会附上. 2.本文目录 1.本文的目标 2.什么是FAT32 3.引导区 2.什么是FAT32 FAT32是Windwos系统硬盘格式分区的一种.这种格式采用32位的文件分配表,

SD卡FAT32文件系统格式

一.SD卡FAT32文件系统 二.DBR(DOS BOOT RECORD,DOS引导记录) 1.DBR [1]0x00~0x02:3字节,"EB5890",跳转指令. [2]0x03~0x0A:8字节,文件系统标志和版本号,这里为MSDOS5.0. [3]0x0B~0x0C:2字节,每扇区字节数,512(0X02 00). [4]0x0D~0x0D:1字节,每簇扇区数,8(0x08),这个值不能为0,而且必须是2的整数次方,比如1.2.4.8.16.32.64.128. [5]0x0E

FAT32文件系统的存储组织结构(二)

前面已经基于一个格式化的空U盘分析了一下FAT32文件系统存储的组织结构,下面我们从文件操作的角度来分析一下文件系统的运作机制.由于换了个U盘,所以仍然贴出刚格式化的空U盘的几个重要的数据区如下:   我们可以看出,在分区格式化的时候,系统将卷标TEST_FAT32存储在2号簇,即跟目录区,如上面根目录贴图所示.同时,在FDT区2号簇标记位置写入了文件结束符FF FF FF 0F.显然,FAT32文件系统将目录当做普通文件来处理的. 下面我们在根目录下新建一个文件夹TEST1,看会有什么变化:

FAT32文件系统的存储组织结构(一)

对磁盘的物理结构,逻辑结构和存储结构有了比较深入的了解后,我们来仔细探讨FAT32文件系统的存储组织结构.说到文件系统的组织结构,我们应该马上意识到,这指的是文件系统在同一个分区内的组织结构,在这个话题上,我们完全可以不管分区之外的所有事情. 为了分析FAT32文件系统的存储组织结构,我们来建立一个实实在在的文件系统:将U盘插入电脑,将U盘格式化成FAT32分区格式: 以建好的U盘FAT32文件系统为基础,下面从文件系统的各个组成来分别加以介绍. 分区引导扇区DBR 用winhex打开U盘显示如

FAT32文件系统定位FAT文件分配表以及根目录

一.FAT1起始扇区 =  DBR的扇区号 + 保留扇区号 1.获取DBR的扇区号 磁盘的0号扇区的 0X1C6~0X1C9是第一个分区的起始扇区,这个扇区就是DBR 下图是本人的磁盘的0号扇区,可以看到DBR的扇区号是0X00 00 00 3F(小端格式) 2.得到保留扇区 打开DBR扇区,偏移0X0E~0X0F表示保留扇区 由图可知保留扇区数为0X00 26. FAT1起始扇区 =  DBR的扇区号 + 保留扇区号  = 0X3F + 0X26 = 0X65 打开扇区号为0X65的扇区,这就