LINUX实战:Linux文件系统结构
《LINUX实战:Linux文件系统结构》要点: 磁盘是由若干扇区组成,每个扇区有512B(将磁盘存储区扇区化是为了更好的管理磁盘).又由若干个扇区组成一个块(ext2默认是由8个扇区组成一个块,即4kb,这里为了简化说明,就把2个扇区组成一个块,即1kb).由图知,将磁盘分成若干个分区,每个分区由若干个块组成.
三级间接寻址策略三级间接寻址图将数据指针数组命名为data数组.文件系统中,将data[12]进行一级间接寻址.即:将data[12] 指针指向的数据块,转化为一个更大的指针数组,长度为1024/4=256.在将这个更大的指针数组的分别数指向256个数据块;data[13]进行二级间接寻址,data[14] 进行三级间接寻址.都和一级间接寻址同理. 目录文件数据块存储内容数据块中存储的是一条一条的记录项,每条记录项都由文件名、indoe编号、记录长度(该记录项首地址到下一条记录项的首地址的长度).每一个记录项便是该目录下“ls -a”的结果. 普通文件结构由图可以看出,每个inode节点可以对应多个数据块,和上文在分析inode节点的内容一致.然后,若干个目录块中的记录项指向每个inode节点,通过inode节点中链接数这个数据成员来标识指向其的记录项个数,这便是硬链接.当然,这些目录块都是目录文件的数据块; 目录文件结构由上图知,inode节点在文件系统中被维护成了结构体数组,inode编号为数组的下标;2549号i节点是1267号i节点的子目录,因为1267号i节点的数据块中有2549号i节点的记录项;“.”目录文件和 “..”目录文件都是硬链接.
文件创建和查询过程执行命令:mkdir /home/aaron/a.c
执行命令:vim /home/aaron/a.c
本文永久更新链接地址: 更多LINUX教程,尽在编程之家PHP学院专栏。欢迎交流《LINUX实战:Linux文件系统结构》! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |