proc_dir_entry

时间:2023-03-08 20:51:09
proc_dir_entry

struct proc_dir_entry {
        unsigned int low_ino;
        unsigned short namelen;
        const char *name;
        mode_t mode;
        nlink_t nlink;
        uid_t uid;
        gid_t gid;
        loff_t size;
        const struct inode_operations *proc_iops;
       
        const struct file_operations *proc_fops;
        struct module *owner;
        struct proc_dir_entry *next, *parent, *subdir;
        void *data;
        read_proc_t *read_proc;
        write_proc_t *write_proc;
        atomic_t count;               
        int pde_users;       
        spinlock_t pde_unload_lock;
        struct completion *pde_unload_completion;
        struct list_head pde_openers;       
};

在注册entry的时候,如果提供read_proc,读文件时调用路径为
proc_file_operations->read->proc_file_read->read_proc

否则使用文件自己的file_operations中的read来读

具体请查看proc_register函数