入门文章:教你学会编写Linux设备驱动之二
文章作者 100test 发表时间 2007:03:14 16:20:26
来源 100Test.Com百考试题网
MODULE_LICENSE("GPL").
#ifdef CONFIG_SMP
#define __SMP__
#endif
/* 结束例行公事 */
#include /* printk()在这个文件里 */
static int
init_module
(){
printk("Hello,World!\n").
return 0. /* 如果初始工作失败,就返回非0 */
}
static void
cleanup_module
(){
printk("Bye!\n").
}
------------------------------------
2. "asdf.c"
------------------------------------
/*
* 这个文件是一个内核模块。
* 内核模块的编译,加载和卸载在前面已经介绍了。
* 这个模块的功能是,创建一个字符设备。
* 这个设备是一块4096字节的共享内存。
* 内核分配的主设备号会在加载模块时显示。
*/
/* 开始例行公事 */
#ifndef __KERNEL__
# define __KERNEL__
#endif
#ifndef MODULE
# define MODULE
#endif
#include
#include
#ifdef CONFIG_SMP
#define __SMP__
#endif
MODULE_LICENSE("GPL").
/* 结束例行公事 */
#include /* copy_to_user(), copy_from_user */
#include /* struct file_operations, register_chrdev(), ... */
#include /* printk()在这个文件里 */
#include /* 和任务调度有关 */
#include /* u8, u16, u32 ... */
/*
* 关于内核功能库,可以去网上搜索详细资料,
*/
/* 文件被操作时的回调功能 */