九鼎创展论坛中文版English
登录 | 立即注册 设为首页收藏本站 切换到宽版
查看: 5315|回复: 1
打印 上一主题 下一主题

x4412&ibox项目实战22-devfs设备文件系统

[复制链接]
跳转到指定楼层
楼主
发表于 2014-9-27 11:56:58 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
devfs,也叫设备文件系统(DeviceFilesystem),设计它的唯一目的就是提供一种更理性的方式管理位于/dev的所有块设备和字符设备。典型的/dev树包含数百个块特殊文件和字符特殊文件,它们全都在根文件系统上。每个特殊文件都可以让用户空间进程轻松地与内核设备实现交互。这种文件管理方式,相对linux2.4之前的操作系统,是一种革新。它具有以下优势:
l  可以通过程序在设备初始化时在/dev目录下创建设备文件,卸载设备时将它删除。
l  设备驱动程序可以指定设备名、所有者和权限位,用户空间程序仍可以修改所有者和权限位。
l  不再需要为设备驱动程序分配主次设备号,在程序中可以通过register_chrdev()devfs_register()函数自动分配主次设备号。
驱动程序可通过下面的函数来进行设备文件的创建和删除工作:
  1. /*创建设备目录*/
  2. devfs_handle_t devfs_mk_dir(devfs_ handle_t dir, const char *name, void *info);
  3. /*创建设备文件*/
  4. devfs_handle_t devfs_register(devfs_handle_t dir, const char *name,unsigned int flags, unsigned int major, unsigned int minor, umode_t mode, void *ops, void *info);
  5. /*撤销设备文件*/
  6. void devfs_unregister(devfs_handle_ t de);
复制代码
通常会在模块加载和卸载函数中创建和撤销设备文件,在下一章节我们将会以LED驱动为例,讲解devfs设备文件系统的编写。
回复

使用道具 举报

沙发
发表于 2015-9-16 15:47:56 | 只看该作者
devfs,也叫设备文件系统(DeviceFilesystem),设计它的唯一目的就是提供一种更理性的方式管理位于/dev的所有块设备和字符设备。
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|手机版|小黑屋|深圳市九鼎创展科技官方论坛 ( 粤ICP备11028681号-2  

GMT+8, 2024-11-23 21:44 , Processed in 0.018374 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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