Hi there!
This blog post is for the beginners who want to learn Linux Kernel programming.
The first and foremost requirement to start Linux Kernel programming is to be good in C programming. If you are good in C programming then keep reading otherwise I would suggest you to first clear your C basics before diving into the Linux Kernel.
So for knowing about Linux Kernel, we first need to know about Linux.
" Linux is a Unix-like computer operating system assembled under the model of free and open-source software development and distribution. The defining component of Linux is the Linux kernel, an operating system Kernel first released on September 17, 1991 by Linus Torvalds." - Wikipedia
There are many books and websites out there which teach and explain about the details of Linux Kernel.
I would recommend following 2 books to start learning Linux Kernel Programming.
- Linux Device Drivers by Jonathan Corbet, Alessandro Rubini, and Greg Kroah-Hartman.
- Linux Kernel Development by Robert Love.
Although the above mentioned books are now old and Kernel has changed a lot since these books were written but these books will get you started on your journey with Linux Kernel.
Following is the list of useful websites.
- Kernel newbies - Community for beginners.
- kernel.org - Primary website for downloading Linux Kernel source.
You should subscribe to following mailing lists.
- Kernel newbies mailing list - This mailing list is for Kernel newbies where you may ask questions and discuss issues. Few top guns of Linux Kernel are also active on this list to help and guide newbies.
- Kernel subsystems mailing list - This page contains mailing list for all subsystems related to Kernel. You may subscribe based on your interest. But beware that some of these lists have traffic of hundreds of mails per day.
There is one more reliable way to learn Linux Kernel programming. You can register for Eudyptula Challenge.
Eudyptula Challenge gives you series of tasks related to Linux Kernel programming and also prepares you for Linux community interaction.
I hope this post would be useful for you. Please share your feedbacks about this post in the comments section below.
All the best for your adventures with ocean named Linux!!
No comments:
Post a Comment