码迷,mamicode.com
首页 > 其他好文 > 详细

FROM:LDD Chapter 2

时间:2014-05-24 12:05:39      阅读:286      评论:0      收藏:0      [点我收藏+]

标签:des   c   code   tar   ext   a   

Quick Reference
insmod
modprobe
rmmod
  User-space utilities that load modules into the running kernels and remove them.
#include <linux/init.h>
module_init(init_function);
module_exit(cleanup_function);
  Macros that designate a module’s initialization and cleanup functions.
__init
__initdata
__exit
__exitdata
  Markers for functions (__init and __exit) and data (__initdata and __exitdata) that are only used at module initialization or cleanup time. Items marked for initialization may be discarded once initialization completes; the exit items may be discarded if module unloading has not been configured into the kernel. These markers work by causing the relevant objects to be placed in a special ELF section in the executable file.
#include <linux/sched.h>
  One of the most important header files. This file contains definitions of much of the kernel API used by the driver, including functions for sleeping and numerous variable declarations.
struct task_struct *current;
  The current process.
current->pid
current->comm
  The process ID and command name for the current process.
sys/module
/proc/modules
  /sys/module is a sysfs directory hierarchy containing information on currently-loaded modules. /proc/modules is the older, single-file version of that information. Entries contain the module name, the amount of memory each module occupies, and the usage count. Extra strings are appended to each line to specify flags that are currently active for the module.
vermagic.o
  An object file from the kernel source directory that describes the environment a module was built for.
#include <linux/module.h>
  Required header. It must be included by a module source.
#include <linux/version.h>
  A header file containing information on the version of the kernel being built.
LINUX_VERSION_CODE
  Integer macro, useful to #ifdef version dependencies.
EXPORT_SYMBOL (symbol);
EXPORT_SYMBOL_GPL (symbol);
  Macro used to export a symbol to the kernel. The second form exports without using versioning information, and the third limits the export to GPL-licensed modules.
MODULE_AUTHOR(author);
MODULE_DESCRIPTION(description);
MODULE_VERSION(version_string);
MODULE_DEVICE_TABLE(table_info);
MODULE_ALIAS(alternate_name);
  Place documentation on the module in the object file.
module_init(init_function);
module_exit(exit_function);
  Macros that declare a module’s initialization and cleanup functions.
#include <linux/moduleparam.h>
module_param(variable, type, perm);
  Macro that creates a module parameter that can be adjusted by the user when the module is loaded (or at boot time for built-in code). The type can be one of bool, charp, int, invbool, long, short, ushort, uint, ulong, or intarray.
#include <linux/kernel.h>
int printk(const char * fmt, ...);
  The analogue of printf for kernel code.

FROM:LDD Chapter 2,布布扣,bubuko.com

FROM:LDD Chapter 2

标签:des   c   code   tar   ext   a   

原文地址:http://www.cnblogs.com/HJOne/p/3748232.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!