请问/dev下的device file比如fd1, hd1,这些文件是怎么做成的,它里面的内容又是些什么呢

panpanf1 2009-03-31 01:21:08
最近在看0.11的代码,但是书里面并没有说这些内容
...全文
142 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
panpanf1 2009-04-22
  • 打赏
  • 举报
回复
up
panpanf1 2009-04-17
  • 打赏
  • 举报
回复
up
allanqyz 2009-04-09
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 daotiansi 的回复:]
文件的内容其实是一些特殊的数据结构(哈希链表等),指向特定的驱动设备文件函数。
你对文件的操作其实是通过地址指针的转移直接调用了驱动程序中的相应函数
[/Quote]
mknod name 设备类型 主设备号 从设备号
panpanf1 2009-04-08
  • 打赏
  • 举报
回复
up
panpanf1 2009-04-06
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 daotiansi 的回复:]
文件的内容其实是一些特殊的数据结构(哈希链表等),指向特定的驱动设备文件函数。
你对文件的操作其实是通过地址指针的转移直接调用了驱动程序中的相应函数
[/Quote]
你的回复太棒了,能再多讲些么?你说的这些知识在哪本书或者哪个文档里能看到呢?
daotiansi 2009-04-05
  • 打赏
  • 举报
回复
文件的内容其实是一些特殊的数据结构(哈希链表等),指向特定的驱动设备文件函数。
你对文件的操作其实是通过地址指针的转移直接调用了驱动程序中的相应函数
panpanf1 2009-03-31
  • 打赏
  • 举报
回复
你说这些我懂,只是这些文件的内容是什么呢?
hefuhua 2009-03-31
  • 打赏
  • 举报
回复
/dev下的device file比如fd1, hd1,这些文件是怎么做成的,它里面的内容又是些什么呢

//这个dev表示设备文件的目录,fd1,hd1这些都是软硬盘接口,如windows的就是a,b,c,b盘符号,linux这些所有的外设备
统一接口都做成文件了,应该说成特殊文件
CrazyJeff_Liu 2009-03-31
  • 打赏
  • 举报
回复
哈哈, 你的分太可怜,估计没人愿意解答
设备树(device tree)机制是Linux内核从linux-3.x版本开始引进的一种机制,目的是解决内核源码的arch/arm目录下代码混乱的问题:随着ARM生态的快速发展,在内核源码的arch/arm目录下,存放着几十种arm芯片和几百个开发板相关的源文件,很多开发板和处理器的中断、寄存器等相关硬件资源都在这个目录下以.c或.h的文件格式定义。而对于内核来说,与这些硬件耦合,会导致内核代码混乱不堪,每个开发板上运行的内核镜像都必须单独编译配置,无法通用。什么时候Linux内核能像Windows镜像那样,无论你的电脑什么配置,一个Windows安装包,都可以直接下载安装运行呢?设备树机制,实现了Linux内核和硬件平台的解耦:每个硬件平台的硬件资源使用一个设备树文件(xxx.dts)来描述,而不是在arch/arm下以.c 或 .h 文件来定义。Linux内核是一个通用的内核,在启动过程中,在通过解析设备树中的硬件资源来初始化某个具体的平台。 引入设备树后,很多和内核驱动开发的工作也发生了变化:以往驱动工程师关注的头文件宏定义、寄存器定义,现在这些基本上不用关注,关注的重点则转向了如何根据硬件平台去配置和修改设备树文件。很多驱动的编程接口也发生了变化,开始慢慢使用device tree提供的编程接口去开发驱动。本期课程主要面向嵌入式开发人员,分享Linux下驱动开发所需要的设备树知识和必备技能

4,417

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧