kobject即kernel object,内核对象。
kobject在内核中是一个结构体
在/sys目录下全是kobject
struct kobject {
const char *name;
struct list_head entry;
struct kobject *parent;
struct kset *kset;
struct kobj_type *ktype;
struct kernfs_node *sd; /* sysfs directory entry */
struct kref kref;
#ifdef CONFIG_DEBUG_KOBJECT_RELEASE
struct delayed_work release;
#endif
unsigned int state_initialized:1;
unsigned int state_in_sysfs:1;
unsigned int state_add_uevent_sent:1;
unsigned int state_remove_uevent_sent:1;
unsigned int uevent_suppress:1;
};
设备,驱动,总线,类
- 设备:struct device
- 驱动:struct device_driver
- 类:struct class ,会在/sys/class/xxx_class
- 总线:struct bus