文件系统
文章平均质量分 73
摩尔の
主要方向C/C++后台开发,目前正在向软件驱动开发转型。
什么都懂一点,又什么都不懂。
展开
-
Ext4文件系统解析(三)
前文已经讲述了如何根据索引号获取实际的文件内容。对于文件而言,到了这里已经结束了。但是对于文件夹来说,我们还需要从数据块中解析出对应的数据。而在文件系统的实现中,文件夹的实际存储方式有着两种不同的实现,经典的线性布局方式和全新的Hash树布局。原创 2023-12-02 22:18:32 · 437 阅读 · 0 评论 -
Ext4文件系统解析(二)
想要了解EXT文件系统的工作原理,那了解文件系统在磁盘上的分布就是必不可少的。这一节主要介绍EXT文件系统硬盘存储的物理结构。由于当前主流的CPU架构均采用小端模式,因此下文介绍均已小端模式为准。原创 2023-12-02 22:17:32 · 962 阅读 · 0 评论 -
Ext4文件系统解析(一)
熟悉Linux操作系统的都应该或多或少的了解或者使用过Ext4文件系统。接下来,会简单介绍Ext4文件系统的一些特性和工作原理。原创 2023-12-02 22:14:14 · 1234 阅读 · 0 评论 -
NTFS文件系统解析(四)
前文在非常驻属性中提及了Data Run,那么Data Run到底是什么呢?简单来说,Data Run是一个指向实际数据存储的一个固定格式的数组。通常情况下,Data Run由一组或者多组数字组成。原创 2023-11-05 19:03:27 · 241 阅读 · 0 评论 -
NTFS文件系统解析(三)
正如上图所示,绿色部分代表IndexEntry的头部,紧接着的红色部分和黄色部分就是去除了标准属性头之后的0x30属性,而最后的紫色部分则存储着子节点的VCN号。为了便于管理,NTFS文件系统为所有的属性定义了统一的头部结构,可以称之为属性头。对于NTFS文件系统而言,无论文件内容本身,抑或真实的文件属性,都被称之为属性。索引根节点通常由标准属性头,索引根属性头,索引属性头和索引属性组成。而由于每种属性的长度不一,因此又额外定义了常驻属性和非常驻属性。属性,这种情况下,文件的基本属性与。原创 2023-11-05 19:01:11 · 334 阅读 · 0 评论 -
NTFS文件系统解析(二)
但是,当一个记录的恰巧写到扇区最后2个字节时,由于扇区尾部已经写入了2个字节的更新序列号。NTFS文件系统的的工作流程主要依赖于两个部分,文件记录部分用于记录文件本身的信息,而索引部分则通过树的形式存储着文件系统的结构信息。NTFS文件系统为了保持数据的一致性,在文件和索引记录的每个扇区的最后2个字节都会写入更新序列号。| 索引记录头 | 索引头 | 索引数据 | …| 结束标志 || 文件记录头 | 属性列表 | 属性列表 |…| 结束标志 |原创 2023-11-05 18:52:31 · 160 阅读 · 0 评论 -
NTFS文件系统解析(一)
文件记录是一个与文件相对应的文件属性数据库,它记录了文件数据的所有属性。但是,由于Windows操作系统的封闭性,我们无法准确得知NTFS文件系统的具体实现,因此,只能通过少量的官方文档和逆向分析的方式来推导NTFS文件系统的工作流程。一个属性的偏移00H~03H处的4个字节,为该属性的类型标志,不同的属性其结构和含义各不相同。通常情况下,当需要从卷中读取文件时,只需要从根目录从查询出文件对应的逻辑簇号(LCN),再根据LCN从MFT记录读取出文件的记录即可。每个文件或者目录都对应一个或者多个文件记录。原创 2023-11-05 18:50:46 · 256 阅读 · 0 评论 -
默认文件系统类型的扫描方案
当然,实际上对Windows操作系统的底层调用有所了解的情况下,可以知道上述提到的函数在内核中实际上是通过调用。在linux平台上,说到目录遍历,最先想到的必然就是opendir/readdir/closedir函数。通常情况下,当需要遍历整个磁盘时,我们会选择使用系统提供的接口,或者调用标准库或者boost库中的。库的遍历方法较为简单,因此本文仅列举系统遍历接口的使用方法。函数和广度优先算法遍历目录。因此可以选择直接调用。原创 2023-10-24 21:50:57 · 54 阅读 · 0 评论 -
基于卷的磁盘扫描算法设计
通常会使用诸如FindFirstFile/FindNextFile(Windows),或者opendir/readdir(Linux)遍历扫描的目录。因此,我们基于磁盘逻辑卷的结构,设计基于卷的遍历算法,能有效减少磁盘IO次数,提升扫描性能。但是,当伴随文件数量变多,文件夹层次加深时,遍历算法的性能往往不尽如人意。一般情形下,由于文件数量相对较少,文件夹层次低,扫描效率相对符合预期。常规情况下,当我们扫描计算机的硬盘时,原创 2023-10-24 21:24:57 · 82 阅读 · 0 评论