007 Linux文件系统数据结构详解:索引节点inode

上一篇讲了超级块,超级块存储了文件系统的基础信息,以及文件系统的控制信息。而今天介绍的索引节点数据结构,负责保存文件系统中实际文件一般信息,文件系统使用inode管理文件和目录。与超级块类似,索引节点也有三种形态:

  • 持久化的索引节点
  • 内存中构建的索引节点
  • VFS提取的索引节点公共信息,构建出来的索引节点对象
索引节点存储结构
索引节点存储结构
继续阅读“007 Linux文件系统数据结构详解:索引节点inode”

002 Linux内核中虚拟文件系统VFS组织方式和文件系统注册

Linux支持多种文件系统,据维基百科统计多达上百种,它是如何进行组织和管理这些文件系统?答案就是VFS。Linux内核使用VFS框架,来组织和管理多个文件系统,VFS叫虚拟文件系统,也叫(Virtual Filesystem Switch)。VFS是内核中的软件层,为用户空间程序提供文件系统接口,同时在内核中提供了一个抽象,允许不同的文件系统可以共存。

虚拟文件系统
虚拟文件系统
继续阅读“002 Linux内核中虚拟文件系统VFS组织方式和文件系统注册”

001 什么是文件系统?

文件系统是操作系统用于组织和管理存储设备或分区上的文件的方法和数据结构。操作系统中负责管理和存储文件信息的软件组织称为文件管理系统,简称文件系统。

下图中是Linux上常见的本地文件系统,Windows常用的文件系统有NTFS,当然随着技术发展,各种基于网络的分布式文件系统,也是层出不穷,比如:NFS、CIFS(windows),还有一类集群式的分布式文件系统,比如:Lustre、Ceph,这类文件系统在数据洪流、万物智联的在今天应用更加广泛。

文件系统
文件系统,来源:bing.com
继续阅读“001 什么是文件系统?”

02 Lustre版本发布历史

Lustre坎坷20载,依然坚挺,占据HPC市场一定的份额。今天就来盘点一下,Lustre在过去20年版本发布情况,以及各版本的特性。以下表格采用编年体,展示Lustre各个版本情况,汇总一下Lustre版本发布历史和未来的RoadMap。

继续阅读“02 Lustre版本发布历史”

01 Lustre坎坷的历史

Lustre是一种并行式文件系统,它的名字由Linux和Cluster组合而来,从名字可以看出,它是一种集群式的文件系统。一般用于大规模集群,比如成百、上千,甚至上万的节点。

目前,Lustre在超算(HPC)场景中,占有大量的市场份额,可以说是第一把交椅。但是,翻开它的发展历史,看到Lustre非常坎坷,像过家家一样,成为多个大厂的弃儿。

继续阅读“01 Lustre坎坷的历史”