helloworld模块

Posted 扁桃体也发言

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了helloworld模块相关的知识,希望对你有一定的参考价值。

hello.c:

#include <linux/init.h>
#include <linux/module.h>
MODULE_LICENSE("Dual BSD/GPL");
static int hello_init(void)
{
printk(KERN_ALERT "Hello, world\n");
return 0;
}
static void hello_exit(void)
{
printk(KERN_ALERT "Goodbye, cruel world\n");
}
module_init(hello_init);
module_exit(hello_exit);

Makefile:

KVERS = $(shell uname -r)

# Kernel modules
obj-m += hello.o

# Specify flags for the module compilation.
#EXTRA_CFLAGS=-g -O0

build: kernel_modules

kernel_modules:
make -C /lib/modules/$(KVERS)/build M=$(CURDIR) modules

clean:
make -C /lib/modules/$(KVERS)/build M=$(CURDIR) clean

 

加载模块:

insmod ./hello.ko

卸载模块:

rmmod hello

 

查看打印信息:

dmesg | tail

以上是关于helloworld模块的主要内容,如果未能解决你的问题,请参考以下文章

IDEA中HelloWorld步骤

helloworld模块

helloworld模块

ubuntu下helloworld内核模块编译

随笔之HelloWorld

Node.js开发入门—HelloWorld再分析