/proc 目录下各进程创建过程

/proc目录下的进程是动态创建的,通过mount挂载后,内核调用一系列函数如proc_get_sb、proc_fill_super等进行初始化。在指定根结点并创建dentry后,使用proc_pid_readdir查找所有进程,为每个进程创建目录。接着,通过proc_pid_fill_cache和proc_pident_lookup等函数递归填充缓存,最后利用proc_pid_make_inode创建dentry对应的inode,完成进程目录的构建。
摘要由CSDN通过智能技术生成

/proc/ 下各进程是动态创建的,其创建过程如下 (内核版本为 2.6.30):

 mount -t proc proc /proc

    .get_sb                = proc_get_sb,

         proc_fill_super

                   root_inode = proc_get_inode(s, PROC_ROOT_INO, &proc_root);  // 指定根结点的回调为 proc_root

                        proc_root

                            .proc_fops        = &proc_root_operations,

                                  .readdir         = proc_root_readdir,  // 当读 /proc目录时,该函数会被执行

                                       proc_pid_readdir  // 通过 next_tgid 来查找所有的进程,然后为每个进程创建目录

                                           proc_pid_fill_cache

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值