Windows中“大小”和“占用空间”的区别
“大小”比“占用空间”小
磁盘上最小的物理存储单元是“扇区(Sector)”。由于寻址能力有限,文件系统并不直接操作扇区。文件系统中,最小的可操作单位是“簇(Cluster)”。一个簇由相邻的几个扇区组成。
存储文件时,文件系统会分配足够数量的簇,使其恰好能容下文件。文件属性中的“大小”指的是文件本身的大小,“占用空间”则是文件占用的簇的大小总和。
为了更好地管理磁盘空间和更高效地读写数据,一个簇只能包含一个文件的内容。所以,当一个文件的大小不是簇的大小的整数倍时,最后一个簇的空间无法被完全利用,“大小”就会小于“占用空间”。它们的差值也就是最后一个簇中浪费掉的空间的大小。通常来说,大多数的文件大小都不是簇的大小的整数倍,因此“大小”一般都比“占用空间”小。
“大小”比“占用空间”大
当然也存在一些特殊情况,“大小”会比“占用空间”大。
小文件(占用空间为零)
在 NTFS 文件系统中,有一个主文件表(MFT,Master File Table)。它会给每个文件分配一个固定大小的空间,用来记录文件的信息,包括文件的名称、属性、存储文件的簇的位置。如果一个文件足够小,小到这个空间也能容得下它,文件系统就不会为其分配簇,而是直接将其内容存在 MFT 中。由于“占用空间”计算的是占用的簇的大小总和,这类文件的“占用空间”就是 0 了,自然比“大小”小。
启用压缩的文件
如果在属性中启用了“压缩”,文件的“占用空间”自然会比“大小”小。
OneDrive释放空间后的文件
如果在 OneDrive 中释放了空间,文件就只存储在云端了,“占用空间”自然会比“大小”小。
参考文章
Windows中“大小”和“占用空间”的区别
https://tomzhu.site/2022/01/25/Windows中“大小”和“占用空间”的区别/