FAT文件系统工作原理
前几天复习操作系统的时候,把文件系统恶狠狠的补了一遍。记性不太好,为了方便以后自己的查阅,先在这里做个笔记。也与大家分享分享,希望大家能指出我理解的不足指处。
图片是手画的,比较挫,也许只有自己才能看的懂了,不过还是解释一下。
1. FAT文件系统的核心是内存中的FAT表,表中的地址和磁盘的块地址是一一映射的关系。
FAT文件表每一项有两个含义。1.项的地址代表当前文件的数据实际存储在磁盘中的块的地址。2.项的数据代表,文件的下块数据所在磁盘中的地址。
2. 文件的描述信息,文件的属性,开始块(文件数据块的首地址),文件名等信息均存储在文件的目录项之中。只要找到了文件的目录项,就可以找到该文件,读取该文件。文件的目录项存储在文件知己父目录的数据区里面。
3. 每次磁盘分区的所有文件的目录项均存储在该分区的一块集中的地址上面,即目录的目录项的信息是集中存储的。
下面举例说明FAT文件系统的索引过程。
给定文件目录: /source/com/happy.txt,要读取该文件的内容,操作系统时如何找到它,并读取它的内容呢?
1.从分区的根目录的目录项的FIRST BLOCK(这里假设为10)对应的磁盘空间(磁盘的地址的第10块)中去查找根目录的目录项集中目录项文件名为source的目录项(这里需要明白,目录的数据区里面存的全是目录项)。直达匹配找目录项中文件名为source的为止(这里假设在第一个磁盘的BLOCK中就找到的需要的目录项,在下面的叙述中会介绍到如果没有在第一个BLOCK中找到需要的目录项的处理方式)。此时,已经找到了source的目录项。找到了source的目录项,就可以对source这个目录文件进行读取操作了。其实重点是要读取source里面包含的其目录下的文件的目录项信息。
2.假设source的目录项的FIRST BLOCK的数据位100,则去磁盘的第100块中去匹配目录项的文件名为com的目录项。若找到进入3步骤。若没有找到,则到读取FAT表的第100个地址中的数据,这里假设为150(FAT表的作用在此,真正体现了出来).则这个150代表,目录文件下一块数据的地址。此时,只需去磁盘的第150块中去匹配目录项文件名为com的目录项。重复上面的步骤,知道找到com的目录项为止。
3.从com这个目录下找到happy.txt的目录项的方法和2相同。
4.从happy.txt中读取其信息。方法和2步骤的方法是一样的,不过这里体现除了目录和文件的区别(目录的数据区是存放的该目录下的文件的目录项信息,用于查找文件。而普通文件的数据区则存储的是文件的实质信息,用于存储用户产生的实际数据。)
- - - - - - - - - - - - - - - -- - - - - -- - - - - -- - - - - - - -- - - - - - -- - - - - -- - - - -- - - - - -- - - - -- - - - - - - - - -- - - - -- - - - - -- - - - - -- - - - -- - - - - - - -- - -
FAT文件系统的工作原理,大概已经介绍完了,其中包含自己结合书上的知识脑补的一些东西,由于自己水平的原因,有些东西还是值得探讨的。
补充:
1.从FAT表的构造原来来看,其优缺点很明显就能体现出来。当BLOCk的大小一定,磁盘的空间很大时,那FAT表的表项的数量就会很大,占用大量的内存空间。因此FAT文件系统不适合作为大存储的文件系统。
2.WINDOWS中采用FAT32存储时,文件的大小不能超过4G(不知道你发现了没有呢),原因与FAT32的32无关,知识FAT32的文件系统中,文件的目录项中有一个用来记录文件大小的字段,其大小为4byte,因此,文件的最大长度为4G啦。
FAT文件系统工作原理相关推荐
- FastDFS分布式文件系统工作原理
- FAT文件系统原理(转载)
转自: http://blog.chinaunix.net/uid-24611346-id-3246892.html 一.硬盘的物理结构: 硬盘存储数据是根据电.磁转换原理实现的.硬盘由一个或 ...
- 硬盘FAT文件系统原理的详细分析——转载
首先给大家分享一个巨牛巨牛的人工智能教程,是我无意中发现的.教程不仅零基础,通俗易懂,而且非常风趣幽默,还时不时有内涵段子,像看小说一样,哈哈-我正在学习中,觉得太牛了,所以分享给大家!点这里可以跳转 ...
- FAT文件系统原理的详细分析
示例源代码下载: http://download.csdn.net/user/retty85 文本结构索引: 图片表格索引: 表1 分区表参数 表2 扩展分区表项的内容 一.硬盘的物理结构 图1 硬盘 ...
- 【收藏】FAT文件系统原理——MBR(主引导记录
FAT文件系统原理--MBR(主引导记录) 一.硬盘的物理结构: 硬盘存储数据是根据电.磁转换原理实现的.硬盘由一个或几个表面镀有磁性物质的金属或玻璃等物质盘片以及盘片两面所安装的磁 ...
- Hadoop分布式文件系统HDFS的工作原理详述
Hadoop分布式文件系统(HDFS)是一种被设计成适合运行在通用硬件上的分布式文件系统.HDFS是一个高度容错性的系统,适合部署在廉价的机器上.它能提供高吞吐量的数据访问,非常适合大规模数据集上的应 ...
- 企业级别应用--GFS分布式文件系统(GlusterFS工作原理、弹性 HASH 算法 、GlusterFS卷的类型、 部署GlusterFS)
文章目录 一. GlusterFS 概述 1.1 GlusterFS 简介 与传统分布式相比的优点 1.2 GlusterFS 的特点 扩展性和高性能 高可用性 全局统一命名空间 弹性卷管理 基于标准 ...
- Linux 文件系统的工作原理深度透析
磁盘为系统提供了最基本的持久化存储. 文件系统则在磁盘的基础上,提供了一个用来管理文件的树状结构. 那么,磁盘和文件系统是怎么工作的呢?又有哪些指标可以衡量它们的性能呢? 索引节点和目录项 文件系统, ...
- 转载:磁盘工作原理、文件系统及i节点、块存储、文件存储、对象存储、DAS、NAS、还有SAN
本文出自 "11366164" 博客,转载请与作者联系! (一)磁盘工作原理 一般硬盘正面贴有产品标签,主要包括厂家信息和产品信息,如商标.型号.序列号.生产日期.容量.参数和主从 ...
- Linux运维系列总结-Linux系统启动过程、WEB工作原理、DHCP工作原理、DNS解析原理、NFS网络文件系统、FTP文件传输协议、PXE+KICKSTART自动安装系统
Linux运维系列总结-Linux系统启动过程.WEB工作原理.DHCP工作原理.DNS解析原理.NFS网络文件系统.FTP文件传输协议.PXE+KICKSTART自动安装系统 1.Linux系统的启 ...
最新文章
- 数据蒋堂 | “后半”有序的分组
- 回首这六年,给新人一些建议,和同龄人共勉
- 安装windows 2003 R2额外域控制器时出现1168错误的解决
- 设计模式(八): 从“小弟”中来类比外观模式(Facade Pattern)
- Vue中使用input简易的上传图片
- 单元测试的一些基本概念
- 《Linux嵌入式实时应用开发实战(原书第3版)》—2.2 硬件需求
- 大数据生态与Spark简介
- 基于DS18B20温度控制系统
- Mac下解压.bin文件
- 《理财系列》-《穷爸爸富爸爸》
- 【Word文档修改过程中空格下划线打印不出来问题解决】
- 计算机视觉、模式识别、机器学习常用牛人主页链接
- truffle init/unbox 中遇到的许多错误以及解决
- 【论文】mac系统下的citespace与使用
- 解决Android 8.0和9.0无法获取SSID (unknow ssid)
- nmap工具介绍及常用命令
- 点评2008年九大经济学家惊人语录
- Unity5权威讲解之菜鸟读书笔记(一)
- java 猫 老鼠_Java面试题:猫吃老鼠问题