码迷,mamicode.com
首页 > 系统相关 > 详细

Linux驱动开发(1)之环境搭建小试牛刀

时间:2014-10-17 13:54:28      阅读:195      评论:0      收藏:0      [点我收藏+]

标签:linux驱动编写   环境配置   helloworld   linux驱动入门   ubuntu   

一、环境搭建

最简单的方法就是:

1、Windows下安装VMware

2、WMware下安装Ubuntu(本人装的ubuntu-10.04-desktop-i386(ubuntu发行版的名字、10.04是10年04月、desktop是发行的版本、i386是cpu的型号和类型))

3、此时你的环境已经搭建好了,要多简单就多简单,是不是还没有做什么?怎么可能?这是因为Ubuntu已经帮我们做好了。

4、刚安装Ubuntu怎么配置屏幕分辨率呢?System-Preferences-Monitors

5、验证:打开终端(快捷键:ctrl+atl+t)输入uname -a或uname -r查看内核版本;源码目录:/usr/src

二、小试牛刀

1、在你的用户下新建一个目录:study(可以任意,本文以study为例)

bubuko.com,布布扣

2、建两个文件

第一个:hello.c

代码如下:

#include<linux/module.h>
#include<linux/init.h>


MODULE_LICENSE("Dual BSD/GPL");


static int hello_init(void)
{
printk(KERN_ALERT "Hello world.\n");
return 0;
}


static int hello_exit(void)
{
printk(KERN_ALERT "Goodbye.\n");
return 0;
}


module_init(hello_init);
module_exit(hello_exit);

第二个文件:Makefile(注意M大写且无后缀名,下面的all和clean下的那一行指令前的空白式一个Tab建)

内容如下:

obj-m := hello.o
KERNEL_DIR := /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)
all:
make -C $(KERNEL_DIR) SUBDIRS=$(PWD) modules
clean:
rm *.o *.ko
.PHONY:clean

3、执行(注意:当提示Operation not permitted请在指令前加sudo)

bubuko.com,布布扣

首先进入到目录study

然后执行:make

其次加载模块到内核:insmod ./hello.ko

查看是否有hello模块:lsmod

最后卸载模块:rmmod hello

Linux驱动开发(1)之环境搭建小试牛刀

标签:linux驱动编写   环境配置   helloworld   linux驱动入门   ubuntu   

原文地址:http://blog.csdn.net/zhaicaixiansheng/article/details/40183451

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