1、 在大多数岗位/任职需求/学习路线中,没有单纯的内核驱动开发岗位,大部分岗位都叫做内核工程师,负责完整的软件开发中的内核事宜,不进行细分。
linux 内核结构:
2、在一篇问答(1)里,答主提到,尽管内核从1997年放弃了C++的尝试,但是却有兴趣使用rust进行开发。
-
在(2)中,两位资深内核驱动工程师分享了他们的职业生涯经验。
-
书籍推荐:
入门:The Linux Programming Interface by Michael Kerrisk
资深:Linux Device Drivers Development by John Madieu
handbook:"Essential Linux Device Drivers"
-
一个linux驱动工程师从自己开发经验入手写的详细且可操作性强的教程:https://github.com/TongxinV/oneBook/blob/master/0.5.Linux-Driver Development/5.2.内核的gpiolib.md
-
(5)是野火上一个面向嵌入式内核工程师的linux内核开发教程,虽然面向嵌入式,但介绍部分是共同的
-
对linux2.6内核框架的探讨戳这里
-
8.用户态linux驱动框架的研究戳这里
参考网站:
(1)What is a learning roadmap to writing Linux device drivers step by step in C/C++ or Rust? Is Rust taking over writing device drivers over C/ C++?
https://www.quora.com/What-is-a-learning-roadmap-to-writing-Linux-device-drivers-step-by-step-in-C-C-or-Rust-Is-Rust-taking-over-writing-device-drivers-over-C-C
(2)How to become a Kernel/Systems/Device driver programmer? [closed]
(3)Which is best book for Linux device driver?
(4)Onebook
(5)野火教程
(7)用户态linux框架研究