devices_init
- [1. devices_init 函数](#1. devices_init 函数)
- [2. buses_init 函数](#2. buses_init 函数)
- [3. classes_init 函数](#3. classes_init 函数)
- [4. firmware_init 函数](#4. firmware_init 函数)
- [5. hypervisor_init 函数](#5. hypervisor_init 函数)
1. 函数
通过 kset_create_and_add 函数,创建
/sys/devices目录(即devices_kset)通过 kobject_create_and_add 函数,创建
/sys/dev目录(即dev_kobj)通过 kobject_create_and_add 函数,创建
/sys/dev/block目录(即sysfs_dev_block_kobj,该目录下会以符号链接形式列出所有设备,链接名为主次设备号)通过 kobject_create_and_add 函数,创建
/sys/dev/char目录(即sysfs_dev_char_kobj,该目录下会以符号链接形式列出所有设备,链接名为主次设备号)
2. buses_init 函数
通过 kset_create_and_add 函数,创建
/sys/bus目录(即bus_kset)通过 kset_create_and_add 函数,创建
/sys/devices/system目录(即system_kset)
3. classes_init 函数
- 通过 kset_create_and_add 函数,创建
/sys/class目录(即class_kset)
4. firmware_init 函数
- 通过 kobject_create_and_add 函数,创建
/sys/firmware目录(即firmware_kobj)
5. hypervisor_init 函数
.config配置文件中配置了CONFIG_SYS_HYPERVISOR,则通过 kobject_create_and_add 函数,创建/sys/hypervisor目录(即hypervisor_kobj)
.config配置文件中未配置CONFIG_SYS_HYPERVISOR,则什么都不做(一般不配置)
*[devices_init]: 在 sysfs 中创建三个关键的顶层目录和集合,为后续设备、总线和驱动的注册提供组织骨架



