筋络不通怎么办:翻译高手请进

来源:百度文库 编辑:中科新闻网 时间:2024/05/04 09:59:49
ext2_find_shared - find the indirect blocks for partial truncation.
* @inode: inode in question
* @depth: depth of the affected branch
* @offsets: offsets of pointers in that branch (see ext2_block_to_path)
* @chain: place to store the pointers to partial indirect blocks
* @top: place to the (detached) top of branch
*
* This is a helper function used by ext2_truncate().
*
* When we do truncate() we may have to clean the ends of several indirect
* blocks but leave the blocks themselves alive. Block is partially
* truncated if some data below the new i_size is refered from it (and
* it is on the path to the first completely truncated data block, indeed).
* We have to free the top of that path along with everything to the right
* of the path. Since no allocation past the truncation point is possible
* until ext2_truncate() finishes, we may safely do the latter, but top
* of branch may require special attention - pageout below the truncation
* point might try to populate it.
*
* We atomically detach the top of branch from the tree, store the block
* number of its root in *@top, pointers to buffer_heads of partially
* truncated blocks - in @chain[].bh and pointers to their last elements
* that should not be removed - in @chain[].p. Return value is the pointer
* to last filled element of @chain.
*
* The work left to caller to do the actual freeing of subtrees:
* a) free the subtree starting from *@top
* b) free the subtrees whose roots are stored in
* (@chain[i].p+1 .. end of @chain[i].bh->b_data)
* c) free the subtrees growing from the inode past the @chain[0].p
* (no partially truncated stuff there).
*/
帮忙翻译一下,谢了~
这是一段代码里面的注释
但是并不需要有关编成方面的知识,翻译出大概意思就可以了,谢谢~~~~

ext2_find_shared- 为部分的截断找间接的区块。
*@inode: 问题的 inode
*@深度: 被影响的支线深度
*@补偿: 那一个支线的指标补偿 (ext2_block_to_path)
*@链: 放置储存对部分的间接区块的指标
*@顶端: 对支线的顶端地方
*
*这是一个被 ext2_truncate 用的辅助程式功能。 ()
*
* 当我们做我们可能必须清理结束的截短 () 的时候一些间接的
* 区块但是留下区块他们自己活力。 区块部份地
* 切断如果在新的 i_size 下面的一些数据从它被提到 (和
* 它是通往第一的路完全地切断了数据区块,的确).
*我们必须连同每件事物一起对权利释放那一个路径的顶端
*路径。 自从没有分配过去以后截断点是可能的
*直到 ext2_truncate() 完成,我们可能安全地做比较后者 , 但是顶端
* 支线可能需要特别的注意 - pageout 在截断下面
*点可能试着居住在它。
*
*我们原子地分离来自树的树枝顶端,储存区块
* 它的根数目在 *@顶端, buffer_heads 的指标部份地
* 切断了区块 - 在 @链[].对他们的最后元件的 bh 和指标
* 不应该被移动 - 在 @链[].p。 返回数值是指标
* 最后填充了元件 @链。
*
* 工作对来电者离开做那真实的免于次树:
*一) 释放次树出发从 *@顶端
*b) 释放根被储存的次树在
*(@用铁链锁住 [i].p+1.。 结束 @用铁链锁住 [i].bh->b_data)
*c) 释放次树从 inode 增加越过那 @链[0].p
*.( 没有部份地切断了东西那里)
*/