首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何开始编写驱动程序?

如何开始编写驱动程序?
EN

Unix & Linux用户
提问于 2012-09-07 07:00:01
回答 1查看 704关注 0票数 22

我有一台扔掉的廉价笔记本电脑,我想四处转转,一台Thinkpad SL 500。

困扰我的是两个leds,一个是无线连接的,另一个是休眠的,它们一点也不亮,虽然它们有功能,但我已经在windows上试过了。

所以我想为他们编写一个内核驱动程序,没什么大不了的,它只是一个好主意来玩一下内核。

我的问题是,我应该系统地找出哪些设备负责这些leds (一般来说,不一定是我的硬件专用的),以及其他两个工作leds、蓝牙和电池指示灯的驱动程序是什么?

当我说方法论的时候,我指的是方法,一步一步地,每一步都有理由,就像我在这里给其他人的答案一样:在虚空中&&意味着什么?*P=&&;

我热衷于使用静态代码分析器& co,在大型代码库中大量使用,但我认为缺乏硬件知识阻碍了我解决这个问题。

PS:我正在使用ArchLinux,所以几乎是最新的内核版本。

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2012-11-10 11:06:33

我应该系统地遵循什么方法来找出哪些设备对这些LED负责?

理想情况下,您应该找到(开放的)内核操作系统的源代码,您的笔记本电脑LED正在工作,然后您可以评论一个一部分的内核,直到您找到代码,负责LED(并有一些系统冻结这样做,但这是有趣的部分)。

如果LED不能在Linux上工作,而且你不知道哪个硬件在其他操作系统上驱动它们,你认为你会怎么写一个驱动程序呢?

恐怕这是任何人都能给出的最好的答案,这使你(几乎)没有比以前更聪明的了。只要指出你需要找出你到底有哪些硬件,才能做更多的事情。

为了得到更多的帮助,有两个提示:

  1. 其中一个常用的IDE或SATA芯片是英特尔的系列ICHX或ICHXr (ICH5,ICH6,ICH7 )。或ICH6R,ICH7R,.)
  2. Linux内核目录是控制大量发光二极管的源代码所在

我也会给你第三个指针,但正如这只猩猩在上面写的,我可以重复一遍:Linux设备驱动程序,第三版,PDF格式,免费。

票数 6
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/47439

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档