arm linux ntfs_一起来了解一下现在的NTFS文件系统

大家好,我是波仔,今天我们继续接着上期的文件系统进行分享,欢迎大家和我一起来学习吧。

c34e2a021e7071204ef22bee2f778539.gif

为了解决FAT16、FAT32文件系统的安全性差,容易产生碎片以及难以恢复等缺点,微软在windows NT操作系统和之后的基于NT内核的操作系统中使用了新的NTFS文件系统。Windows 10中提供的高级文件管理功能都是基于NTFS文件系统实现的。

44bd0775e57b2a791a770f57d0162108.png

NTFS文件系统结构总览

当用户将硬盘的一个分区格式化成NTFS分区时,就建立了一个NTFS文件系统的结构,NTFS文件系统与FAT文件系统一样,也是用簇作为基本单位对磁盘空间和文件存储进行管理的。一个文件总是占有若干个簇,即使在最后一个簇没有完全放满的情况下,也是占用了整个簇的空间,这也是造成磁盘空间浪费的主要原因,文件系统通过簇来进行磁盘管理,并不需要知道磁盘扇区的大小,这样就使NTFS保持了与磁盘扇区大小的独立性,从而使不同大小的磁盘选择合适的簇。

35d99da5448c59221cf98919b2a21cb8.png

NTFS的分区也称为NTFS卷,卷上簇的大小又称为卷因子,其大小是用户在创建NTFS卷时确定的。与FAT文件系统一样,卷因子的大小与文件系统的性能有着非常直接的关系,当一个簇占用的空间太小,会出现太多的磁盘碎片,这在空间和文件访问时间上就会造成浪费。相反地,当一个簇占用的空间太大时,直接造成了磁盘空间的浪费,因此,最大限度地优化系统对文件的访问速度和最大限度地减少磁盘空间的浪费,是确定簇大小的主要因素。簇的大小一定是扇区大小的整数倍,通常是2n (n为整数)。

0c9ae3a9209d4796f6ba85093a290967.png

NTFS文件系统使用了逻辑簇号(LCN)和虚拟簇号(VCN)对卷进行管理。其中LCN是对于卷的第一个簇到最后一个簇进行编号,只要知道LCN号的和簇的大小以及NTFS卷在物理磁盘中的起始扇区就可以对簇进行定位,而这些信息在NTFS卷的引导扇区中可以找到,在系统底层也是用这种方法对文件的簇进行定位的。

06a82d71d961619efab9da59c05d8c6e.png

NTFS文件系统的主文件表中还记录了一些非常重要的系统数据,这些数据称为元数据文件,简称为元文件,其中包含了用于文件定位和恢复数据结构,引导程序数据及整个卷的分配位图等信息。NTFS文件系统将这些数据都当做文件进行管理,这些文件用户是不能访问的,他们的文件名字的第一个字符都是“$”,表示该文件是隐藏的,在NTFS文件系统中这样的文件主要有16个,包括MFT本身($MFT)、MFT镜像、日志文件、卷文件、属性定义表,根目录、位图文件、引导文件、坏簇文件、安全文件、大写文件、扩展元数据文件,重解析点文件、变更日志文件、配额管理文件、对象ID文件等,这16个元数据文件总是占据着MFT的前16项记录,在16项以后就是用户建立的文件和文件夹的记录了。

c16c8621b610f18d197d2ad2da89a537.png

每一个文件记录在主文件表中占据的磁盘空间一般为1KB,也就是两个扇区NTFS文件,系统分配给主文件表的区域大约占据了磁盘空间的12.5%,剩余的磁盘空间用来存放其他元文件和用户的文件。

828aaae2197a5be8b2eb36baa8ea0481.png

好了,以上就是今天所分享的内容,希望大家有所了解,非常感谢大家的支持与关注,我们下期再见!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值