除了基本信息,还包含指向文件中前几个数据块的指针。如果文件很大,就需要使用到间接指针了。

 
一级间接指针是一个指向指针块的指针,而指针块中的指针是指向附加数据块的;
二级间接指针是一个执行间接知真块的指针;
三级间接指针块包含了一个指向二级间接指针块的指针。
 
举例:
假设一个索引节点占用128字节,状态信息占用68字节,指针为四字节长,一个块的长度是8K字节,每个块指针为32bit。根据以上信息,可以计算
(1)直接指针的个数为:
(128-68-4×3)字节/4字节=12个
 
(2)指针指针可直接表示的文件大小:
12×8×1024=98304字节
 
(3)一级间接指针指向一个块大小为8K字节,8K字节的指针块包含指针个数可以为2K个,每个指针对应数据块大小为8K字节,这样一级间接指针可表示文件大小为:
2×1024×8×1024=16M字节
 
(4)同理,二级间接索引可表示文件大小为:
2K×2K×8K = 32 G字节。。。。

 

 在UNIX系统中,文件的物理结构采用直接、一级、二级和三级间接索引技术,其索引节点有十三个地址项(i_addr[0]--i_addr[2]).。如果每个盘块的大小为1kB,每个盘块号占4B,那么,一个进程访问文件的第356168B处的数据时__寻址.答案:第二次间接 
  解析如下:
                      块长1024字节,块号长4字节,所以一个索引可以存放256个盘块号.
 一级索引时,最多可包含的存放文件的盘块的盘块号的总数N=256个盘块,所以使用一级索引.
  可寻址的文件的最大长度=256*1024B=256KB
   二级索引时,最多包含的存放文件的盘块的盘块号总数 N=256*256=65536个盘块.
     可寻址的文件的最大长度65536*1024B=64MB
因为256KB<356168kB<64MB,所以要访问文件的356168字节的数据,需要二次间接寻址.
详情请链接:[url=http://]http://www.beidaqingniao.org/question/0722215.html[/url]