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" ...
随机推荐
- 移动端调试 — chrome模拟器基础调试
打开开发者工具,进入chrome调试状态,点击左上角的手机图标,进入手机模拟器调试状态. 模拟器支持操作: 切换设备类型,模拟网络环境,模拟bar,keyboard弹出状态,横屏状态,更改UserAg ...
- day04—JavaScript之面向对象
转行学开发,代码100天——2018-03-20 对象是变量的容器,是键值对的容器,也是属性和方法的容器. 万物接对象 1.JavaScript中对象定义的方式 方法一:new Object() // ...
- php面向对象三大特性
1.封装: 目的:使类更加安全 步骤:1.成员变量变成private(私有的)2.设置方法/调用方法3.在方法中增加限制 <?php class shao { private $aa;//必须是 ...
- Marriage Match II 【HDU - 3081】【并查集+二分答案+最大流】
题目链接 一开始是想不断的把边插进去,然后再去考虑我们每次都加进去边权为1的边,直到跑到第几次就没法继续跑下去的这样的思路,果不其然的T了. 然后,就是想办法咯,就想到了二分答案. 首先,我们一开始处 ...
- Lock和synchronized使用
该文章主要讲解如何快速应用Lock和synchronized 读者可以自行学习Lock和synchronized系统级比较:可参考并发实战等,自己决定什么场景下使有哪种锁 Lock使用案例: publ ...
- redis setNx方法
Redis有一系列的命令,特点是以NX结尾,NX是Not eXists的缩写,如SETNX命令就应该理解为:SET if Not eXists.这系列的命令非常有用,这里讲使用SETNX来实现分布式锁 ...
- 在Eclipse的kepler中执行OSGIproject出错的解决方式
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/canlets/article/details/29620301 今天学习OSGI的过程中依照书上所述 ...
- Linux之systemd服务配置及自动重启
layout: post title: Linux之systemd服务配置及自动重启 date: 2019-09-09 tags: linux --- Linux之systemd服务配置及自动重启 0 ...
- JS 函数 学习笔记
函数是一段可以反复调用的代码块.函数还能接受输入的参数,不同的参数会返回不同的值 声明函数的 5 种方式 具名函数 (function 命令) function f(x, y){ return x + ...
- Java中POJO及其细分XO、DAO的概念
各层命名规约: A) Service/DAO 层方法命名规约 1) 获取单个对象的方法用 get 做前缀. 2) 获取多个对象的方法用 list 做前缀. 3) 获取统计值的方法用 count 做前缀 ...