`
highsky
  • 浏览: 269778 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Linux核心数据结构--inode

阅读更多
此VFS inode结构描叙磁盘上一个文件或目录的信息。

struct inode {

    kdev_t                       i_dev;

    unsigned long                i_ino;

    umode_t                      i_mode;

    nlink_t                      i_nlink;

    uid_t                        i_uid;

    gid_t                        i_gid;

    kdev_t                       i_rdev;

    off_t                        i_size;

    time_t                       i_atime;

    time_t                       i_mtime;

    time_t                       i_ctime;

    unsigned long                i_blksize;

    unsigned long                i_blocks;

    unsigned long                i_version;

    unsigned long                i_nrpages;

    struct semaphore             i_sem;

    struct inode_operations      *i_op;

    struct super_block           *i_sb;

    struct wait_queue            *i_wait;

    struct file_lock             *i_flock;

    struct vm_area_struct        *i_mmap;

    struct page                  *i_pages;

    struct dquot                 *i_dquot[MAXQUOTAS];

    struct inode                 *i_next, *i_prev;

    struct inode                 *i_hash_next, *i_hash_prev;

    struct inode                 *i_bound_to, *i_bound_by;

    struct inode                 *i_mount;

    unsigned short               i_count;

    unsigned short               i_flags;

    unsigned char                i_lock;

    unsigned char                i_dirt;

    unsigned char                i_pipe;

    unsigned char                i_sock;

    unsigned char                i_seek;

    unsigned char                i_update;

    unsigned short               i_writecount;

    union {

        struct pipe_inode_info   pipe_i;

        struct minix_inode_info  minix_i;

        struct ext_inode_info    ext_i;

        struct ext2_inode_info   ext2_i;

        struct hpfs_inode_info   hpfs_i;

        struct msdos_inode_info  msdos_i;

        struct umsdos_inode_info umsdos_i;

        struct iso_inode_info    isofs_i;

        struct nfs_inode_info    nfs_i;

        struct xiafs_inode_info  xiafs_i;

        struct sysv_inode_info   sysv_i;

        struct affs_inode_info   affs_i;

        struct ufs_inode_info    ufs_i;

        struct socket            socket_i;

        void                     *generic_ip;

    } u;

};

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics