OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 50891|回复: 242

简单总结linux驱动程序开发学习步骤

  [复制链接]

80

主题

103

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
406
金钱
406
注册时间
2018-11-20
在线时间
25 小时
发表于 2019-8-22 14:44:40 | 显示全部楼层 |阅读模式
  1. 学会写简单的makefile
  2. 编一应用程序,可以用makefile跑起来
  3. 学会写驱动的makefile
  4. 写一简单char驱动,makefile编译通过,可以insmod, lsmod, rmmod. 在驱动的init函数里打印hello world, insmod后应该能够通过dmesg看到输出。
  5. 写一完整驱a动, 加上read, write, ioctl, polling等各种函数的驱动实现。 在ioctl里完成从用户空间向内核空间传递结构体的实现。
  6. 写一block驱动, 加上read,write,ioctl,poll等各种函数实现。
  7. 简单学习下内存管理, 这个是最难的,明白各种memory alloc的函数实现细节。这是linux开发的基本功。
  8. 学习锁机制的应用,这个不是最难的但是最容易犯错的,涉及到很多同步和并发的问题。
  9. 看内核中实际应用的驱动代码。 你会发现最基本的你已经知道了, 大的框架都是一样的, 无非是read, write, ioctl等函数的实现, 但里面包含了很多很多细小的实现细节是之前不知道的。 这时候就要考虑到很多别的问题而不仅仅是基本功能的实现。
  推荐您看2.6.20中integrated的一个驱动 kvm, 记得是在driver/lguest下,很好玩的, 就是linux下的虚拟机驱动, 代码不长,但功能强大。有能力的可以自己写一操作系统按照要求做成磁盘镜像加载到虚拟机中, 然后客户机可以有自己的4G虚拟地址空间。
  10. 看完驱动欢迎您进入Linux kernel学习中来。
  最简单的方法,跟着ldd(linux devive driver)做一遍。

下面也给大家分享一些这方面的资料可以在学习中作为参考


初识Makefile

http://www.makeru.com.cn/live/3485_1494.html?s=45051
游客,如果您要查看本帖隐藏内容请回复



正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

0

主题

13

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2014-11-13
在线时间
7 小时
发表于 2019-8-23 20:48:09 | 显示全部楼层
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手入门

积分
6
金钱
6
注册时间
2019-8-26
在线时间
1 小时
发表于 2019-8-26 18:07:46 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手入门

积分
15
金钱
15
注册时间
2019-5-7
在线时间
2 小时
发表于 2019-9-4 10:15:04 | 显示全部楼层
谢谢楼主分享
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
37
金钱
37
注册时间
2019-9-5
在线时间
8 小时
发表于 2019-9-5 15:00:02 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手入门

积分
10
金钱
10
注册时间
2019-7-26
在线时间
2 小时
发表于 2019-9-27 08:29:07 | 显示全部楼层
谢谢分享                           
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
22
金钱
22
注册时间
2019-9-15
在线时间
4 小时
发表于 2019-9-27 18:05:25 | 显示全部楼层
学习学习66666
回复 支持 反对

使用道具 举报

6

主题

1127

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1656
金钱
1656
注册时间
2019-8-15
在线时间
102 小时
发表于 2019-9-27 20:58:19 | 显示全部楼层
不错呦!不过有好多东东都没听说过,呃呃呃呃呃呃,多谢了
成功没有捷径
回复 支持 反对

使用道具 举报

6

主题

1127

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1656
金钱
1656
注册时间
2019-8-15
在线时间
102 小时
发表于 2019-9-27 20:59:06 | 显示全部楼层
感谢楼主分享,谢谢啦!!!
成功没有捷径
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
8
金钱
8
注册时间
2019-9-30
在线时间
1 小时
发表于 2019-9-30 14:32:59 | 显示全部楼层
感谢分享
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
18
金钱
18
注册时间
2019-9-27
在线时间
3 小时
发表于 2019-9-30 14:59:19 | 显示全部楼层
学习学习
回复 支持 反对

使用道具 举报

1

主题

12

帖子

0

精华

高级会员

Rank: 4

积分
576
金钱
576
注册时间
2017-10-16
在线时间
55 小时
发表于 2019-10-3 12:59:23 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

0

主题

26

帖子

0

精华

初级会员

Rank: 2

积分
92
金钱
92
注册时间
2019-8-9
在线时间
18 小时
发表于 2019-10-7 10:43:35 | 显示全部楼层
很好,学习下,谢谢!
回复 支持 反对

使用道具 举报

0

主题

10

帖子

0

精华

新手上路

积分
48
金钱
48
注册时间
2019-6-19
在线时间
17 小时
发表于 2019-10-15 10:41:51 | 显示全部楼层
嘻嘻嘻嘻嘻嘻嘻
回复 支持 反对

使用道具 举报

19

主题

83

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
243
金钱
243
注册时间
2017-5-19
在线时间
63 小时
发表于 2019-10-15 11:16:26 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
2
金钱
2
注册时间
2019-10-19
在线时间
0 小时
发表于 2019-10-19 15:23:04 | 显示全部楼层
谢谢分享!!
回复 支持 反对

使用道具 举报

70

主题

6698

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
12692
金钱
12692
注册时间
2012-11-26
在线时间
3711 小时
发表于 2019-10-19 15:42:33 | 显示全部楼层
感谢楼主分享,谢谢啦!!!
回复 支持 反对

使用道具 举报

41

主题

113

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
207
金钱
207
注册时间
2019-8-20
在线时间
83 小时
发表于 2019-10-20 10:22:41 | 显示全部楼层
谢谢楼主分享
回复 支持 反对

使用道具 举报

2

主题

12

帖子

0

精华

初级会员

Rank: 2

积分
90
金钱
90
注册时间
2019-6-22
在线时间
9 小时
发表于 2019-10-22 19:26:12 | 显示全部楼层
感谢分享
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
17
金钱
17
注册时间
2019-8-12
在线时间
4 小时
发表于 2019-10-22 19:29:38 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

3

主题

9

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2019-10-24
在线时间
12 小时
发表于 2019-10-24 09:40:09 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

0

主题

6

帖子

0

精华

新手上路

积分
46
金钱
46
注册时间
2019-7-16
在线时间
8 小时
发表于 2019-10-24 13:50:40 | 显示全部楼层
谢谢分享,6666
回复 支持 反对

使用道具 举报

1

主题

18

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
235
金钱
235
注册时间
2019-7-15
在线时间
32 小时
发表于 2019-10-28 12:43:45 | 显示全部楼层
感谢分享 学习刻苦
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
4
金钱
4
注册时间
2019-10-28
在线时间
1 小时
发表于 2019-10-28 19:49:40 | 显示全部楼层
谢谢分享,过来学习。。。
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手入门

积分
19
金钱
19
注册时间
2019-5-25
在线时间
2 小时
发表于 2019-10-29 09:35:15 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

3

主题

16

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2019-7-22
在线时间
2 小时
发表于 2019-10-29 09:53:57 | 显示全部楼层
感谢感谢
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
5
金钱
5
注册时间
2019-11-2
在线时间
1 小时
发表于 2019-11-2 00:02:13 来自手机 | 显示全部楼层
感谢好咩
回复 支持 反对

使用道具 举报

0

主题

9

帖子

0

精华

初级会员

Rank: 2

积分
98
金钱
98
注册时间
2019-8-28
在线时间
9 小时
发表于 2019-11-2 11:40:29 | 显示全部楼层
学习借鉴一下
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2019-6-11
在线时间
6 小时
发表于 2019-11-5 14:25:10 | 显示全部楼层
学习学习
回复 支持 反对

使用道具 举报

7

主题

237

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1101
金钱
1101
注册时间
2019-5-6
在线时间
127 小时
发表于 2019-11-25 20:17:35 | 显示全部楼层
感谢楼主分享,
一步一个脚印
回复 支持 反对

使用道具 举报

33

主题

982

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
7862
金钱
7862
注册时间
2014-8-13
在线时间
1584 小时
发表于 2019-11-25 22:27:39 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

2

主题

8

帖子

0

精华

新手上路

积分
43
金钱
43
注册时间
2018-12-4
在线时间
7 小时
发表于 2019-11-26 10:05:47 | 显示全部楼层
makefile觉得好像要重新学习一门语言
回复 支持 反对

使用道具 举报

0

主题

7

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2019-8-28
在线时间
7 小时
发表于 2019-11-27 08:43:45 | 显示全部楼层
不错的经验啊
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

新手入门

积分
4
金钱
4
注册时间
2019-11-28
在线时间
0 小时
发表于 2019-11-28 16:12:39 | 显示全部楼层
感谢分享
回复 支持 反对

使用道具 举报

0

主题

8

帖子

0

精华

新手上路

积分
22
金钱
22
注册时间
2019-11-15
在线时间
4 小时
发表于 2019-12-1 20:33:11 | 显示全部楼层
简单总结linux驱动程序开发学习步骤
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
3
金钱
3
注册时间
2019-12-2
在线时间
0 小时
发表于 2019-12-2 14:20:09 | 显示全部楼层
学习学习66666
回复 支持 反对

使用道具 举报

1

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
159
金钱
159
注册时间
2019-10-30
在线时间
17 小时
发表于 2019-12-2 17:43:47 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

0

主题

14

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
204
金钱
204
注册时间
2019-5-11
在线时间
99 小时
发表于 2019-12-4 13:28:58 | 显示全部楼层
谢谢谢谢谢谢
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

初级会员

Rank: 2

积分
53
金钱
53
注册时间
2019-11-27
在线时间
16 小时
发表于 2019-12-10 23:28:16 | 显示全部楼层
dddddddddddddddddddd
回复 支持 反对

使用道具 举报

0

主题

6

帖子

0

精华

新手上路

积分
38
金钱
38
注册时间
2015-4-19
在线时间
4 小时
发表于 2019-12-24 11:46:31 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2016-12-4
在线时间
7 小时
发表于 2019-12-24 14:54:19 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

3

主题

23

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2018-7-4
在线时间
17 小时
发表于 2020-1-8 08:56:25 | 显示全部楼层
哈哈哈哈哈哈哈哈哈哈或或
回复 支持 反对

使用道具 举报

0

主题

34

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
345
金钱
345
注册时间
2017-9-27
在线时间
126 小时
发表于 2020-1-14 11:12:23 | 显示全部楼层
6666666666666666666666666666666666666666666
回复 支持 反对

使用道具 举报

1

主题

25

帖子

0

精华

初级会员

Rank: 2

积分
110
金钱
110
注册时间
2018-8-14
在线时间
26 小时
发表于 2020-1-14 13:37:53 | 显示全部楼层
dingdingdingding
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
19
金钱
19
注册时间
2019-3-6
在线时间
5 小时
发表于 2020-1-15 11:06:07 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

0

主题

32

帖子

0

精华

初级会员

Rank: 2

积分
120
金钱
120
注册时间
2020-1-6
在线时间
20 小时
发表于 2020-1-17 10:56:48 | 显示全部楼层
谢谢分享,首先Linux基础要打牢,比如常用命令、参数使用等。
回复 支持 反对

使用道具 举报

0

主题

10

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
410
金钱
410
注册时间
2019-2-14
在线时间
32 小时
发表于 2020-1-19 15:06:53 | 显示全部楼层
努力學習中
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
14
金钱
14
注册时间
2019-9-10
在线时间
5 小时
发表于 2020-2-21 11:15:46 | 显示全部楼层
刚写楼主
回复 支持 反对

使用道具 举报

1

主题

3

帖子

0

精华

新手上路

积分
40
金钱
40
注册时间
2019-9-23
在线时间
12 小时
发表于 2020-2-24 23:04:13 | 显示全部楼层
关注一下
回复 支持 反对

使用道具 举报

1

主题

12

帖子

0

精华

新手上路

积分
48
金钱
48
注册时间
2020-1-18
在线时间
8 小时
发表于 2020-2-25 21:14:55 | 显示全部楼层
老哥,顶你一个
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-24 19:23

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表