首页 > 代码库 > My First Linux Module
My First Linux Module
My First Linux Module
Today, I successfully build my first linux hello module.
First of all add a directory named hello in the kernel/driver, and add a file hello.c, write codes like bellow:
#include <linux/init.h> #include <linux/module.h> static int __init hello_init(void) { printk(KERN_ERR " Hello, world!\n"); return 0; } static void __exit hello_exit(void) { printk(KERN_ERR " Goodbye, world!\n"); } module_init(hello_init); module_exit(hello_exit); MODULE_AUTHOR("Bob, Zhang"); MODULE_LICENSE("Dual BSD/GPL"); MODULE_DESCRIPTION("A simple hello world demo"); MODULE_ALIAS("A simple module");
Then create a Kconfig file:
config HELLO tristate "HELLO WORLD Driver!" default m help HELLO WORLD
And create a Makefile file:
obj-m += hello.o
Next Add the Kconfig and Makefile into the Kconfig file and Makefile file in parent directory.
Finally run the commands bellow:
make ARCH=arm CROSS_COMPILE=$tool_prefix my_kernel_defconfig make ARCH=arm CROSS_COMPILE=$tool_prefix modules mkdir ./moduls_temp make ARCH=arm CROSS_COMPILE=$tool_prefix modules_install INSTALL_MOD_PATH=./modules_temp
At last, the demo run like this:
My First Linux Module
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。