加载中...
存储卡、存储卡格式
发表于:2013-06-07 | 分类: 应用方案
字数统计: 2.5k | 阅读时长: 8分钟 | 阅读量:

概念

  • sd卡,指可用于相机的大SD卡,很多笔记本直接带sd卡读卡插槽
  • microsd卡/ TF卡,手机存储卡就是tf卡

便携移动存储卡格式化适合哪种格式

FAT/FAT16

电脑上格式化时的FAT选项就是FAT16
典型特点:
单个分区最大2G,产生磁盘碎片较多
通常说的FAT实际上是FAT16,它和FAT8都是MS-DOS和最早期的Windows 95操作系统中使用的磁盘文件格式,FAT16采用16位的文件分配表,只支持2G以下的磁盘分区。几乎所有的操作系统都支持这一种格式,从DOS WINDOWS 95/98/NT/ME/2000/XP,甚至LINUX都支持这种分区格式。FAT16分区格式最大的缺点是磁盘利用效率低。这种格式广泛应用于嵌入式系统、便携设备系统等,如基于LINUX的便携设备的外部存储器就是用的FAT16
FAT16使用了16位的空间来表示每个扇区(Sector)配置文件的情形,故称之为FAT16。
在推出FAT32文件系统之前,通常PC机使用的文件系统是FAT16。像基于MS-DOS,Win 95等系统都采用了FAT16文件系统。在Win 9X下,FAT16支持的分区最大为2GB
FAT16文件系统有两个最大的缺点:
(1)磁盘分区最大只能到2GB。当前只要你添购计算机的话,想必其中的硬盘大小必定至少有2GB,而3.2GB、4.3GB以上的硬盘比比皆是,且物美价廉。FAT16文件系统已不能适应当前这种大容量的硬盘,必须被迫分区成几个磁盘空间。而分区磁盘的大小又牵扯出簇的问题来,可谓影响颇大。
(2)使用簇的大小不恰当。试想,如果一个只有1KB大小的文件放置在一个1000MB的磁盘分区中,它所占的空间并不是1KB,而是16KB,足足浪费了15KB!当前流行的HTML文件,其大小几乎多为1KB、2KB,而制作一个网站往往用到数十个HTML文件。如果你的硬盘中有100个这种小文件的话,你浪费的磁盘空间可从700KB(511MB的分区),到3.1MB(2047MB的分区)。
FAT主要征对是DOS系统和单片机系统。

Fat32

Fat32文件系统将是Fat系列文件系统的最后一个产品。
典型特点:容量从512MB到2TG,在Windows中,能分区格式化最多达32GB的FAT32卷,单个文件不能大于4G
FAT32和它的前辈一样,这种格式采用32位的文件分配表,磁盘的管理能力大大增强,突破了FAT16 2GB的分区容量的限制。由于现在的硬盘生产成本下降,其容量越来越大,运用FAT32的分区格式后,我们可以将一个大硬盘定义成一个分区,这大大方便了对磁盘的管理。
FAT32的限制:
1)最大的限制在于兼容性方面,Fat32不能保持向下兼容。
2)当分区小于512M时,Fat32不会发生作用。
4)单个文件不能大于4G。(精确数据是4G-2bytes)。
可以支持的磁盘大小达到2TB(2048GB),但windows上的格式化程序只能创建最大32GB的FAT32文件系统,超过32G的不能格式化为FAT32(使用一些其他的分区工具可以强制格式化成FAT32模式,但FAT32对于超过32G的分区是非常低效率的)
FAT32比FAT16支持更大的磁盘,如果你是用4G以上的记忆棒,应该用FAT32。
FAT32比FAT16节省空间,特别是如果你的文件数量很多且文件字节数很小的时候,FAT16会浪费很多空间。
win98以后的系统均很好的支持。但它也有缺点,首先是因采用的是32位的文件分配表,由于文件分配表的扩大,运行速度比采用FAT16格式分区的磁盘要慢;其次很多系统不能很好支持,如DOS系统和基于DOS的衍生系统、某些应用软件、某些LINUX和基于LINUX的衍生系统,嵌入式系统、便携设备系统等

NTFS

支持最大达2TB的大硬盘,并且随着磁盘容量的增大,NTFS的性能不像FAT那样随之降低。
更安全的文件保障,提供文件加密,能够大大提高信息的安全性。
更好的磁盘压缩功能。
可以赋予单个文件和文件夹权限。对同一个文件或者文件夹为不同用户可以指定不同的权限。在NTFS文件系统中,可以为单个用户设置权限。

还没见过在任何嵌入式Linux上实现兼容的

为什么存储卡是否适合NTFS格式?

不要用NTFS格式,因为断电会导致卡数据异常,导致不能继续写入数据,或者删除数据,或者直接识别不了卡或里面的某个目录。相比之下,FAT32在异常断电时卡很稳定,不容易出现数据异常。

NTFS是日志式文件系统,会极大缩短内存卡、U盘等存储设备的寿命
日志型的文件系统,如果日志是固定在盘上的某个位置,那么会出现频繁反复擦写几个块的情况,确实容易导致这几个块更容易损坏。

为什么固态硬盘可以用NTFS?

SSD 固件有优化,不必担心重复读写保存日志的那一块区域的问题

SSD和NVME则不一定有这种问题,因为U盘和SD卡大多数都是主控比较弱、没有缓存的,所以写块的负载均衡能力比较差(有些甚至根本没有),而SSD/NVME的主控都比较强大,能保证即使上层软件反复擦写一个块,在主控的软件逻辑能让底层重新映射这种擦写行为,或者只写到缓存中,并没有真正刷到硬件上。

exFAT

exFAT(Extended File Allocation Table File System,扩展FAT,即扩展文件分配表)是Microsoft在Windows Embeded 5.0以上(包括Windows CE 5.0、6.0、Windows Mobile5、6、6.1)中引入的一种适合于闪存的文件系统,为了解决FAT32等不支持4G及其更大的文件而推出。对于闪存,NTFS文件系统不适合使用,exFAT更为适用。

请注意:exFAT只是一个折中的方案,特别适合于闪存的文件系统。

现在超过4GB的U盘格式化时默认是NTFS分区,但是这种格式是很伤U盘的,因为NTFS分区是采用“日志式”的文件系统,需要记录详细的读写操作,肯定会比较伤闪盘芯片,因为要不断读写。

ExFAT这种格式是为了解决FAT32等不支持4G及以上的文件而推出的一种新的文件格式,这样我们就能够明白对于闪存/U盘,NTFS文件系统相对而言是不适合的,而EXFAT更为适用使用在U盘上

exFAT、NTFS、FAT分区的比较

分区格式

FAT32

NTFS

exFAT

操作系统

Win 95 OSR2之后

Win2000之后

Win CE 6/Vista SP1/Windows 8

最小扇区

512bytes

512bytes

512bytes

最大扇区

64KB

64KB

32768KB

最大单一文件

2bytes-4GB

受最大分割容量

16EB(理论值)

最大格式化容量

2TB(但NT内核系统限制为32GB)

2TB~256TB(受MBR影响)

16EB(理论值)(目前支持到256TB)

档案数量

4194304

至少可以大于1000

exFAT随身碟不是很在意随身碟的存取效能,那么现在市面上4G、8G的MLC随身碟可以说一点都不贵,这种容量对FAT32支持的单一分割最大容量(32GB)并不成问题,不过超过4GB的文件就有点麻烦。 虽然说很少有单一文件超过4GB的机会,但不代表完全没有:如BD影片的Remux文件、BD/HD影片的原始文件、无损音乐爱好者的未压缩音频文件、DVD光碟的ISO文件、从DV上撷取下来的AVI文件等等,想要完整备份就得选择NTFS或exFAT做为储存格式。
exFat到Win2000下都没办法用,兼容性更差

TF卡的寿命

网上的资料说,树莓派默认将系统安装在TF卡上,TF卡不是真正的SSD硬盘,缺少提高寿命的算法和硬件,再加上Linux本身写入擦除很频繁,容易将某个小区域的写入寿命耗完。其实整张TF卡99%的区域都很剩下很多寿命,只有很少的区域寿命耗尽。但是一小块出故障,会害得整个Linux系统都不能启动。可能会丢失数据。一般都说,1年玩坏1张TF卡。

SD/TF卡的读写

并口或者SPI
SD卡在电路中如何读写?可采用SPI等方式读写
SD卡在现在的日常生活与工作中使用非常广泛,在数码相机等设备上也都采用SD卡作为其存储设备。SD卡之所以得到如此广泛的使用,是因为它价格低廉、存储容量大、使用方便、通用性与安全性强等优点。既然它有着这么多优点,那么如果将它加入到单片机应用开发系统中来,将使系统变得更加出色。
 
卡的触点/连接器
连接器可能专门又带一个插入卡检测

历史

  • 20220816 补充强调为什么存储卡不适合NTFS格式、固态硬盘可以用NTFS
  • 20130607 整理存储卡、存储格式、存储卡的读写
上一篇:
如何手动修改修改wp-postviews计数
下一篇:
nginx使用经验
本文目录
本文目录