开始学习LDD3咯-Hello World

这篇博客记录了作者在学习Linux驱动时构建和运行Hello World模块的过程。作者提到,无需额外安装内核源码,因为发行版自带了内核构造系统。内核构造系统包含Makefile、Kconfig和头文件,用于编译内核和模块。作者还分享了自己的Makefile,并简单介绍了/proc文件系统作为访问内核数据和设置的接口。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 


作者:Aningsk ,本作品采用知识共享署名-非商业性使用-相同方式共享 3.0 未本地化版本许可协议进行许可。 

嗯嗯,昨天看完了第二章构造和运行模块,虽然主要是学了一个Hello world,但也记录一下吧。

只是个人记录哈~参考价值极为有限。。。

一开始不知道这个hello_mod.c要写在哪里呢~以为要下载一份Linux源代码,然后如书中所说的安装到自己的系统中去,可是没有说明怎么安装Linux源码啊。。。后来发现这其实没有我想象的那么麻烦。在自己的系统中可以不用另外安装一个内核源码的,发行版自己带有“内核构造系统”,书中所说的安装一套源码是因为发行版可能改过东西,原版的内核并不是必须的;即使安装了一套内核,用到的也只是它的“内核构造系统”。

那什么是“内核构造系统”?我个人的理解就是编译内核及其相关的模块时,用到的那一层层的Makefile、Kconfig和茫茫多的内核头文件。前面提到我们自己在用的发行版已经有了这个东西,它所在的路径是/lib/modules/3.13.0-32-generic/build/。里面的样子就是内核源码的样子,但没有C的源码只有一层层的Makefile、Kconfig和茫茫多的内核头文件。(当然“3.13.0-32-generic”不同版本是不同的)

写helloworld模块也不用在特定的目录里写,找个自己喜欢的合适的地方就可以。如~/LDD3study/hello/

 上面这幅图是我写的(或者说是抄下来的,嘿嘿)。首先是两行头文件,是每个模块基本都要有的。呃……这就不用多说了吧,LDD3上都有说明。

还有Makefile,LDD3刚刚给出hellowo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值