加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

文件系统概述

2021/02/04
151
阅读需 5 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

今天讲一下文件系统,遇见过单个最大文件的问题,所以将此问题记录下来,希望对大家有用。

FAT32(Windows):支持最大分区 128GB,最大文件 4GB。

FAT16(Windows):支持最大分区 2GB,最大文件 2GB。

NTFS(Windows):支持最大分区 2TB,最大文件 2TB。

HPFS(OS/2):支持最大分区 2TB,最大文件 2GB。

EXT2 和 EXT3(Linux):支持最大分区 4TB,最大文件 2GB。

EXT4(Linux):容量达到 1EB,而文件容量则达到 16TB。

JFS(AIX):支持最大分区 4P(block size=4k),最大文件 4P。

XFS(IRIX):这是个正经的 64 位的文件系统,可以支持 9E(2 的 63 次方)的分区。

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 更为适用。对于磁盘则不太适用。

一般,单个文件超过 4G 的文件系统,要不是 NTFS,要不是 exFAT。

这一点是需要注意的,比如音视频领域,如果分辨率很高(如 4K30,1080P120),录视频起来文件是很大的,一分钟几百 M,如果单个文件超过 4G,但是文件系统不支持,就会出现问题,一般会主动截断这个视频,新建一个文件。(比如海思 Hi3559V200 的 SDK 中,SD 卡采用的是 FAT32 文件系统,而FAT32 文件系统支持单个最大的文件是 4G,所以一般会主动截断视频,这样也不会因为一个小错误,整个几个小时的录像文件失效,只不过查看的时候不是一个文件,会麻烦一些)

海思 SDK 没有合并入 exFAT 格式,因为那是微软的专利,会侵权。海思 SDK 用的 Linux 内核是 4.9.37 版本,2019.11.25 日发布的 Linux5.4 版本宣布加入了 exFAT 格式。后期开发项目可以用Linux5.4及以上版本,这样不需要移植代码就可以使用 exFAT 文件系统,需要获权。

一般我们电脑磁盘的文件系统是 NTFS,因为我们的操作系统安装包或者大型软件安装包都超过 4G。


换算关系

1EB=1024PB,1PB=1024TB,1TB=1024GB,1GB=1024MB……

单位转换(参考):

1B=1Byte=8bit  1 字节=8比特

1 kB = 1024 B (kB - kilobyte) 千 2^10

1 MB = 1024 kB (MB - megabyte) 兆 2^20

1 GB = 1024 MB (GB - gigabyte) 吉 2^30

1 TB = 1024 GB (TB - terabyte) 太 2^40

1 PB = 1024 TB (PB - petabyte) 拍 2^50

1 EB = 1024 PB (EB -exabyte) 艾 2^60

1 ZB = 1024 EB (ZB - zettabyte) 皆 2^70

1 YB = 1024 ZB (YB -yottabyte) 佑 2^80

1 BB = 1024 YB (BB - brontobyte) 2^90

以上为计算机用的2^10 (1024)数量级。

相关推荐

电子产业图谱

研究生在读,熟悉硬件、STM32单片机、嵌入式Linux。已收获小米、联发科、浙江大华、上能电气、英威腾、汇川技术、格力、富士康等大厂offer。在这里分享求职经验、嵌入式学习规划、考研、嵌入式Linux技术文章等。