标签:编辑器 printk argv license test main linux基础 driver void
我们在写程序时,可能有这种需要,每次都要重复写某个东西。
在写c程序时候,经常写如下:
#include <stdio.h>
int main(int argv, char *argv[])
{
return 0;
}
这样,使用vi的模板,很方便
linux@ubuntu:~$ cd /usr/share/vim/vimfiles
linux@ubuntu:/usr/share/vim/vimfiles$ sudo touch c_template.c
linux@ubuntu:/usr/share/vim/vimfiles$ ls
c_template.c gvimrc vimrc vimrc.tiny
我用到"*.c"文件,直接在c_template.c中加入一些内容
linux@ubuntu:/usr/share/vim/vimfiles$ sudo vi c_template.c
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/module.h>
//入口函数
static int __init gec6816_led_init (void)
{
printk ("gec6816_led_init\r\n");
return 0;
}
//出口函数
static void __exit gec6818_led_exit (void)
{
printk ("gec6818_led_exit\r\n");
}
//驱动程序的入口:insmod led_drv.ko调用module_init,module_init又会去调用gec6818_led_init。
module_init (gec6816_led_init);
//驱动程序的出口:rmmod led_drv.ko调用module_exit,module_exit又会去调用gec6818_led_exit。
module_exit (gec6818_led_exit);
//模块描述
//作则信息
MODULE_AUTHOR("pxysource@gec");
//模块功能描述
MODULE_DESCRIPTION("gec6818 led driver");
//模块许可证类型
MODULE_LICENSE("GPL");
保存并退出
linux@ubuntu:/usr/share/vim/vimfiles$ sudo vi vimrc
在最后面加上一句
"c template
autocmd BufNewFile *.c 0r /usr/share/vim/vimfiles/c_template.c
保存并退出
linux@ubuntu:~$ vi 1.c
如下:模板导入成功
#include <linux/init.h>
2 #include <linux/kernel.h>
3 #include <linux/module.h>
4
5 //入口函数
6 static int __init gec6816_led_init (void)
7 {
8 printk ("gec6816_led_init\r\n");
9
10 return 0;
11 }
12
13 //出口函数
14 static void __exit gec6818_led_exit (void)
15 {
16 printk ("gec6818_led_exit\r\n");
17 }
18
19 //驱动程序的入口:insmod led_drv.ko调用module_init,module_init又会去调用gec6818_led_init。
20 module_init (gec6816_led_init);
21 //驱动程序的出口:rmmod led_drv.ko调用module_exit,module_exit又会去调用gec6818_led_exit。
22 module_exit (gec6818_led_exit);
23
24 //模块描述
25 //作则信息
26 MODULE_AUTHOR("pxysource@gec");
27 //模块功能描述
28 MODULE_DESCRIPTION("gec6818 led driver");
29 //模块许可证类型
30 MODULE_LICENSE("GPL");
31
~
~
~
~
~
~
~
~
~
~
~
~
"/usr/share/vim/vimfiles/c_template.c" 30L, 741C 1,1 All
其他文件类似修改就行
标签:编辑器 printk argv license test main linux基础 driver void
原文地址:https://www.cnblogs.com/risesource/p/12096941.html