Skip to content
/ zhuOS Public

Operating system projects and some study notes

Notifications You must be signed in to change notification settings

zhuheqqq/zhuOS

Repository files navigation

zhuOS

Operating system projects and some study notes

文件系统

  • 每个文件都有自己单独的inode,inode是文件实体数据块在文件系统上的元信息
  • 所有文件的inode集中管理,形成inode数组,每个inode编号就是在该inode数组中的下标
  • inode 中的前 12 个直接数据块指针和后 3 个间接块索引表用于指向文件的数据块实体
  • 文件系统中并不存在具体称为“目录”的数据结构,同样也没有称为“普通文件”数据结构,统一用同一种 inode 表示。inode 表示的文件是普通文件,还是目录文件,取决于 inode 所指向数据块中的实际内容是什么,即数据块中的内容要么是普通文件本身的数据,要么是目录中的目录项
  • 目录项仅存在于 inode 指向的数据块中,有目录项的数据块就是目录,目录项所属的 inode 指向的所有数据块便是目录
  • 目录项中记录的是文件名、文件 inode 的编号和文件类型,目录项起到的作用有两个,一是粘合文件名及 inode,使文件名和 inode 关联绑定,二是标识此 inodez所指向的数据块中的数据类型(比如是普通文件,还是目录,当然还有更多的类型)
  • inode 是文件的“实质”,但它并不能直接引用,必须通过文件名找到文件名所在的目录项,然后从该目录项中获得 inode 的编号,然后用此编号到 inode 数组中去找相关的 inode,最终找到文件的数据块。
  • super block负责保存文件系统元信息的元信息:inode数组的地址及大小、inode位图地址及大小、根目录的地址和大小、空闲块位图的地址和大小。super block被固定存储在各分区的第二个扇区
  • 在操作系统引导块mbr后面的依次是:超级块、空闲块的位图、inode 位图、inode 数组、根目录、空闲块区域

About

Operating system projects and some study notes

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published