LDD快速参考
第二章 快速参考
本节中出现的条目会以它们在文中出现的顺序列出:
- insmod
- modprobe
- rmmod
用来装载模块到正运行的内核和移除模块的用户空间工具:
- #include <linux/init.h>
- module_init(init_function);
- module_exit(cleanup_function);
用于指定模块的初始化和清除函数的宏:
__init
__initdata
__exit
__exitdata
- #include <linux/sched.h>最重要的头文件之一。该文件包含驱动使用的大部分内核API的定义,包括睡眠函数以及各种变量声明。
- struct task_struct *current;当前进程
- current->pid:当前进程ID
- current->comm:当前进程命名名
- obj-m:由内核构造系统使用的makefile符号,用来确定在当前目录中应构造哪些模块
- /sys/module:早期用法,只在单个文件中包括这些信息,其中包括了模块名称、每个模块使用的内存总量一级使用计数等。每一行之后还追加额外的字符串,用来指定模块的当前活动标志。
- /proc/modules: /sys/module是sysfs目录层次结构中包含当前已装载模块信息的目录。
- vermagic.o:内核源代码目录中的一个目标文件,它描述了模块的构造环境。
- #include <linux/module.h>:必须的文件,它必须包含在模块源代码中。
- #include <linux/version.h>:包含所构造内核版本信息的头文件。
- LINUX_VERSION_CODE:整数宏,在处理版本依赖的预处理条件语句中非常有用
- EXPORT_SYMBOL(symbol);用来导出单个符号到内核的宏
- EXPORT_SYMBOL_GPL(symbol);将导出符号的使用限于GPL许可证下的模块
- MODULE_AUTHOR(author);
- MODULE_DESCRIPTION(description);
- MODULE_VERSION(version_string);
- MODULE_DEVICE_TABLE(table_info);
- MODULE_ALIAS(alternate_name);在目标文件中添加关于模块的文档信息
- module_init(init_function);
- module_exit(exit_function);用来声明模块初始化和清除函数的宏
- #include <linux/moduleparam.h>
- module_param(variable, type, perm);用来创建模块参数的宏,用户可在装载模块时调整这些参数的值。
- #include <linux/kernel.h>
- int printk(const char *fmt, ...);函数printk内核代码
LDD快速参考的更多相关文章
- Oracle安装部署,版本升级,应用补丁快速参考
一.Oracle安装部署 1.1 单机环境 1.2 Oracle RAC环境 1.3 Oracle DataGuard环境 1.4 主机双机 1.5 客户端部署 二.Oracle版本升级 2.1 单机 ...
- Oracle 11.2.0.4单实例打PSU,OJVM PSU补丁快速参考
写在前面: 1.Oracel打每个补丁的操作有时存在差异,所以不管多熟悉,都应该在打任何补丁之前阅读新补丁中附带的readme. 2.Oracle每季度都会更新一个最新的PSU,本文最新指的是当前最新 ...
- Oracle 11.2.0.4 DataGuard 环境打PSU,OJVM PSU补丁快速参考
环境:RHEL6.5 + Oracle 11.2.0.4 DataGuard physical standby 主库和备库都是单节点. 需求:主备库同时应用160719的PSU和OJVM PSU补丁. ...
- 数据库 PSU,SPU(CPU),Bundle Patches 和 Patchsets 补丁号码快速参考 (文档 ID 1922396.1)
数据库 PSU,SPU(CPU),Bundle Patches 和 Patchsets 补丁号码快速参考 (文档 ID 1922396.1)
- jenkins2 pipeline 语法快速参考
jenkins2 pipeline中常用的语法快速参考. 文章来自:http://www.ciandcd.com文中的代码来自可以从github下载: https://github.com/ciand ...
- oracle数据库 PSU,SPU(CPU),Bundle Patches 和 Patchsets 补丁号码快速参考 (文档 ID 1922396.1)
数据库 PSU,SPU(CPU),Bundle Patches 和 Patchsets 补丁号码快速参考 (文档 ID 1922396.1) 文档内容 用途 详细信息 Patchsets ...
- Razor 语法快速参考
Razor 语法快速参考 本文引自:http://haacked.com/archive/2011/01/06/razor-syntax-quick-reference.aspx 语法名称 Raz ...
- 转: seajs手册与文档之 -- 快速参考 ( ~~useful )
目录 快速参考 seajs.use seajs.config define require require.async exports module.exports 快速参考 该页面列举了 SeaJS ...
- Selenium 2.0 WebDriver 自动化测试 使用教程 实例教程 API快速参考
Selenium 2.0 WebDriver 自动化测试 使用教程 实例教程 API快速参考 //System.setProperty("webdriver.firefox.bin" ...
随机推荐
- DG-V$MANAGED_STANDBY视图
V$MANAGED_STANDBY displays current status information for some Oracle Database processes related to ...
- 测开之路七十八:shell之函数和参数
函数 function function_name(){ statement1 Statement2 .... statementn} function_name $var1 ...
- PTA 1155 Heap Paths (DFS)
题目链接:1155 Heap Paths (30 分) In computer science, a heap is a specialized tree-based data structure t ...
- 逻辑回归提高阈值对p和r的影响
这里我做了一个实验 也就是随着阈值的增大,precision增加或者不变,recall减少或者不变.
- Lambda拉姆达表达式
拉姆达表达式常用于委托,也就是说拉姆达表达式是匿名函数,简单点就是函数. a => a.Equals("string"); //原形为: (a) => { return ...
- vuejs基础-v-for用法
Vue指令之v-for和key属性 迭代数组 <ul> <li v-for="(item, i) in list">索引:{{i}} --- 姓名:{{it ...
- java.lang.IllegalStateException: Cannot forward after response has been committed
jjava.lang.IllegalStateException: Cannot forward after response has been committed at org.apache.cat ...
- Mysql 实现基于binlog的主从同步
工作原理 1.主节点必须启用二进制日志,记录任何修改了数据库数据的事件.2.从节点开启一个线程(I/O Thread)把自己扮演成 mysql 的客户端,通过 mysql 协议,请求主节点的二进制日志 ...
- Spring学习(二)--装配Bean
一.Spring装配机制 Spring提供了三种主要的装配机制: 1.在XML中进行显示配置 2.在Java中进行显示配置 3.隐式的bean发现机制和自动装配--自动化装配bean Spring可以 ...
- vue 使用 computed 结合 filter 实现数据的的过滤和排序
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...