前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >文件大小为什么和占用空间不一样?

文件大小为什么和占用空间不一样?

作者头像
狼啸风云
修改于 2022-09-02 11:30:07
修改于 2022-09-02 11:30:07
7.8K0
举报

一个文件,无论存储在硬盘空间还是其它移动存储空间,文件本身的大小,要比所占用的空间要小;

  比如说,一个12K的Txt文件,所占用的空间大于12K,这是为什么呢?

  此外,还存在这样的情况,同一个文件,存放在不同的磁盘分区、不同的操作系统环境,所占用的空间也不一样!这又是为什么呢?

①文件大小与所占空间的差别

  文件的大小其实就是文件内容实际具有的字节数,它以Byte为衡量单位,只要文件内容和格式不发生变化,文件大小就不会发生变化。但文件在磁盘上的所占空间却不是以Byte为衡量单位的,它最小的计量单位是“簇(Cluster)”。

什么是簇?

  文件系统是操作系统与驱动器之间的接口,当操作系统请求从硬盘里读取一个文件时,会请求相应的文件系统(FAT 16/32/NTFS)打开文件。扇区是磁盘最小的物理存储单元,但由于操作系统无法对数目众多的扇区进行寻址,所以操作系统就将相邻的扇区组合在一起,形成一个簇,然后再对簇进行管理。每个簇可以包括2、4、8、16、32或64个扇区。显然,簇是操作系统所使用的逻辑概念,而非磁盘的物理特性。

  为了更好地管理磁盘空间和更高效地从硬盘读取数据,操作系统规定一个簇中只能放置一个文件的内容,因此文件所占用的空间,只能是簇的整数倍;而如果文件实际大小小于一簇,它也要占一簇的空间。所以,一般情况下文件所占空间要略大于文件的实际大小,只有在少数情况下,即文件的实际大小恰好是簇的整数倍时,文件的实际大小才会与所占空间完全一致。

②分区格式与簇大小

  计算文件所占空间时,可以用如下公式:

簇数=取整(文件大小/簇大小)+1

  所占空间=簇数×磁盘簇大小

  公式中文件大小和簇大小应以Byte为单位,否则可能会产生误差。如果要以KB为单位,将字节数除以1024即可。利用上述的计算公式,可以计算ersave2.dat文件的实际占用空间。

③轻松查看簇大小

1、用Chkdsk查看簇大小

  在Windows操作系统中,我们可以使用Chkdsk命令查看硬盘分区的簇大小。例如我们要在Windows XP下查看C盘的簇大小,可以单击“开始→运行”,键入“CMD”后回车,再键入“C:”后回车,然后输入“Chkdsk”后回车,稍候片刻从它的分析结果中,我们就可以得到C盘的簇大小,不过它把簇称之为“分配单元”或者“Allocation unit”。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/02/21 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
为什么文件占用空间跟文件大小不一样
上面3张图展示了文件大小与占用空间的大小几种情况,前两种场景是比较常见的情况,之所以有时文件大小会比占用空间小时因为簇大小的限制,簇代表了可以分配用来保存文件的最小磁盘空间量,笔者存放sparse.txt文件所在区簇的大小为4096字节,图1中文件大小为4096字节(可以使用chkdsk命令查看),所以5K的文件需要2个簇来存储,如下图所示:
johnhuster的分享
2022/03/28
8.2K0
为什么文件占用空间跟文件大小不一样
SD卡中FAT32文件格式高速入门(图文具体介绍)
硬件:本文SD卡为Kingston 4GB,FAT32格式,簇大小4KB,每扇区512字节。
全栈程序员站长
2022/07/13
3.1K0
SD卡中FAT32文件格式高速入门(图文具体介绍)
实战 FAT12 文件系统
经过一系列的文章,我们终于完成了从实地址模式跳转到保护模式,并且实现了分段、分页以及保护模式下的中断与异常机制。 保护模式究竟“保护”了什么
用户3147702
2022/06/27
1.6K0
实战 FAT12 文件系统
计算机底层知识之内存和磁盘的关系&数据压缩
今天,我们继续「计算机底层知识」的探索。我们来谈谈关于「内存和磁盘关系」&「数据压缩」的相关知识点。
前端柒八九
2022/12/19
5100
计算机底层知识之内存和磁盘的关系&数据压缩
学习计算机基础的知识汇总
再然后了解计算机组成:里面的一些关键硬件,首推《普林斯顿计算机公开课》,里面讲解的计算机通识不仅全面而且也有深度 也容易理解(也可以看程序是怎样跑起来的),看完前面讲解硬件的内容之后 可以再去看《计算机是怎样跑起来的》
小柔
2024/07/24
1690
学习计算机基础的知识汇总
程序员需要了解的硬核知识之磁盘
我们大家知道,计算机的五大基础部件是 存储器、控制器、运算器、输入和输出设备,其中从存储功能的角度来看,可以把存储器分为内存和 磁盘,内存我们上面的文章已经介绍过了,那么此篇文章我们来介绍一下磁盘以及内存和磁盘的关系。
cxuan
2019/11/12
7180
《程序是怎么跑起来的》读书笔记
最近看了矢泽久雄[日]的另一本书《程序是怎么跑起来的》,同样把大学学到的知识又复习了一遍,主要包括计算机组成原理、操作系统、数字逻辑、数据结构、编程语言等知识。下面是我记录的一些书中的重点:
kai666666
2020/10/19
1.5K0
《程序是怎么跑起来的》读书笔记
centos查看文件占用空间大小
du -sh * | sort -n : 统计当前文件夹(目录)大小,并按文件大小排序
似水的流年
2021/10/12
4.1K0
Windows误删文件该如何去恢复?
如果只能使用Windows本身提供的工具,那么我们可以认为清空回收站之后,被删除的文件已经彻底清除了。不过事实并非如此,只要有专用的硬件和软件,即使数据已经被覆盖、驱动器已经重新格式化、引导扇区彻底损坏,或者磁盘驱动器不再运转,我们还是可以恢复几乎所有的文件。
习惯说一说
2019/04/17
1.2K0
SSD Win8 系统盘 4K 无损对齐历险记
1、背景:为什么要 4K 对齐 簇是系统在硬盘上读写文件时的单位,是一个数据块(逻辑概念)。而扇区是硬盘划分的最小单位值,就是簇(数据块)占用的地方(物理概念)。NTFS对于大于2GB的分区,默认簇大小为8个扇区(4KB)。 绝大多数的机械硬盘默认是512字节的扇区,采用的是DRAM作为存储介质; 而机械硬盘,无论是SLC颗粒还是MLC颗粒,都属于NAND闪存存储单元。 这种硬盘的扇区是4K,这就是4K的由来。 NTFS格式有一个特性,那就是起始簇的位置!    NTFS分区起始位置不是从0开始,而是从L
用户1177713
2018/02/24
3.2K0
SSD Win8 系统盘 4K 无损对齐历险记
【Linux】文件系统
磁盘是一种通过磁性原理进行数据存储和读取的设备,常用于存储操作系统、应用程序以及用户文件等。它通常由多个盘片组成,这些盘片通过旋转来提高数据存取速度
用户11029103
2025/03/04
1930
【Linux】文件系统
linux学习之硬盘的存储原理和内部架构
首先,让我们看一下硬盘的发展史: 1956年9月13日,IBM的IBM 350 RAMAC(Random Access Method of Accounting and Control)是现代硬盘的雏形,整个硬盘需要50个直径为24英寸表面涂有磁浆的盘片,它相当于两个冰箱的体积,不过其存储容量只有5MB。 1971年,IBM开始采用一种名叫Merlin的技术生产硬盘,这种技术据称能使硬盘头更好地在盘片上索引。 1973年,IBM 3340问世,主流采用采用红色。这个大家伙每平方英寸存储1.7MB的数据,在当
汤高
2018/01/11
3K0
linux学习之硬盘的存储原理和内部架构
Linux文件系统详解
Linux上的文件系统一般来说就是EXT2或EXT3,但这篇文章并不准备一上来就直接讲它们,而希望结合Linux操作系统并从文件系统建立的基础——硬盘开始,一步步认识Linux的文件系统。
狼啸风云
2019/10/24
6.5K0
Linux 查看磁盘空间
原文链接:https://www.runoob.com/w3cnote/linux-view-disk-space.html
周小董
2019/09/18
13.7K0
Linux 查看磁盘空间
【Linux系统IO】四、文件系统
​ 之前我们学习的都是进程与被打开文件的关系,但是那些没有被打开的文件呢,它们需不需要被管理呢 ❓❓❓
利刃大大
2025/03/06
860
【Linux系统IO】四、文件系统
Linux 磁盘管理命令:dd磁盘操作
(1)显示所有文件系统对 I-node 节点和磁盘块的使用情况,这时需要一个参数-i。
鱼多多
2025/01/16
2230
Linux 磁盘管理命令:dd磁盘操作
文件碎片对Flash性能的影响
阅读本文前,建议先阅读下这两篇文章:《NAND Flash基础知识简介》、《Flash写入性能下降问题》。
coderhuo
2020/07/24
1.5K0
文件碎片对Flash性能的影响
硬盘的物理结构与磁盘分区原理
首先简单认识一下硬盘的物理结构,总体来说,硬盘结构包括:盘片、磁头、盘片主轴、控制电机、磁头控制器、数据转换器、接口、缓存等几个部分。所有的盘片(一般硬盘里有多个盘片,盘片之间平行)都固定在一个主轴上。在每个盘片的存储面上都有一个磁头,磁头与盘片之间的距离很小(所以剧烈震动容易损坏),磁头连在一个磁头控制器上,统一控制各个磁头的运动。磁头沿盘片的半径方向动作,而盘片则按照指定方向高速旋转,这样磁头就可以到达盘片上的任意位置了。
用户9736681
2022/05/11
2.2K0
硬盘的物理结构与磁盘分区原理
干的想喝水,一篇文章带你读懂硬盘工作原理!
一、硬盘的基本结构和工作原理 1956年9月,IBM一个工程小组向世界展示了第一台磁盘存储系统Ramac,1968年,Winch?鄄ester技术(温盘技术)被提出,从此人类开始从顺序存储时代来到随机
网络技术联盟站
2020/07/21
1.4K0
干的想喝水,一篇文章带你读懂硬盘工作原理!
硬盘上的esp分区和msr分区_win10引导盘符选ESP还是MSR
1、全称EFI system partition,简写为ESP。msr分区本身没有做任何工作,是名副其实的保留分区。ESP虽然是一个FAT16或FAT32格式的物理分区,但是其分区标识是EF(十六进制) 而非常规的0E或0C。
全栈程序员站长
2022/09/20
16.8K0
硬盘上的esp分区和msr分区_win10引导盘符选ESP还是MSR
相关推荐
为什么文件占用空间跟文件大小不一样
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文