3.6 第四行之__ipipe_init_proc()

点击查看系列文章 =》 Interrupt Pipeline系列文章大纲-优快云博客

原创不易,需要大家多多鼓励!您的关注、点赞、收藏就是我的创作动力!

3.6 第四行之__ipipe_init_proc()

        __ipipe_init_proc()并不是直接在start_kernel中调用,它的调用关系如下:

start_kernel 
->rest_init 
    ->kernel_init 
        ->kernel_init_freeable 
            ->do_basic_setup
                ->__ipipe_init_proc()

        __ipipe_init_proc()创建/proc/ipipe目录,并新增3项:

        1)/proc/ipipe/version 展示版本号

        2)/proc/ipipe/Linux 展示

        3)/proc/ipipe/tracer用于debug

        (1)/proc/ipipe/version

root@u20:~# cat /proc/ipipe/version
12

        (2)/proc/ipipe/Linux

       其中#cat /proc/ipipe/Linux,会展示root domain的所有中断信息。这些输出,也印证了《3.5.2__ipipe_init()之完成中断处理程序设置》的分析。

        具体展示的原理就是读操作会触发如下调用栈:

__ipipe_info_proc_ops.open
    ->__ipipe_common_info_open
        -> __ipipe_common_info_show

       (3)/proc/ipipe/tracer

       这是一个目录项,底下会创建一些子项用于ipipe debug,后面专门开一章讲一下debug。

       至此,整个第三章《I-pipe启动过程》就完结了。第四章将会分析head domain的初始化,中断是如何在root domain和head domain流动的,是如何和Linux中断子系统耦合的。

点击查看系列文章 =》 Interrupt Pipeline系列文章大纲-优快云博客

原创不易,需要大家多多鼓励!您的关注、点赞、收藏就是我的创作动力!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值