当前位置:  技术问答>linux和unix

大侠们,谁来解释一下关于文件系统里面的i-node问题,sysbolic link ,hard link 有什么区别?

    来源: 互联网  发布时间:2015-07-04

    本文导语:  文件系统里面有一张表(以下称A),表里面有许多i-node,每个都是一个指针,指向磁盘上的若干个(directory)data block,每个directory data block里面又包含另外一张表(以下称B),B表里面每一个条目都含有一个i-node number,...

文件系统里面有一张表(以下称A),表里面有许多i-node,每个都是一个指针,指向磁盘上的若干个(directory)data block,每个directory data block里面又包含另外一张表(以下称B),B表里面每一个条目都含有一个i-node number,它是一个index指向表A里的i-node.
   以上是我的理解,很可能有错误。

   我的问题是:
        1. i-node 为什么可以指向多个不同的data block?我理解一个指针只指向一个地方。当然,它许不是一个指针,那它是个什么东东呢?
        2. 因为有symbolic link 和 hard link存在,所以B中的 i-node number 不一定指向A中得i-node,也就是不会形成一个环形,这种机制是如何实现的?

|
每个inode也就是索引节点,唯一对应一个文件,但是它可以对应多个dentry结构,每个dentry结构只能对应一个inode,不知你是否是这个意思?

2. 因为有symbolic link 和 hard link存在,所以B中的 i-node number 不一定指向A中得i-node,也就是不会形成一个环形,这种机制是如何实现的?
这个问题,我没能理解你的意思,你所说的B应该是个dentry结构吧,但是,只要存在dentry对象,则其d_inode指针一定指向一个inode。

|
文件控制块inode是在专门的inode区中,每个文件都有一个对应的inode。
每个inode里与文件物理位置有关的索引信息只有int i-addr[8];根据是小型,大型,巨型文件,分别是直接索引,一次索引,二次索引。
所以一个inode是指向多个block的。
楼主可以看以下inode的结构。
第二个问题没看明白。

|
呵呵,inode里应该是有一个表,记录这个文件的数据块,但是这个表有直接寻址和一次寻址,二次寻址。。。文件块多就需要多次寻址,所以小文件访问快。好像是这样的结构。

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 各位大侠,本人是新手上路,经理马上让做palm,我可是从0学起!有没有那位大侠给我介绍一点经验和好的技术论坛,谢了!
  • hotenM(CMP)大侠等EJB大侠进来!小问题请教!
  • 请教大侠,怎么选开发学习板?
  • 大侠请援手:有关动态连接库。
  • 写过BBS的大侠看过来!
  • 请各位大侠推荐两本Solaris的经典书籍?
  • 各位大侠,求助Linux下关机
  • 大侠们,我是新手,请教怎么判断串口是否有连接
  • 想各位大侠求教了,为什么我的jdbc驱动不支持absolute这个方法呢?
  • 数据恢复, 求大侠帮助, 急等!!!!!!!
  • 各位大侠,给点意见
  • JSP+数据库文本存取中的换行问题,请教大侠
  • 各位大侠:lock 命令怎么用?
  • 关于session方面的问题!哪位大侠帮帮忙!?
  • 各位大侠,那有JBuilder书down? 那有PDF格式文件的阅读器?
  • 各位大侠,还有一问题请教,如下:
  • 请“路人甲”大侠进来来看看。。。多谢了。。
  • 请各位大侠介绍几本 UNIX 的书籍
  • solaris,请大侠帮忙!
  • 哪位大侠能提供一些Motif的电子书?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3