📄 kernel_module_development.html
字号:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html><head> <title></title> <link rel="stylesheet" media="screen" type="text/css" href="./style.css" /> <link rel="stylesheet" media="screen" type="text/css" href="./design.css" /> <link rel="stylesheet" media="print" type="text/css" href="./print.css" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /></head><body><a href=start.html>start</a></br><h2><a name="kernel_modules_introduction" id="kernel_modules_introduction">Kernel Modules, Introduction</a></h2><div class="level2"><p> Kernel modules are effective extensions to the kernel that can be introduced into a running system.</p><p>This documentation covers the following areas: </p><ul><li class="level1"><div class="li"> <a href="module_loader.html" class="wikilink1" title="module_loader.html">Module Loader</a></div></li><li class="level1"><div class="li"> <a href="module_init.html" class="wikilink1" title="module_init.html">Module Init</a></div></li><li class="level1"><div class="li"> <a href="module_parameters.html" class="wikilink1" title="module_parameters.html">Module Parameters</a></div></li><li class="level1"><div class="li"> <a href="building_modules.html" class="wikilink1" title="building_modules.html">Building Modules</a></div></li><li class="level1"><div class="li"> <a href="a_simple_module_example.html" class="wikilink1" title="a_simple_module_example.html">A Simple Module Example</a></div></li></ul><p> Dynamic loading and symbol look-up techniques allow this process to alter kernel operation significantly during the init_module call.</p><p>The additional resources that were introduced into the kernel during module load are to be removed when the module is unloaded. Any module resources still in use at the unload time have to be managed.</p><p>The following picture serves as an overview to the module process. </p><p><a href="media/kmodfig.gif" class="media" target="_blank" title="kmodfig.gif"><img src="media/kmodfig.gif" class="media" alt="" /></a></p><p><strong>Figure: Module Overview</strong></p><p>As extensions of the kernel, modules execute at a high privilege level and have access to all kernel memory and services.</p><ul><li class="level1"><div class="li"> A module can execute privileged instructions such as I/O.</div></li><li class="level1"><div class="li"> A module can call any global kernel function.</div></li><li class="level1"><div class="li"> A module can access any kernel memory location</div></li><li class="level1"><div class="li"> A failure in a module can easily bring down the entire system.</div></li><li class="level1"><div class="li"> A module that fails to install cannot be removed.</div></li><li class="level1"><div class="li"> There’s no protection against anything with Kernel privileges.</div></li></ul><p> <a href="http://lwn.net/images/pdf/LDD3/ch02.pdf" class="urlextern" title="http://lwn.net/images/pdf/LDD3/ch02.pdf" rel="nofollow">two</a> </p></div></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -