'''Eager to become a kernel hacker? Start here:''' * [http://en.wikipedia.org/wiki/Linux_kernel Wikipedia article about the Linux kernel] - some history and background * [http://www.ibm.com/developerworks/linux/library/l-linux-kernel/ Anatomy of the Linux kernel] - short and valuable introduction to internals of the kernel * [http://www.makelinux.net/kernel_map Interactive Linux Kernel Map] reveals architecture and 200 most significant kernel functions * find a lot of time to read KernelBooks * [http://lxr.linux.no/linux Linux Cross Reference] - read the source online * LinuxChanges and http://LWN.net/Kernel - read about a recent developments * http://lkml.org/ - here the real kernel hackers are talking * explore more documentation at [http://www.makelinux.net/reference Linux Technology Reference] * write a simple kernel loadable ["Module"] * KernelBuild - build a custom kernel '''WANTED: volunteers to sort the information on this page, to make things easier to find.''' CompleteNewbiesClickHere for some ideas on how to get started. Discuss your questions on ["IRC"], the MailingList or the [http://forum.kernelnewbies.org/ web forum], if you cannot find your answers in these documents: * ["New Kernel Hacking HOWTO"] (right now under-development on kernelnewbies) * ["Linux Kernel Tester's Guide"] * CareerAdvice for people who want to get a job hacking the kernel * From basic to advanced Linux Kernel articles (outdated) http://whatisthekernel.blogspot.com/ * Some existing documents on kernelnewbies site can be found [:Documents:here][[BR]] Move on to more hands-on activities: * KernelUpdating . From a old Kernel version to a newer one. * KernelHackingTools to edit/navigate/hack the kernel source * [http://tldp.org/HOWTO/Kernel-HOWTO/ Compiling the Linux kernel] or [http://www.osnews.com/story.php?news_id=443 OS News Article][[BR]] * [http://www.bitbenderforums.com/vb22/showthread.php?postid=305894#post305894 Compiling a Custom Linux Kernel] * [http://freshmeat.net/projects/mkkernel/ mkkernel] helps beginners.[[BR]] * ["Testing"] * [http://freshmeat.net/projects/user-modelinux/ User Mode Linux] ([http://www.linux-mag.com/2001-04/user_mode_01.html description]) allows test kernels to be run under Linux. See also NavigatingTheSources[[BR]] * [http://mail.nl.linux.org/kernelnewbies/2003-08/msg00347.html Paper on Debugging Kernel OOPs and Hangs] == Some tutorials or projects to inspire you == * ["Drivers"] * ["Simple UDP Server"] * [http://www.linuxdevices.com/articles/AT5340618290.html Writing Portable Device Drivers][[BR]] * PowerManagement * ["SMPSynchronisation"] an intro on SMP locking Put your kernel hacking stuff here and let's help each other learn about the kernel.[[BR]] * KernelPorts == Information pertinent to specific kernel series == * The pre-2.6 kernel mustfix [MustFix26] and shouldfix [ShouldFix26] bug lists: * [http://www.linux-sxs.org/upgrading/migration26.html Migrating to kernel 2.6], * [http://www.kniggit.net/wwol26.html The Wonderful World of Linux 2.6][[BR]] * [http://lwn.net/Articles/39901/ What to expect with Linux 2.5] (if you get /null appended to the URL, go back & try again (a few times if necessary))[[BR]] * [http://kernelnewbies.org/wiki/moin.cgi/Karthick 2.4 Kernel Internals (Incomplete)][[BR]] * [http://edge.linuxhq.com/kernel/v2.4/changes.html Requirements before upgrading 2.2 to 2.4][[BR]] == Submitting kernel patches == * UpstreamMerge How to submit your code to the upstream kernel. * WhyReiser4IsNotIn Why Reiser 4 is not in the upstream kernel. * PatchOfTheMonth Noteworthy and/or amusing patch submissions and replies. == Reverse engineering == * [http://www.microsoft.com/technet/sysinternals/utilities/processmonitor.mspx Process Monitor] Successor to [http://www.microsoft.com/germany/technet/sysinternals/utilities/Filemon.mspx FileMon], displays file system activities under Windows in real-time[[BR]] ---- . CategoryKernelHacking CategoryKernelHacking ---- CategoryKernelHacking