您的位置:首页 > 运维架构 > Linux

Linux 驱动开发学习基本步骤+linux下的源代码阅读软件Kscope

2010-11-05 15:22 573 查看
Linux 驱动开发学习基本步骤 http://hi.baidu.com/guowenmoon/blog/item/ee59fa578ef7aacab645ae0c.html
1.首先需要对C语言编程非常熟悉,这是在Linux


下编程的基本条件。

2.会写简单的Makefile,编写一个简单的应用程序,再写一个Makefile,让它能正常编译。Makefile主要目的就是用来管理编译庞大的代码文件。

3.了解Linux内核


的目录结构,尤其要熟悉kernel目录下的driver目录组织结构,这里一般存放内核中的驱动程序。

4.学会配置、编译Linux内核




5.写一简单char驱动,Makefile编译通过,可以insmod, lsmod, rmmod。在驱动程序的init函数里加打印字符串, insmod后应该能够通过dmesg看到输出。

6.写一完整char驱动, 加上read, write, ioctl等各种操作函数的驱动实现。 在ioctl里完成从用户空间向内核空间传递结构体的实现。

7.写一block驱动,如磁盘驱动。加上read,write,ioctl,poll等各种函数实现。

8.学习Linux系统


中interrupt机制的实现,这是编写驱动中常用到的技术。

9.学习内存管理,明白各种memory alloc的函数实现细节,这是Linux开发


的基本功之一。

10.学习锁机制的应用,如信号量、自旋锁等。锁主要用来解决很多同步和并发的问题。

11.以上知识你都认为掌握了,接下来就看内核中实际应用的驱动代码。你会发现最基本的你已经知道了,大的框架都是一样的,无非是
read,write,ioctl等函数的实现,但里面包含了很多很多细小的实现细节是之前不知道的,比如程序的设计逻辑,算法等。这时候就要考虑到很多
实际的问题而不仅仅是基本功能的实现。

12.最后就是坚持不断地学习与总结。

总之,根据以上的步骤学习你会有实际的提高,但还有一点是最重要的,就是要有持之以恒的学习精神,并且要有解决任何问题的信心。

linux下的源代码阅读软件Kscope

linux下的源代码阅读软件Kscope有着windows下sourceinsight的强大功能,在linux看代码用它方便 嘿嘿

由于Kscope依赖于软件包graphviz生成函数的调用关系图,所以要先安装graphviz

到http://www.graphviz.org/Download_source.php 下载graphviz 解压之后进入目录下

./configure

make

make install 这就安装好了

然后到Kscope的官网下载1.6.0版本的(最新的1.9.0的),不过1.6.0的好用,http://kscope.sourceforge.net

同样是解压安装,步骤如下

./configure

make

make install

如果在make的时候提示有错就是提示cannot find -lutempter ,不用怕,没事的只是提示找不到动态链接库libutempter.so 其实在/usr/lib目录下有libutempter.so.0这个的 这是我只要一下步骤:

cd /usr/lib

ln -s libutempter.so.0 libutempter.so 创建一个软链接名为libutempter.so

然后接着再make一下,接着就make install了

OK


相信很多人在做软件开发时都会碰到这样的情况:在Windows平台用Source
Insight编写和查看代码,然后再到Linux平台编译,翻来覆去的很麻烦。那么Linux平台有没有一种类似Source
Insight的代码查看和编写的工具呢?答案当然是肯定的,Kscope就是Linux平台的Source
Insight。本人的Linux平台是Fedora
7,可以支持Kscope最新稳定版本1.6.0。首先从Kscope的官方网站上下载最新的源代码kscope-1.6.0.tar.gz,直接解压安
装: #tar xzvf kscope-1.6.0.tar.gz #cd kscope-1.6.0 #./configure #make
#make install
很简单,基本上不需要任何额外的配置。当然了,在安装Linux系统时要保证安装了KDE和Qt开发包。然后就可以启动Kscope了。第一次启动时,你
需要对Kscope做一些简单的配置,在配置时可能要你指定Kscope所需的cscope,ctags和dot,直接点击下面的按钮Guess,让它自
己检测就可以了。如果发现有什么没有找到,可能就是你的系统里没有安装所需的软件包,手动安装即可。这里我的系统没有找到dot,所以还不能使用
kscope的图表功能。所谓dot,是指Graphviz,它是一个图表程序,所以要使用Kscope的图表功能,需要graphviz的支持。从 http://www.graphviz.org/
下载最新的源代码graphviz-2.14.tar.gz,和上面kscope一样解压安装就可以了。一切搞定之后,建立一个工程,是不是和Windows下的Source Insight很像?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: