linux 驱动真的很难吗?Linux驱动和裸机的驱动有什么区别?那个更难?

linux 驱动真的很难吗?Linux驱动和裸机的驱动有什么区别?那个更难?,第1张

Linux驱动和裸机驱动(例如安卓系统)没什么区别,因为都是用的Linux的内核;硬要说区别,那应该是不同芯片之间的个性化的差异,但都是在同一个框架下修修补补,基本上弄懂一个,其他的也就能了解个十之八九了。要说Linux驱动难不难,这要看你是否下定决心想学,了解汇编(基本上不会用,但有的项目非它不可)、精通C语言(达不到要求就努力达到要求,求!!!),掌握C++(做驱动的有时候需要弄中间层,这部分全是C++)、学好数据结构、英语能有多好有多好,实在太low过火那就自求多福吧!!!有以上基础后还需要会看电路图,会用万用表和示波器,这些是你调试过程中的好伙伴。目前学习驱动的书太多了,但是国内的话韦东山老师的《嵌入式linux应用开发完全手册》比较不错,最主要的是他的视频讲得很nice。有前辈带着做项目的话进步会很快,要是既没项目又没人带那就静下心来慢慢学,坚持就是胜利。如果还在学校得话那就多花点时间学一下,多问问老师,恋爱必须要谈,至于游戏什么的消遣一下就OK了。

看格式,如果是自己开发的驱动,就是****.ko格式

使用如下指令挂载:

insmod ****.ko

如果是官方提供的,常见有两种,一种是可执行的(在linux终端下绿色,用ll看,该文件有x属性),直接到那个目录下执行

./****.bin

如果是gz,很可能需要编译和安装,那个就是

./configure

make

make install

inux的驱动一般有两种格式,分别为:tar和rpm格式。

rpm安装步骤:

1.将驱动程序文件bcm5700-.src.rpm复制到一个临时目录中,并在此目录中运行以下命令

rpm –ivh bcm5700-.src.rpm

2.运行以下命令切换到驱动目录中:

cd /usr/src/redhat/SPECS/

3.此目录中会生成一个名字为bcm5700.spec的文件,运行以下命令对驱动程序进行编译:

rpmbuild –bb bcm5700.spec (对4.x.x版本的RPM适用)或 rpm -bb bcm5700.spec

4.运行以下命令切换到RPM目录中:

cd /usr/src/redhat/RPMS/i386/

5.运行以下命令安装驱动程序:

rpm –ivh bcm5700-.i386.rpm (对于Red Hat 7.2, 7.3, 2.1AS和其他包含老版本驱动的系统需要使用--force的参数,强制用新的驱动替换系统自带的老版本驱动)

6.运行以下命令加载驱动模块:

insmod bcm5700

7.运行kudzu命令,系统会自动搜索到硬件,进行配置即可。

或者重新启动系统,启动过程中系统会自动找到硬件,进行相应配置即可。

tar格式安装步骤:

1. 将驱动程序压缩文件bcm5700-.tar.gz复制到一个临时目录中,并使用以下命令解压缩:

tar xvzf bcm5700-.tar.gz

2.构建驱动程序为运行内核可加载模块

cd bcm5700-/src

make

3.加载测试

insmod bcm5700

4.加载驱动程序

make install

5.重新启动系统,启动过程中找到硬件,进行相应配置。

或者直接运行kudzu命令,系统会自动搜索到硬件,进行配置即可。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8781599.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-21
下一篇2023-04-21

发表评论

登录后才能评论

评论列表(0条)

    保存