用扇区寻址inode (在inode block中)
inode是index node的缩写,在许多文件系统中都被使用,用于保存和描述给定文件的元数据的结构。inode号可以用于索引磁盘上的inode数组,即每个inode都由一个数字(inumber,即inode number)隐式引用,只要给定一个inumber,就可以通过计算得出磁盘上相应inode节点的位置。
例如,在我们的简单文件系统中,inode block有5个,每个4KB,假设inode大小是256B,那么每个inode block就可以保存16个inode,因而该文件系统有80个inode。而再根据inode table从第4块,即从12KB地址开始,我们就可以有以下的视图。
因因此,特定inode的地址可以根据inode table的起始地址,加上inode区域的偏移量来得到。例如要读取inode32,则该inode的地址是12KB+32×256B=20KB。
但是,磁盘并不是按字节寻址的,而是由大量的可寻址扇区组成,扇区大小通常为512B。因此为了读取inode32,首先我们需要找出该扇区的地址,20KB÷512B=40,所以文件系统将向扇区40发出一个读取请求,然后就会获得inode32和inode33,从而获得我们期望的块。
更一般地,inode块的扇区地址可以计算如下。
