美文网首页
文件系统概念

文件系统概念

作者: 今天不想掉头发 | 来源:发表于2019-08-26 22:48 被阅读0次

文件系统将磁盘物理特性转换为用户看到的路径名和文件名,用户无需关心磁柱、磁道、盘面和数据块等信息。

文件系统的主要特性就是存储大量的信息,多个进程可以同时访问一个文件,进程结束也不会影响文件的持续存在。

文件的实现:

  1. 给文件分配磁盘空间
  2. 记住这些磁盘空间的位置
  3. 将文件内容存放在这些空间

数据在磁盘上的存放方式:

  1. 连续空间存放方式(空间浪费,不易扩展)
  2. 非连续空间存放方式:
    链表方式:但是单链表访问速度慢并且指针占用空间,指针如果损坏无法重构文件。因此,可以使用文件分配表(FAT)的方式,将相应文件的数据块对应的磁盘块指针以索引的方式进行记录,只需要顺着指针找到特定数据块所在的物理磁盘进行读取就可以了。但是随着磁盘空间的增大,因为要维护所有物理磁盘块号的分配表,FAT也会随之增大,会占用较大的内存空间

索引方式:为了解决上述问题,我么你希望能够将每个文件的所有数据块的磁盘地址进行收集,集中存放在一个索引数据块里,而在文件打开时将该数据块加载到内存,以后访问任何一个数据块都可以从该索引块里面获得物理磁盘地址。内存中只存放我们需要的文件的数据块地址,节约了内存。索引数据块称为inode。

但是单级索引inode伸缩性较差,如果想对文件扩容则需要重新分配,因此引入了多级索引,即类似多级页表的形式,使用顶级inode存放次级inode的磁盘地址和次级inode存放数据块的物理磁盘地址。但是多级索引会增加访问数据块所需要的磁盘访问次数(因为可能要访问多个次级inode)。

综上,单级索引不适合大文件,多级索引不适用小文件,那么考虑将单级和多级进行有机组合:非对称多级索引
非对称索引中索引即可以是单级,也可以是多级,单级用来存放磁盘地址,多级用来存放次级inode地址。根据文件的大小来协调二者的比例。当然,如何文件很大,还可以有三级inode,甚至四级inode,但是文件的访问时间会随着inode的层数增加而增加。

相关文章

  • 文件系统

    第12章:文件系统 文件系统概念文件系统和文件文件描述符目录文件别名文件系统种类 虚拟文件系统 文件缓存和打开文件...

  • 文件系统概念

    文件系统将磁盘物理特性转换为用户看到的路径名和文件名,用户无需关心磁柱、磁道、盘面和数据块等信息。 文件系统的主要...

  • ROS入门必了解的ROS文件系统和软件包

    本文主要针对ROS文件系统概念及创建和编辑ROS软件包进行讲解,便于初学者入门。 1、ROS文件系统概念: (1)...

  • Linux操作系统学习笔记 5 —— Linux磁盘与文件系统管

    1.文件系统的概念 文件系统(File System)是文件管理系统的简称,根据维基百科的描述,文件系统是用来组织...

  • 操作系统文件系统小结

    文件系统概念(针对linux系统)VFS称为虚拟文件系统,是linux一个内核软件层,在具体的文件系统之上抽象的一...

  • ROS 学习-1

    . 1.预备工作 快速了解文件系统概念 文件系统工具 使用 rospack 使用 roscd 切换目录 rosc...

  • linux文件系统概述

    Linux教程 linux文件系统概述 什么是文件系统 我们有了一个相对形象的概念,文件系统管理着很多文件。而这些...

  • Hadoop之HDFS

    一 HDFS概念 1概念 HDFS,它是一个文件系统,全称:Hadoop Distributed File Sys...

  • 12文件系统

    21.1文件系统的概念 21.1.1文件系统和文件 ■文件系统是操作系统中管理持久性数据的子系统,提供数据存储和访...

  • HDFS基础知识

    HDFS基础架构与核心概念 HDFS架构图 HDFS核心概念 Active NameNode(文件系统的管理节点)...

网友评论

      本文标题:文件系统概念

      本文链接:https://www.haomeiwen.com/subject/ljcdectx.html