a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 72|回复: 0

[综合辅导] Linux认证辅导之Linux中常见文件结构体(2)

[复制链接]
发表于 2012-8-4 12:07:07 | 显示全部楼层 |阅读模式
Linux认证辅导之Linux中常见文件结构体(2)  V. s4 u) R- D8 \$ u* n
1.2 struct dentry
% k" y4 S$ o: Hdentry的中文名称是目录项,是Linux文件系统中某个索引节点(inode)的链接。这个索引节点可以是文件,也可以是目录。 inode(可理解为ext2 inode)对应于物理磁盘上的具体对象,dentry是一个内存实体,其中的d_inode成员指向对应的inode。也就是说,一个inode可以在运行的时候链接多个dentry,而d_count记录了这个链接的数量。  e. ^! Z& g& O/ k9 f. d/ H
struct dentry {
: s( Q0 m4 W& d3 v9 v$ o) Iatomic_t d_count; 目录项对象使用计数器,可以有未使用态,使用态和负状态" Z7 e. ?& B% _* \' t4 d8 i7 s: f
unsigned int d_flags; 目录项标志9 z  U; E7 r, u$ n4 B% ]* V
struct inode * d_inode; 与文件名关联的索引节点
: E, r0 X' @2 R. C. i2 R" N/ Sstruct dentry * d_parent; 父目录的目录项对象/ k- f& m( D; h2 `
struct list_head d_hash; 散列表表项的指针
  Z! e  v7 |7 G# N; B# _7 `9 hstruct list_head d_lru; 未使用链表的指针0 a# Y: `9 h9 w
struct list_head d_child; 父目录中目录项对象的链表的指针
6 j6 N% O% B% M0 w) k( r( hstruct list_head d_subdirs; 对目录而言,表示子目录目录项对象的链表
, Q- ]# Y$ ~& Sstruct list_head d_alias; 相关索引节点(别名)的链表9 A. ]& k$ O) {
int d_mounted; 对于安装点而言,表示被安装文件系统根项
% _' \( j+ n% l4 g8 U' @struct qstr d_name; 文件名8 |% p; O& D9 u# |
unsigned long d_time; /* used by d_revalidate */
1 e) s& v9 l8 ^8 {3 nstruct dentry_operations *d_op; 目录项方法
. V1 C4 K; H: f4 x8 g, ^struct super_block * d_sb; 文件的超级块对象3 W8 B+ I% w7 p, R# E
vunsigned long d_vfs_flags;+ R  q2 \6 O; v' E
void * d_fsdata; 与文件系统相关的数据! u* v3 ?! N% Y* d& i. v" E
unsigned char d_iname [DNAME_INLINE_LEN]; 存放短文件名4 k" U5 H$ C" G+ r
};
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-4 19:35 , Processed in 0.220647 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表