1978
Comment:
|
← Revision 67 as of 2017-12-30 01:30:14 ⇥
3676
converted to 1.6 markup
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
If you are working on answering a frequently asked question, please add it to ["FAQsInProgress"]. | If you are working on answering a frequently asked question, please add it to [[FAQsInProgress]]. |
Line 4: | Line 4: |
1. ["/KernelCompilation"] How do I compile a kernel? 1. ["/HowToApplyAPatch"] How do I apply a patch? 1. ["/IDEs"] Are there any good IDEs? How do I handle all this code? 1. ["/CompileVendorDriver"] How do I compile a 3rd party device driver ? 1. ["/LinuxKernelModuleCompile"] How can I compile a Linux Kernel Module ? |
1. /KernelCompilation How do I compile a kernel? 1. /KernelCrossCompilation How do I cross compile a kernel? 1. /DisklessImages An Introduction to Diskless Booting. 1. /CodeBrowsing How to browse through the code? 1. [[/HowToApplyAPatch]] How do I apply a patch? 1. KernelHackingTools Are there any good IDEs? How do I handle all this code? 1. /CompileVendorDriver How do I compile a 3rd party device driver ? 1. /LinuxKernelModuleCompile How can I compile a Linux Kernel Module ? 1. /LinuxKernelDebug101 Whats the easiest way to debug ? 1. CareerAdvice How do I get a job as kernel hacker? 1. UpstreamMerge How do I get my code into the upstream kernel? |
Line 12: | Line 16: |
1. ["/VariousKernelTrees"] What are the various kernel trees for ? 1. ["/WhereDoIBegin"] Where do I begin? 1. ["/People on KernelNewBies"] Who can I find on #kernelnewbies? |
1. /VariousKernelTrees What are the various kernel trees for ? 1. [[/WhereDoIBegin]] Where do I begin? 1. [[FAQ/People_on_KernelNewBies|/People on KernelNewBies]] Who can I find on #kernelnewbies? 1. [[/DoINeedToKnowAssembler]] Do I need to know assembler to hack the kernel? 1. [[/DoINeedToKnowHardware]] Do I need to know a lot about hardware to hack the kernel? 1. DoesNotWork I built my own kernel, but it does not work. What's the problem? |
Line 18: | Line 23: |
1. ["/VariousKernelTrees"] What are the various kernel trees for ? 1. ["/System.map"] What is the System.map file? 1. ["/MajorMinor"] What major/minor does XXX have ? 1. ["/CodingStyle"] What coding style should I use? 1. ["/LikelyUnlikely"] What means the macros `likely()` and `unlikely()` ? 1. ["/Preemption"] What does preemption mean ? Is it available under Linux ? 1. ["/LibraryFunctionsInKernel"] Can I use library functions in the kernel ? 1. ["/SyscallTrace"] How do I intercept system calls ? |
1. /VariousKernelTrees What are the various kernel trees for ? 1. [[/System.map]] What is the System.map file? 1. /MajorMinor What major/minor does XXX have ? 1. /CodingStyle What coding style should I use? 1. /LikelyUnlikely What means the macros `likely()` and `unlikely()` ? 1. [[/Preemption]] What does preemption mean ? Is it available under Linux ? 1. /LibraryFunctionsInKernel Can I use library functions in the kernel ? 1. /SyscallTrace How do I intercept system calls ? 1. /LinkedLists How does the kernel implements linked lists? 1. [[/Hashtables]] How does the kernel implements hashtables? [Under construction] 1. /WhyWritingFilesFromKernelIsBad Why reading/writing files from the kernel is bad, and how to do otherwise ? |
Line 29: | Line 35: |
1. ["/get_current"] How does `get_current()` work? 1. ["/ExternAndStaticInlineVariable"] What's the difference between extern and static inline? 1. ["/DoWhile0"] Why do a lot of `#defines` in the kernel use `do { ... } while (0)`? 1. ["/LikelyUnlikely"] What do the macros `likely()` and `unlikely()` mean? 1. ["/ContainerOf"] What is ''container_of'' ? How does it work ? 1. ["/InitExitMacros"] What are the __init and __exit macros ? 1. ["/WhereIs__bad_udelay"] Now, where is __bad_udelay defined? 1. ["/asmlinkage"] What is `asmlinkage` ? 1. ["/down"] What is that jmp 1b doing out there? 1. ["/TestWpBit"] How test_wp_bit works, or "how do I use exceptions?" |
1. [[FAQ/get_current|/get current]] How does `get_current()` work? 1. [[/current]] How does the `current` macro helps you access your process-related record? 1. /ExternAndStaticInlineVariable What's the difference between extern and static inline? 1. /DoWhile0 Why do a lot of `#defines` in the kernel use `do { ... } while (0)`? 1. /LikelyUnlikely What do the macros `likely()` and `unlikely()` mean? 1. /ContainerOf What is ''container_of'' ? How does it work ? 1. /InitExitMacros What are the _``_init and _``_exit macros ? 1. [[FAQ/WhereIs bad udelay]] Now, where is _``_bad_udelay defined? 1. [[/asmlinkage]] What is `asmlinkage` ? 1. [[/down]] What is that jmp 1b doing out there? 1. /TestWpBit test_wp_bit magic, or how exception fixups work. 1. [[/BUG]] How does BUG() work? 1. /StackTrace i. Why is there a function on my stack trace that does not get called? i. How do I manually get a stack trace? 1. BootSectorAndKernelImage Why does the kernel no longer directly boot from floppy? 1. /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. [[FAQ/InotifyDnotify|/InotifyDnotify]] Inotify vs Dnotify architecture: How to use it? 1. [[FAQ/Procfs|/procfs]] How does the /proc filesystem work? == Memory Management Questions == 1. [[FAQ/devkmem|/devkmem]] What are the purpose of /dev/kmem? How to use it? |
Line 42: | Line 60: |
["CategoryFAQ"] | . [[CategoryFAQ]] |
If you are working on answering a frequently asked question, please add it to FAQsInProgress.
How do I ...?
/KernelCompilation How do I compile a kernel?
/KernelCrossCompilation How do I cross compile a kernel?
/DisklessImages An Introduction to Diskless Booting.
/CodeBrowsing How to browse through the code?
/HowToApplyAPatch How do I apply a patch?
KernelHackingTools Are there any good IDEs? How do I handle all this code?
/CompileVendorDriver How do I compile a 3rd party device driver ?
/LinuxKernelModuleCompile How can I compile a Linux Kernel Module ?
/LinuxKernelDebug101 Whats the easiest way to debug ?
CareerAdvice How do I get a job as kernel hacker?
UpstreamMerge How do I get my code into the upstream kernel?
Kernelnewbies questions
/VariousKernelTrees What are the various kernel trees for ?
/WhereDoIBegin Where do I begin?
/People on KernelNewBies Who can I find on #kernelnewbies?
/DoINeedToKnowAssembler Do I need to know assembler to hack the kernel?
/DoINeedToKnowHardware Do I need to know a lot about hardware to hack the kernel?
DoesNotWork I built my own kernel, but it does not work. What's the problem?
Kernel hacking
/VariousKernelTrees What are the various kernel trees for ?
/System.map What is the System.map file?
/MajorMinor What major/minor does XXX have ?
/CodingStyle What coding style should I use?
/LikelyUnlikely What means the macros likely() and unlikely() ?
/Preemption What does preemption mean ? Is it available under Linux ?
/LibraryFunctionsInKernel Can I use library functions in the kernel ?
/SyscallTrace How do I intercept system calls ?
/LinkedLists How does the kernel implements linked lists?
/Hashtables How does the kernel implements hashtables? [Under construction]
/WhyWritingFilesFromKernelIsBad Why reading/writing files from the kernel is bad, and how to do otherwise ?
Linux kernel gotchas
/get current How does get_current() work?
/current How does the current macro helps you access your process-related record?
/ExternAndStaticInlineVariable What's the difference between extern and static inline?
/DoWhile0 Why do a lot of #defines in the kernel use do { ... } while (0)?
/LikelyUnlikely What do the macros likely() and unlikely() mean?
/ContainerOf What is container_of ? How does it work ?
/InitExitMacros What are the __init and __exit macros ?
FAQ/WhereIs bad udelay Now, where is __bad_udelay defined?
/asmlinkage What is asmlinkage ?
/down What is that jmp 1b doing out there?
/TestWpBit test_wp_bit magic, or how exception fixups work.
/BUG How does BUG() work?
- Why is there a function on my stack trace that does not get called?
- How do I manually get a stack trace?
BootSectorAndKernelImage Why does the kernel no longer directly boot from floppy?
/FastpathAndSlowpath What is the difference between terms: "Fast path" and "Slow path" ?
Hardware Questions
/HyperthreadingDoesNotWork My CPU says it can do hyperthreading. Why do I only see one thread?
Filesystem Questions
/InotifyDnotify Inotify vs Dnotify architecture: How to use it?
/procfs How does the /proc filesystem work?
Memory Management Questions
/devkmem What are the purpose of /dev/kmem? How to use it?