共 8 篇文章 |
|
class_create()-------------------------------------------------linux-2.6.22/include/linux/device.hstruct class *class_create(struct module *owner, const char *name) class_create - create a struct class structure @owner: pointer to the module that is to "own" this struct class @name: pointer to a str... 阅107 转2 评0 公众公开 13-05-02 18:27 |
uevent分析(转载)1.kobject, ktype, kset.int (*uevent)(struct kset *kset, struct kobject *kobj, struct kobj_uevent_env *env);比如,device_add函数中,会调用kobject_uevent(&dev->kobj, KOBJ_ADD); 这里kobj是发消息的kobj,KOBJ_ADD是发出的事件。int kobject_uevent(struct kobject *kobj, enum kobject_action action)dev_... 阅169 转1 评0 公众公开 13-05-02 17:44 |
BUS_ATTR(_name,_mode,_show,_store)/*这个宏声明一个结构,将bus_attr_作为给定_name 的前缀来创建总线的真正名称*//*总线的属性必须显式调用bus_create_file 来创建:*/int bus_create_file(struct bus_type *bus, struct bus_attribute *attr); /*删除总线的属性调用:*/void bus_remove_file(struct bus_type *bus, struct bus_attribute *at... 阅260 转2 评0 公众公开 13-05-02 11:49 |
总线、设备和驱动之间关系现在的人都知道,三角关系很难处。比如系统初始化的时候,会扫描连接了哪些设备,并为每一个设备建立起一个structdevice 的变量,每一次有一个驱动程序,就要准备一个structdevice_driver 结构的变量。换句话说,把structdevice 中的structdevice_driverdriver 指向这个驱动,而struct device_driver driver 把... 阅1410 转9 评1 公众公开 13-04-16 15:43 |
Kconfig 和 Makefile.首先我们来学习什么Makefile,什么是Kconfig ,什么是.config.其中第一行obj-y 中的y表示编译进内核,而obj-$(CONFIG_LEGACY_PTYS) 中CONFIG_LEGACY_PTYS则表示一个变量,类似于我们C语言中的变量,用$( )来表示,它一般可以取三种值y ,m ,n.y表示。类似于# CONFIG_SERIAL_NONSTANDARD is not set,当我们输入make时,根... 阅335 转4 评0 公众公开 13-04-15 18:49 |
Linux 内核中常出现的、主要的 GCC 扩展。GCC 把包含在括号中的复合语句看作是一个表达式,称为语句表达式,它允许在。而内核则使用语句表达式将其定义为:结构的最后一个元素 usb_host_interface altsetting[0]就是 GCC 所谓的零长度数组,42 const struct file_operations ext2_file_operations = {48 .ioctl = ext2_ioctl,将结构 ext2_f... 阅195 转0 评0 公众公开 13-04-15 15:52 |
内核源码目录结构。所有与体系结构相关的代码都在这个目录以及 include/asm-*/目录中,Linux 支持。的每种体系结构在 arch 目录下都有对应的子目录,而在每个体系结构特有的子目录下。编译内核时,系统会建立一个从 include/asm 目录到目标体系结构特有的目录的符。体系结构无关部分的内核代码可以使用如下形式包含体系相关部分的头文件。包含... 阅227 转2 评0 公众公开 13-04-15 14:26 |
进程管理部分实现了一个进程世界的抽象,这个进程世界类似于我们的人类世界,只不过我们人类世界里的个体是人,而在进程世界里则是一个一个的进程,人与人之间通过书信、手机、网络等进行交互,而各个进程之间则是通过不同方式的进程间通信,我们所有人都在分享同一个地球,而所有进程都在分享一个或多个 CPU。每个特定体系结构对应的子目录又... 阅122 转4 评0 公众公开 13-04-15 12:08 |