数据结构论坛

首页 » 分类 » 问答 » 简述Linux设备树科技奥斯卡
TUhjnbcbe - 2023/10/15 16:03:00
设备树这个概念并不是一开始就具有的,它的出现是LinusTorvalds在年3月,对于kernel/arch/arm/plat-xxx和kernel/arch/arm/mach-xxx含有大量的描述板级细节的代码,针对这种现象提出了设备树(Devicetree)的概念。设备树其实就是描述硬件的数据结构,可以将很多硬件信息直接传递给Linux,省去了内核大量的冗余代码。设备树含有的节点和属性描述的信息主要有时钟、中断、GPIO控制器,外设连接情况,总线,内存基地址等等。Linux设备树主要由DTS、DTC、DTB等几个文件格式组成。DTS文件是一个以ASCII文本格式为主要描述语言的设备树。一个.dts对应一个ARM设备,类似于C语言的.C文件。由于设备较多此时共用的部分提取成为.dtsi,类似于C语言的头文件,他们可以相互包含。DTC说白了就是将.dts编译为.dtb的工具。类似于C语言的编译器VC++。DTB是经过DTC编译后的二进制格式的设备树描述,类似于C语言编译生成的HEX文件。总而言之,设备树的出现大大减少了Linux的代码,去其糟粕,取其精华,让内核相关代码更加简洁易懂。这样更像人类的发展历程波浪式前进,螺旋式上升。
1
查看完整版本: 简述Linux设备树科技奥斯卡