linux文件

首先是task_struct
task_struct是描述描述进程的结构

struct task_struct {
........
struct files_struct *files
.......
}

然后我们看看files_struct的组成

struct files_struct {
        atomic_t count;
        spinlock_t file_lock;     /* Protects all the below members.  Nests inside tsk->alloc_lock */
        int max_fds;
        int max_fdset;
        int next_fd;
        struct file ** fd;      /* current fd array */
        fd_set *close_on_exec;
        fd_set *open_fds;
        fd_set close_on_exec_init;
        fd_set open_fds_init;
        struct file * fd_array[NR_OPEN_DEFAULT];
};

你可能感兴趣的:(linux文件)