Linux 内核files_struct结构学习

Posted bcbobo21cn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 内核files_struct结构学习相关的知识,希望对你有一定的参考价值。

系统中的每个进程都有自己的一组打开的文件,像根文件系统、当前工作目录、安装点等。
有三个数据结构将VFS层和系统的进程紧密联系在一起。
它们是files_struct,fs_struct,mnt_namespace。

struct files_struct  
    atomic_t        count;              //自动增量  
    struct fdtable  *fdt;  
    struct fdtable  fdtab;  
    fd_set      close_on_exec_init;     //执行exec时需要关闭的文件描述符初值集合  
    fd_set      open_fds_init;          //当前打开文件的文件描述符屏蔽字  
    struct file         * fd_array[NR_OPEN_DEFAULT];  
    spinlock_t      file_lock;  /* Protects concurrentwriters.  Nests inside tsk->alloc_lock */  

Protects concurrentwriters.  Nests inside tsk->alloc_lock

    保护此结构的自旋锁;

以上是关于Linux 内核files_struct结构学习的主要内容,如果未能解决你的问题,请参考以下文章

struct files_struct

10.3android输入系统_必备Linux编程知识_任意进程双向通信(scoketpair+binder)

Linux的学习思路

linux内核dentry结构学习

linux学习笔记 linux内核6.0.2目录结构

内核虚拟化技术——LXC初体验