首页 > 其他分享 >磁盘文件系统

磁盘文件系统

时间:2023-03-01 14:33:06浏览次数:30  
标签:文件 数据 文件系统 索引 磁盘 inode 目录

 

 

文件系统与文件

在文件系统中,一个文件大体上可以由目录项inode数据块组成:

  • inode: 索引节点,存放数据块的指针
  • 目录项:包含文件名和inode节点号
  • 数据块:包含具体的文件内容

还有一个关注点是超级块,它会记录整个文件系统的整体信息,包括 inode 与 block 的总量、使用量、剩余量,以及文件系统的格式与相关信息等。

inode

inode,全称是index node,中文含义就是索引节点,它用来记录文件的元数据,比如 inode 编号、文件大小、访问权限、修改日期以及文件数据块的地址索引等,通过数据块的索引就可以找到具体的数据块。

 

 在ext3文件系统中inode有15个索引,其中前12个索引直接记录数据块的地址,第13个索引记录索引地址。也就是说,索引块指向的硬盘数据块并不直接记录文件数据,而是记录文件数据块的索引表,依次的,第 14 个索引记录二级索引地址,第 15 个索引记录三级索引地址,下面是示意图:

 

 还有一点需要注意,索引节点和文件一一对应(inode与文件一一对应),它跟文件内容一样,需要持久化到磁盘,是占磁盘空间的。

如果一个文件比较大,inode的块号不足以标识所有的数据块,就会使用间接块。文件系统会在硬盘上分配一个数据块,不存储文件数据,专门用来存储块号。就是上图的索引表?。

 

 

 

目录项

在Linux系统中,目录(directory)也是一种文件,打开目录,也就是打开目录文件,目录文件的结构非常简单,就是一系列目录项(dirent)的列表。每个目录项,由两部分组成:所包含文件的文件名,以及该文件名对应的inode号码。下面是示意图

 

 

文件系统组件的体系结构

接下来,我们来梳理一下体系结构,从应用层到VFS,再到磁盘的一个结构图,从这个架构图中我们可以对文件系统有一个更加清晰的认识,如下图所示:

 

 

以上来自:https://pjmike.github.io/2019/12/23/%E8%81%8A%E8%81%8A%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E9%82%A3%E4%BA%9B%E4%BA%8B/

 

 

参考:

https://www.51cto.com/article/667640.html

标签:文件,数据,文件系统,索引,磁盘,inode,目录
From: https://www.cnblogs.com/rebrobot/p/17168080.html

相关文章

  • linux虚拟扩容磁盘
    物理磁盘先扩容新增后可能需要重启才会看到。扩容步骤查看分区情况[root@app1~]#fdisk-l磁盘/dev/sda:37.6GB,37580963840字节,73400320个扇区Units=扇区of1*......
  • linux挂载磁盘步骤
    一、查看需要挂载设备,如下sda(默认路径/dev/sda)   二、新建分区,执行如下命令进入操作fdisk/dev/sda1、m 查看可操作的命令   2、键入 n,根据需要新......
  • 解决SQL Server 删除大量数据后磁盘空间无变化
    造成空间不变化的原因InnoDB中采用了B+树作为存储数据的结构,也就是常说的索引组织表。在InnoDB中,delete操作并不会真的删除数据,SQLServer实际上只是给要删除的数据打......
  • 分布式文件系统FastDFS的HTTP访问
    1概述在文件上传的时候,上传成功的信息中有提示我们可以通过某个路径去访问上传的文件,但是我们直接访问这个路径,却不可以,那么已经上传到FastDFS文件系统中的文件,我们如何在......
  • 磁盘的传输速度
    u盘传输速度这么慢。可能是用的usb2.0的口,同一个主板,可能有3.0有2.0,不同端口速度不一样。传输原理不同,usb2.0理论最大速度60M,实际可能也就不到30.usb3.0理论最大500M,实......
  • 老版本 docker 磁盘占用清理
    对于1.13版本之前的docker需要手动清理无用镜像、容器、数据卷清理命令dockerrmi[image]dockerimagerm[image]支持的子命令-f强制删除镜像,即便有容器引用......
  • 【Mybatis】【基础设施】【三】Mybatis源码解析-VFS虚拟文件系统
    1 前言这节我们介绍Mybatis又一个出现的基础设施VFS,他是干啥的呢,就是加载指定目录下的文件的。前置知识:java.net.URL这个类知道么,不要看名字把它觉得就是我们浏览器里......
  • STATA: compress 自动将所有变量转换为其最有效的存储类型以节省内存和磁盘空间
    sysuseauto,clear//(1978automobiledata)des////ContainsdatafromD:\Stata17\ado\base/a/auto.dta//Observations:741978......
  • zabbix磁盘SMART监控
    1、安装Smartmontools需要Smartmontools7.1版本及以上SmartmontoolsPackages下载页面Smartmontools7.1源码下载centos7#安装smartmontoolsyum-yinstal......
  • 第五章 内存和磁盘的亲密关系
    第五章观后感想:    内存和磁盘是计算机中主要的存储部件,磁盘中存储的程序,必须要加载到内存中才能运行,在磁盘中保存的原始程序是无法直接运行的。    磁......