linux设备树

  • Post author:
  • Post category:linux


1,概念:

因为linux内核下硬件信息文件过多,如果硬编码进入Linux内核中,会导致linux内核平冗余代码或多,内核过大,故引入了powerpc等架构的模式,将描述硬件信息的内容都从Linux内核中分离出来,用专属的文件格式来描述,这个专属文件就是设备树。Device Tree

2,工作过程:

系统上电后,bootloarder引导内核启动,linux内核启动后,bootloader会将设备树传递给linux内核,内核通过解析设备树文件,并将解析到的硬件资源信息绑定到相应的设备中。

3,设备树的组成及结构:

.dts:设备树的源码文件

.dtb:是将设备树.dts源码编译后得到的二进制文件

.dtsi:设备树的一些公用部分,类型与c语言的头文件

DTC:是将.dts文件编译为.dtb问及那所用的工具,在linux内核的scipts/dec/目录下

dts的存储结构:

设备树的基本单元是node,node组成设备树的结构,每个设备树都只有一个根节点,根节点和node组成了一个红黑树,红黑树表示所有的硬件类别,每个node节点都是一个链表,存储的是硬件的信息。



版权声明:本文为m0_49829964原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。