KernelNewbies
  • Comments
  • Immutable Page
  • Menu
    • Navigation
    • RecentChanges
    • FindPage
    • Local Site Map
    • Help
    • HelpContents
    • HelpOnMoinWikiSyntax
    • Display
    • Attachments
    • Info
    • Raw Text
    • Print View
    • Edit
    • Load
    • Save
  • Login

Kernel Hacking

  • Frontpage

  • Kernel Hacking

  • Kernel Documentation

  • Kernel Glossary

  • FAQ

  • Found a bug?

  • Kernel Changelog

  • Upstream Merge Guide

Projects

  • KernelJanitors

  • KernelMentors

  • KernelProjects

Community

  • Why a community?

  • Regional Kernelnewbies

  • Personal Pages

  • Upcoming Events

References

  • Mailing Lists

  • Related Sites

  • Programming Links

Wiki

  • Recent Changes

  • Site Editors

  • Side Bar

  • Tips for Editors

  • Hosted by WikiWall

Navigation

  • RecentChanges
  • FindPage
  • HelpContents

Upload page content

You can upload content for the page named below. If you change the page name, you can also upload content for another page. If the page name is empty, we derive the page name from the file name.

File to load page content from
Page name
Comment

KernelNewbies:
  • FAQ

If you are working on answering a frequently asked question, please add it to FAQsInProgress.

How do I ...?

  1. /KernelCompilation How do I compile a kernel?

  2. /KernelCrossCompilation How do I cross compile a kernel?

  3. /DisklessImages An Introduction to Diskless Booting.

  4. /CodeBrowsing How to browse through the code?

  5. /HowToApplyAPatch How do I apply a patch?

  6. KernelHackingTools Are there any good IDEs? How do I handle all this code?

  7. /CompileVendorDriver How do I compile a 3rd party device driver ?

  8. /LinuxKernelModuleCompile How can I compile a Linux Kernel Module ?

  9. /LinuxKernelDebug101 Whats the easiest way to debug ?

  10. CareerAdvice How do I get a job as kernel hacker?

  11. UpstreamMerge How do I get my code into the upstream kernel?

Kernelnewbies questions

  1. /VariousKernelTrees What are the various kernel trees for ?

  2. /WhereDoIBegin Where do I begin?

  3. /People on KernelNewBies Who can I find on #kernelnewbies?

  4. /DoINeedToKnowAssembler Do I need to know assembler to hack the kernel?

  5. /DoINeedToKnowHardware Do I need to know a lot about hardware to hack the kernel?

  6. DoesNotWork I built my own kernel, but it does not work. What's the problem?

Kernel hacking

  1. /VariousKernelTrees What are the various kernel trees for ?

  2. /System.map What is the System.map file?

  3. /MajorMinor What major/minor does XXX have ?

  4. /CodingStyle What coding style should I use?

  5. /LikelyUnlikely What means the macros likely() and unlikely() ?

  6. /Preemption What does preemption mean ? Is it available under Linux ?

  7. /LibraryFunctionsInKernel Can I use library functions in the kernel ?

  8. /SyscallTrace How do I intercept system calls ?

  9. /LinkedLists How does the kernel implements linked lists?

  10. /Hashtables How does the kernel implements hashtables? [Under construction]

  11. /WhyWritingFilesFromKernelIsBad Why reading/writing files from the kernel is bad, and how to do otherwise ?

Linux kernel gotchas

  1. /get current How does get_current() work?

  2. /current How does the current macro helps you access your process-related record?

  3. /ExternAndStaticInlineVariable What's the difference between extern and static inline?

  4. /DoWhile0 Why do a lot of #defines in the kernel use do { ... } while (0)?

  5. /LikelyUnlikely What do the macros likely() and unlikely() mean?

  6. /ContainerOf What is container_of ? How does it work ?

  7. /InitExitMacros What are the __init and __exit macros ?

  8. FAQ/WhereIs bad udelay Now, where is __bad_udelay defined?

  9. /asmlinkage What is asmlinkage ?

  10. /down What is that jmp 1b doing out there?

  11. /TestWpBit test_wp_bit magic, or how exception fixups work.

  12. /BUG How does BUG() work?

  13. /StackTrace

    1. Why is there a function on my stack trace that does not get called?
    2. How do I manually get a stack trace?
  14. BootSectorAndKernelImage Why does the kernel no longer directly boot from floppy?

  15. /FastpathAndSlowpath What is the difference between terms: "Fast path" and "Slow path" ?

Hardware Questions

  1. /HyperthreadingDoesNotWork My CPU says it can do hyperthreading. Why do I only see one thread?

Filesystem Questions

  1. /InotifyDnotify Inotify vs Dnotify architecture: How to use it?

  2. /procfs How does the /proc filesystem work?

Memory Management Questions

  1. /devkmem What are the purpose of /dev/kmem? How to use it?


  • CategoryFAQ

  • MoinMoin Powered
  • Python Powered
  • GPL licensed
  • Valid HTML 4.01