kobject
A kobject is the fundamental building block of the Linux kernel's object model used for representing kernel objects in sysfs. It is a lightweight, reference-counted container that participates in a hierarchical tree under the /sys pseudo-filesystem. Each kobject carries a name and may have a parent; it is associated with a kset (a group of related objects) and a kobj_type that describes its attributes and behavior.
The kobject hierarchy reflects kernel subsystems and devices. The parent pointer forms the tree; kset groups
Lifetime management is based on reference counting. Users can increase or decrease the reference count via
Attributes and sysfs integration are achieved by declaring attributes with kobj_attribute structures and grouping them into
Usage-wise, kobjects are widely used by drivers and kernel subsystems to expose information and controls. A