567_linux内核学习_signal.c文件的泛读与分析

213 篇文章 6 订阅

         全部学习汇总: https://github.com/GreyZhang/little_bits_of_linux

         这次,把signal.c的文件全都看一下,粗略泛读。后面应该也是这么个模式,不会像之前分的那么细了。

         这一部分,其实之前是看过了的。

         这部分,前面也看过了。主要是信号挂起的处理,我觉得技巧点应该是在于形参处理与寄存器操作的结合。

         这两个函数,从命名看的话我们需要站在内核的角度来看。存储以及获取其实都是内核的动作。这样,第一个函数其实就是从内核往用户空间存储信息。而第二个则刚好相反,是从用户空间读取到内核。这个是static,因此就在这个文件中用,其实就是在后面的信号处理中。

         这是两个信号的注册函数,第一个算是第二个的简化版本。前面的两个内核与用户空间之间数据交换的函数就在这里被用到了。

         这个没内容,其实可以值得说说。为什么呢?如同我看代码的时候注释的信息,我觉得这其实能够透露出一点方法论的东西。

         这个是信号的处理实际起作用的函数。在注释中,我写了有些信息其实可以改进。主要是数字的含义问题,如果使用已经定义过的宏,这个可读性相对我这种初学者来说肯定是可以改进的。比如,我们看看前面说的0和1分别是啥概念,为什么有的是默认有的是忽略呢?而且,它本身的数据类型最初并不是数字。

         但是,如果查看过这一段头文件中的定义,一切应该就很容易理解透了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值