移动存储卡仍然用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的文件格式,但通用性更低。
移动存储卡仍然用FAT32文件系统的真相的更多相关文章
- FAT32文件系统
- U盘FAT32文件系统
一.FAT文件系统分为四个部分 参考别人的博客 1.http://blog.163.com/ourhappines@126/blog/static/121363154201311811495492/ ...
- FAT32文件系统--For TF卡
1. TF卡空间是如何分配的? 下面以4GB TF卡为例,通过WinHex工具进行分析,其空间分配如下图所示: FAT32把目录当做文件来管理,所以没有独立的目录区,所有的文件目录项都是在数据区里面的 ...
- SD卡FAT32文件系统格式
一.声明 1.本文来源和主旨 2.本文测试环境 二.SD卡FAT文件系统 1.SD卡FAT32文件系统的整体布局 2.FAT文件系统简介 ① 文件分配表 ② 目录项 三.DBR(DOS BOOT RE ...
- 使用hexdump追踪FAT32文件系统中的一个文件
最近在看文件系统基础结构等知识,本来重点是想看EXT4文件系统,但是目前没有找到比较详细说明EXT4文件系统详细结构的,用EXT3的对应着找结果有点出入,在想是不是我用hexdump的参数有问题,于是 ...
- FAT32文件系统的存储组织结构(二)
前面已经基于一个格式化的空U盘分析了一下FAT32文件系统存储的组织结构,下面我们从文件操作的角度来分析一下文件系统的运作机制.由于换了个U盘,所以仍然贴出刚格式化的空U盘的几个重要的数据区如下: ...
- FAT32文件系统的存储组织结构(一)
对磁盘的物理结构,逻辑结构和存储结构有了比较深入的了解后,我们来仔细探讨FAT32文件系统的存储组织结构.说到文件系统的组织结构,我们应该马上意识到,这指的是文件系统在同一个分区内的组织结构,在这个话 ...
- FAT32文件系统学习(3) —— 数据区(DATA区)
FAT32文件系统学习(3) —— 数据区(DATA区) 今天继续学习FAT32文件系统的数据区部分(Data区).其实这一篇应该是最有意思的,我们可以通过在U盘内放入一些文件,然后在程序中读取出来: ...
- FAT32文件系统学习(上)
2011-06-02 22:30:48 目的:需要编写SD读图片的底层驱动程序.所以要了解一个SD卡常用文件系统基本概念.累计学习用时2.5小时. 一,FAT32的保留区 1,引导扇区 :引导扇区是F ...
随机推荐
- Spring MVC 中的 forward 和 redirect
Spring MVC 中,我们在返回逻辑视图时,框架会通过 viewResolver 来解析得到具体的 View,然后向浏览器渲染.假设逻辑视图名为 hello,通过配置,我们配置某个 ViewRes ...
- ASP.Net免费发送短信-阿里大鱼短信接口
有点短信余额 不用白不用 3月1号就过期了 情人节做了个免费发短信的 http://love.issuc.com/ 固定短信模板 [活动验证]您正在参加XXX的OOO活动,请确认系本人申请.需要的可以 ...
- 关于sql 资源竞争死锁现象
问题:System.Exception: 事务(进程 ID 321)与另一个进程被死锁在 锁 | 通信缓冲区 资源上,并且已被选作死锁牺牲品.请重新运行该事务 死锁最深层的原因就是一个:资源竞争 表现 ...
- AndroidStudio1.4 manifest 中注册Activity时的错误提示解决办法
问题截图如下: 解决办法截图如下: 1: File->setting->Editor->Language Injections到如下界面 2:双击右侧选中的Item进入编辑界面 3: ...
- C# Ref 与out 的区别
在C#中,有四种传递参数方式: 1. 传值 (value) : 无额外修饰符 2. 传址(reference) : 需修饰符Ref,传入函数的参数必须先赋值 3. 输出参数(output): 需修饰符 ...
- Jsoup解析Html教程
Jsoup应该说是最简单快速的Html解析程序了,完善的API以及与JS类似的操作方式,为Java的Html解析带来极大的方便,结合多线程适合做一些网络数据的抓取,本文从一下几个方面介绍一下,篇幅有限 ...
- c#基础-----数据类型,转义字符,引用类型,类型转换
数据类型,转义字符,引用类型,类型转换 百度一下
- 适合自己的vim配置文件
主要用来写c++的:clang-completer这个是单独安装的,其他的都采用的vundle安装完成. clang-completer:只在centos7.2上安装成功过,6.4上失败了.先要安装一 ...
- 学渣也要搞 laravel(3)—— HTTP控制器
1. laravel 控制器在app/Http/Controllers/ 下,你会看到里面有一个Controller.php ,之后我们创建的控制器都是继承这个总控制器的.创建控制器只需要在这里面添加 ...
- [Linux]关机和重启命令
Linux中常用的关机和重新启动命令有shutdown.halt.reboot以及init,它们都可以达到关机和重新启动的目的,但是每个命令的内部工作过程是不同的,下面将逐一进行介绍. 1. shu ...