• liunx ext2


    liunx 使用ext2 的文件系统的管理方式:

    liunx 主要使用 superblock、inode,bolck的方式去管理文件系统

    inode:主要存储各个文件的所有者,以及相应的权限,文件信息

    block:实际文件二进制的内容存储

    superblock:记录inode的使用量,block的文件使用量,等

    那ext2最简单的方式是

    一个文件或者目录使用一个inode,这个inode大概有128字节。其中48个字节用来存储它保存的实际文件的block节点,保存一个block的需要4字节的大小,所以48字节可以保存12个block

    一个block可以设置为的大小为1k,2K,4k大小

    当我们常见一个文件或者目录的时候,使用一个inode,并且分配好block来保存文件内容,但是一个inode仅仅可以保存12个block,一个block假设最大设置为4K,那么一个文件也不过保存了 12*4 = 48k的大小

    根本保存不了我们平常见到的100多m的文件,那么ext2怎么解决这个问题呢,很简单,在使用一个block来保存,另外的block地址,就跟俄罗斯套娃一样,第一层block保存第二层的block的地址,那么第二层就实际可以保存,假设一个block的大小为 1k,那么可以保存 1024 / 4 = 256个第二层block的信息,如果每一层都使用用来保存新一层的信息,那么这个容量就跟树一样展开,最后一层保存的内容也可以得到极大的扩展,那么liunx 最大可以保存多少层,理论上可以无限层,但是ext2 最大只有三层。

    而对于目录来说,则没有实际文件的说法了,那个目录是怎么跟文件关联起来的么,首先创建一个目录也创建一个inode节点和block节点,那么目录的inode基本上也是爆粗所有人,权限等一些信息啦,但是目录的block却用来保存属于它文件的文件inode的id,以及文件名称,通过目录的block来再次追踪它底下文件的inode内容。

    superblock 里面保存了一些inode使用了多少个,还剩多少个,对于block的信息也如此,所以我们可以通过查询一些磁盘的总计的信息就是用superblock里面来

  • 相关阅读:
    关于scrollTop的那些事
    document.documentElement.clientHeight||document.documentElement.scrollHeight
    用JS查看修改CSS样式(cssText,attribute('style'),currentStyle,getComputedStyle)
    Pygame安装教程
    Python基础知识:测试代码
    Python基础知识:文件和异常
    Python基础知识:类
    Python基础知识:字典
    Python基础知识:while循环
    Python基础知识:列表
  • 原文地址:https://www.cnblogs.com/wangchaodong/p/11973868.html
Copyright © 2020-2023  润新知