免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3751 | 回复: 15
打印 上一主题 下一主题

linux内核问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-01-10 10:50 |只看该作者 |倒序浏览
我最近想写linux下的驱动,在网上找了一个想关的例子看了看,之后我就有个问题:
那里面的代码很的函数都是内核里面的,对于我一个刚开始写代码的新手来说感觉很陌生.
我主要想问问:linux内核怎么学才能在自己写代码的时候知道要用到内核里面的api和一些宏?
我在看代码的时候:我始终不知道那些api和宏是从哪里来的? 为什么要用那些东东?
如果我自己写代码,我从什么地方才能找到那些宏?
希望高手能够给我指点一下!!!
谢谢!!!!1

论坛徽章:
0
2 [报告]
发表于 2009-01-10 10:55 |只看该作者
补充一下:
我用的是内核版本是:2.4.18 的
硬件是平台是arm9-s3c2410的
想写usb驱动...
谢谢.......

论坛徽章:
0
3 [报告]
发表于 2009-01-10 11:30 |只看该作者
Linux设备驱动

找这本书看看先

论坛徽章:
0
4 [报告]
发表于 2009-01-10 11:39 |只看该作者
1.找份资料,了解内核的驱动,整体上把握。比如涉及到的数据结构,同步机制
2.找本书,到具体的章节,找到你需要的知识
3.写代码的时候,想想你需要什么,(比如,你要用锁)然后到书中去找,或者网上的资料,当然更直接的应该man,以及阅读代码

论坛徽章:
0
5 [报告]
发表于 2009-01-10 15:14 |只看该作者
从最简单的驱动看,试着写个驱动框架,怎么着也要自己写个insmod调试下啊

论坛徽章:
0
6 [报告]
发表于 2009-01-10 15:22 |只看该作者
还是先从应用层着手吧.

论坛徽章:
0
7 [报告]
发表于 2009-01-10 16:27 |只看该作者
谢谢高手的指点!!!!
关于linux设备驱动那本书我过对驱动的整体框架基本上知道!
我不知道的是:比如set_external_irq(SD_IRQ_CD, EXT_BOTH_EDGES, GPIO_PULLUP_DIS);
如果让我自己写我就不知道哪里有对SD_IRQ_CD,GPIO_PULLUP_DIS,EXT_BOTH_EDGES等的定义?
我的老师告诉告诉我看linux内核.那里面有相关的定义..
但是我找了半天都没有找到,不知道哪些文件有这些相关的宏定义....

论坛徽章:
0
8 [报告]
发表于 2009-01-10 17:00 |只看该作者
原帖由 chenweiming507 于 2009-1-10 16:27 发表
谢谢高手的指点!!!!
关于linux设备驱动那本书我过对驱动的整体框架基本上知道!
我不知道的是:比如set_external_irq(SD_IRQ_CD, EXT_BOTH_EDGES, GPIO_PULLUP_DIS);
如果让我自己写我就不知道哪里有对SD_IRQ_CD,GPIO_PULLUP_DIS,EXT_BOTH_EDGES等的定义?
我的老师告诉告诉我看linux内核.那里面有相关的定义..
但是我找了半天都没有找到,不知道哪些文件有这些相关的宏定义....


这个你自己用 lxr 找吧,或者 grep

论坛徽章:
0
9 [报告]
发表于 2009-01-10 18:48 |只看该作者
先看看LDD吧,搞懂驱动框架后,写驱动就很简单了,也就是个填充寄存器的体力活

论坛徽章:
0
10 [报告]
发表于 2009-01-10 18:51 |只看该作者
原帖由 chenweiming507 于 2009-1-10 16:27 发表
谢谢高手的指点!!!!
关于linux设备驱动那本书我过对驱动的整体框架基本上知道!
我不知道的是:比如set_external_irq(SD_IRQ_CD, EXT_BOTH_EDGES, GPIO_PULLUP_DIS);
如果让我自己写我就不知道哪里有对S ...


用source insight建个内核源码工程啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP