易截截图软件、单文件、免安装、纯绿色、仅160KB

Linux内核设备模型(4)

译者:郭少悲
2009/12/02
原文:linux/Documentation/driver-model/class.txt
设备类
介绍
~~~~
一个设备类描述了一类的设备,例如语音设备或者网络设备。下面是已定义的设备类:
<Insert List of Device Classes Here>
每个设备类定义了一套语法和设备遵循的编程接口。设备驱动就是为特定总线上的
特定设备而完成的这套编程接口实现。
对于一个设备驻足在哪个总线上,设备类是不可知的。
编程接口
~~~~~~~~
设备类的数据结构如下:
typedef int (*devclass_add)(struct device *);
typedef void (*devclass_remove)(struct device *);
struct device_class {
    char            * name;
    rwlock_t        lock;
    u32            devnum;
    struct list_head    node;
    struct list_head    drivers;
    struct list_head    intf_list;
    struct driver_dir_entry    dir;
    struct driver_dir_entry    device_dir;
    struct driver_dir_entry    driver_dir;
    devclass_add        add_device;
    devclass_remove        remove_device;
};
一个典型的设备类类似如下定义:
struct device_class input_devclass = {
        .name        = "input",
        .add_device    = input_add_device,
    .remove_device    = input_remove_device,
};
每个设备类数据结构放在一个头文件里导出,因此它能够被驱动,扩展程序和接口
使用。
内核里设备类的注册和注销函数接口如下所示:
int devclass_register(struct device_class * cls);
void devclass_unregister(struct device_class * cls);
设备
~~~~
当设备绑定到驱动上,它就会被添加


相关文档:

Linux wc命令详解

wc命令
  wc命令的功能为统计指定文件中的字节数、字数、行数, 并将统计结果显示输出。
  语法:wc [选项] 文件…
  说明:该命令统计给定文件中的字节数、字数、行数。如果没有给出文件名,
则从标准输入读取。wc同时也给出所有指定文件的总统计数。字是由空格字符区分开的最大字符串。
  该命令各选项 ......

使用 Java 对 Linux 下文件编码格式进行批量转换

使用 Java 对 Linux 下文件编码格式进行批量转换
        测试使用说明:
        1。将 字符集编码格式为 GB2312 的文件 test0.java,test1.java,test2.java 放在 /home/defonds/tmp/test 目录下(test0.java,test1.java,test2.java 作者可以 ......

Linux操作系统下关于Top命令的参数详解

Top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。下面详细介绍它的使用方法。
top - 01:06:48 up  1:22,  1 user,  load average: 0.06, 0.60, 0.48
Tasks:  29 total,   1 running,  28 sleeping,   0 stopp ......

Linus为什么不用C++写Linux内核?

在最近的一个关于LKML的讨论中,Linus给出了为什么不用C++来写Linux内核的理由:
"In fact, in Linux we did try C++ once already, back in 1992. It sucks. Trust me - writing kernel code in C++ is a BLOODY STUPID IDEA.
“事实上,我们曾经尝试过用C++来写,是在1992年的时候。很糟糕。相信我--用C++来写内核 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号