QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 718|回复: 5

关于设备文件

[复制链接]
发表于 2005-6-6 20:12:14 | 显示全部楼层 |阅读模式
我在查看/dev中的设备文件的时候,发现里面的文件大小全是0,

请问这是怎么回事?
发表于 2005-6-6 20:17:52 | 显示全部楼层
设备文件只是访问驱动的一个虚拟节点,内核会自动把对设备文件的访问转换成对驱动的调用。

所以设备文件不是真正的文件。
回复

使用道具 举报

 楼主| 发表于 2005-6-6 21:11:08 | 显示全部楼层
那怎样知道一个设备文件的驱动调用函数有哪些呢?比如说网卡驱动
回复

使用道具 举报

发表于 2005-6-6 21:58:12 | 显示全部楼层
网卡驱动不是通过设备文件访问,而是socket调用。

设备文件就是提供了那种像访问文件一样的访问方法

例如你可以
fd = open ("/dev/fd01"...
read(fd,...
write(fd,...

说白了就是把设备看成一个固定尺寸的文件,也就是
说一般只有磁盘那样的块设备可以做成设备文件。
回复

使用道具 举报

发表于 2005-6-7 13:17:33 | 显示全部楼层
不同意上楼的意见

说白了就是把设备看成一个固定尺寸的文件,也就是
说一般只有磁盘那样的块设备可以做成设备文件。

设备文件是虚拟文件系统的节点,虚拟文件系统负责把文件系统调用如open,read,write等转换为和这个设备文件的设备号对应的注册了的驱动程序的相应操作

设备文件root是可以随便创建的
至于有没有设备驱动则是另外一回事了
回复

使用道具 举报

发表于 2005-6-7 13:18:40 | 显示全部楼层
windows好像也是这样的吧
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-11-5 21:36 , Processed in 0.048538 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

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