Improvement of trails and tutorials to become a kernel developer / maintainer
Albino B Neto
bino at bino.us
Fri Nov 6 17:34:40 EST 2015
2015-11-06 15:15 GMT-02:00 Patrick Plattes <patrick at erdbeere.net>:
> I'm interested since a very long time in kernel development, but I
> never saw the right path to become familiar with parts of the kernel.
> I read a bit of ipc code and ext* code, but since I often don't know
> any possible next steps I moved back to something else in the user
> I really like the tutorial on kernelnewbies.org FirstKernelPatch an I
> had the idea to create this type of tutorial as a training for
> specific kernel subsystems eg. ipc, file systems, usb drivers, ...
> A structure of such a tutorial could look like that: (eg scheduler)
> 1. Introduction / Goal
> [5 sentences of the goal - what should be archived by this tutorial]
> - understand scheduling in the linux kernel
> - write your own scheduler
> - ...
> 2. Preparation
> 2.1 Understand how to write a kernel patch:
> 2.2 Understand the goal of Scheduling: https://en.wikipedia.org/wiki/Schedule
> 3. User space view
> 3.1 Read and understand: http://man7.org/linux/man-pages/man7/sched.7.html
> 3.1.1 Questions
> 3.2 Exercise: Write a program that does A
> 3.3 Exercise: Write a program that does B
> 3.4 Exercise: Write a program that does C
> 4. Kernel
> 4.1 Read and understand: http://man7.org/linux/man-pages/man7/sched.7.html
> 4.1.1 Questions
> 4.2 Read API description: http://...
> 4.3 Exercise (understanding): Read and understand function xxxx_yyyy()
> 4.4 Exercise (understanding: Change the implementation of xxxx_yyyy(),
> so that ...
> 4.5 Exercise (debugging): checkout version 123456 and fix the
> following (old) bug
> 4.6 Final Exercise (developing): Write your own scheduler with the
> following algorithm...
> In my opinion that could help a lot of interested people to have a
> guided tour though the kernel. It could really lower barriers, also in
> terms of the fear of communication.
> I am NOT able to to produce it by myself, but I can help to structure
> it, review it and also answer questions. I would also maintain them in
> case of changes and test the tutorials on a regular basis to keep them
> up to date. I also would improve the tutorial from a newbie point of
> view ;)
> If there is someone out there that is also interested in doing it
> please let me know.
> And if there is something like this out there please let me know, so I
> can maybe support this project :)
Add mailing kernelnewbies.
More information about the Kernelnewbies