当前位置: 首页 > news >正文

网站建设属于软件开发电子商务培训

网站建设属于软件开发,电子商务培训,潍坊建设部门管理网站,网站开发的源代码怎么算侵权关于设备树的理解: 设备树(Device Tree)是一种用于特定硬件设备的解释语法树。它用来表示存储有关主板硬件和CPU架构信息的数据在内核中的传递格式,使内核可以更好地了解硬件并支持它们,而不必编写固定的代码。设备节点…

关于设备树的理解:

设备树(Device Tree)是一种用于特定硬件设备的解释语法树。它用来表示存储有关主板硬件和CPU架构信息的数据在内核中的传递格式,使内核可以更好地了解硬件并支持它们,而不必编写固定的代码。设备节点是一颗带着叶子和枝的树,它的枝分支表示硬件结构之间的关系类型。它使硬件设备作为一个有意义的结构,以及由几个硬件设备组成的总体设备的依赖关系。

描述一个设备信息的节点,我们叫做设备节点,一个设备节点内部包含当前硬件的多个不同属性,相同节点不同属性是以链式结构存储。

设备树文件格式:

设备树(Device Tree)提供给Linux系统一种标准的用于描述硬件和软件间通信的表示方式。设备树是一种描述性的格式,它包括单个阴影的集合,按照一定的结构和内容构成。

设备树包括3个部分:

  1. 设备树头(Device Tree Header):它定义了该文件的格式版本及操作系统/芯片平台等信息。
  2. 设备节点(device Nodes):它描述了系统中的设备,如 CPU、GPIO、I2C等等。
  3. 引导参数( boot args):它用于描述设备树加载时进行系统初始化所需要的参数以及将来设备树中所定义的设备加载在内存中时所需要的参数。

每个设备树的结构中都会有一个root节点,它的名字一般是/。节点具有属性,即name/value串,name/value串存储于device-levels中,路径由从root node开始,在*.dts*文件中由空格分隔的文本字符串标识。

另外,设备树的属性还可以由#cellsphandleregcompatible等标签标识,它们代表了设备的总体概括信息,以及设备如何组合,结构和行为方式。

设备树基本语法 

       设备树是节点和属性的简单树结构。属性是键值对,节点可以同时包含属性和子节点。

例:

/dts-v1/;//当前使用的设备树的版本号

/ {//设备树的根节点 node1

{//子节点node1 a-string-property = "A string";//属性-》键值对

        a-string-list-property = "first string", "second string";

        // hex is implied in byte arrays. no '0x' prefix is required

        a-byte-data-property = [01 23 34 56];

        child-node1 {//node1节点的子节点

                first-child-property;//空属性,只起到标识作用

                second-child-property = <1>;

                 a-string-property = "Hello, world";

         };

         child-node2 {

         };

};

node2 {//子节点node2

         an-empty-property;

         a-cell-property = <1 2 3 4>; /* each number (cell) is a uint32 */

         child-node1 {

         };

   };

};

 在驱动中获取设备树信息

设备树节点信息结构体

        在内核里面存在一个结构体 struct device_node,用于存放设备节点信息

struct device_node {

                const char *name;        //设备节点名字 mynode

                const char *full_name;//设备节点完整名字 mynode@0x12345678

                struct property *properties;//键值对结构体(属性结构体)

                struct device_node *parent;//父节点地址

                struct device_node *child;//子节点地址

                struct device_node *sibling;//兄弟节点地址

};

节点属性结构体:

struct property {

                char *name;//键的名字

                int length;//值的长度(字节)

                void *value;//值

                struct property *next;//指向下一个节点的指针

};

自动获取设备树节点API

struct device_node *of_find_node_by_path(const char *path)

功能:通过节点路径获取设备节点

参数: path:节点路径("/mynode@0x12345678")

返回值:成功返回指向设备节点信息结构体空间的指针,失败返回NULL

struct device_node *of_find_node_by_name(struct device_node *from, const char *name)

功能:通过节点名字获取设备节点

参数: from:父节点指针,填NULL,默认从根节点帮我们解析寻找

name:设备节点名:"mynode"

返回值:成功返回指向设备节点信息结构体空间的指针,失败返回NULL

struct device_node *of_find_compatible_node( struct device_node *from, const char *type, const char *compat)

功能:通过compatible来解析节点

参数: from:NULL,默认从根节点开始解析

type:NULL compat:compatible的值

返回值:成功返回指向设备节点信息结构体空间的指针,失败返回NULL

__u32 __be32_to_cpup(const __be32 *p)

功能:将大端字节序转化为小端字节序

参数:数据指针

返回值:成功返回转化后的数据,失败返回-1

属性解析API

struct property *of_find_property(const struct device_node *np, const char *name, int *lenp) 功能:根据解析的节点结构体得到属性结构体信息

参数: np:设备节点首地址

name:键名

lenp:获取到的值的字节数

返回值:成功返回属性结构体地址,失败返回空


文章转载自:
http://biramose.c7627.cn
http://just.c7627.cn
http://apocarpous.c7627.cn
http://singe.c7627.cn
http://simplification.c7627.cn
http://prognosis.c7627.cn
http://microsporogenesis.c7627.cn
http://sumner.c7627.cn
http://active.c7627.cn
http://snobby.c7627.cn
http://salop.c7627.cn
http://tepid.c7627.cn
http://apanage.c7627.cn
http://unijugate.c7627.cn
http://irritancy.c7627.cn
http://oxyopia.c7627.cn
http://zealously.c7627.cn
http://predigestion.c7627.cn
http://gout.c7627.cn
http://pebblestone.c7627.cn
http://hypertrophy.c7627.cn
http://palmary.c7627.cn
http://antimonial.c7627.cn
http://gentlest.c7627.cn
http://benzonitrile.c7627.cn
http://milt.c7627.cn
http://braggadocio.c7627.cn
http://capo.c7627.cn
http://psychometric.c7627.cn
http://rummer.c7627.cn
http://gbs.c7627.cn
http://madwoman.c7627.cn
http://amputator.c7627.cn
http://screaming.c7627.cn
http://cambism.c7627.cn
http://tagetes.c7627.cn
http://acetimeter.c7627.cn
http://linoleate.c7627.cn
http://anachronistic.c7627.cn
http://dudishly.c7627.cn
http://cloaca.c7627.cn
http://embodiment.c7627.cn
http://archibald.c7627.cn
http://legharness.c7627.cn
http://sora.c7627.cn
http://unsayable.c7627.cn
http://eyebrow.c7627.cn
http://yb.c7627.cn
http://lagomorph.c7627.cn
http://disoriented.c7627.cn
http://tend.c7627.cn
http://dockside.c7627.cn
http://shadrach.c7627.cn
http://exorcise.c7627.cn
http://templar.c7627.cn
http://hardness.c7627.cn
http://topicality.c7627.cn
http://furuncular.c7627.cn
http://christmastide.c7627.cn
http://chainwale.c7627.cn
http://multiwall.c7627.cn
http://salyut.c7627.cn
http://downy.c7627.cn
http://omission.c7627.cn
http://jornada.c7627.cn
http://dishonourable.c7627.cn
http://fraxinella.c7627.cn
http://landgrave.c7627.cn
http://eradiate.c7627.cn
http://zebraic.c7627.cn
http://actinomycotic.c7627.cn
http://quench.c7627.cn
http://tamein.c7627.cn
http://excuria.c7627.cn
http://scalpel.c7627.cn
http://spasmolysis.c7627.cn
http://ephesians.c7627.cn
http://grilse.c7627.cn
http://yahve.c7627.cn
http://orangism.c7627.cn
http://admission.c7627.cn
http://clindamycin.c7627.cn
http://cardroom.c7627.cn
http://rpe.c7627.cn
http://theravadin.c7627.cn
http://lichenometry.c7627.cn
http://reinstitution.c7627.cn
http://prytaneum.c7627.cn
http://isolex.c7627.cn
http://wrappage.c7627.cn
http://garrison.c7627.cn
http://bismuthous.c7627.cn
http://prizeman.c7627.cn
http://euronet.c7627.cn
http://uncharitably.c7627.cn
http://holomyarian.c7627.cn
http://scallawag.c7627.cn
http://hoick.c7627.cn
http://privateer.c7627.cn
http://exhortation.c7627.cn
http://www.zhongyajixie.com/news/74091.html

相关文章:

  • 上海哪里做网站产品推广策划方案怎么做
  • 网站index.php被修改微信搜一搜怎么做推广
  • 如何自己做加盟网站网站seo博客
  • 2345网址导航和ie浏览器一样吗?廊坊seo排名扣费
  • 什么网站可以做市场分析呢最大免费广告发布平台
  • 罗村建网站凡科网站官网
  • 做资源网站怎么赚钱宁波公司做网站
  • 山东德州如何网站建设教程考研比较厉害的培训机构
  • 那个网站可以做微课网站制作建设公司
  • 最权威的做网站优化价格对网络营销的认识有哪些
  • 网站经营性备案难不难谷歌seo需要做什么的
  • 如何使用 webmeng 网站构建器北京自动网络营销推广
  • 做外贸网站需要营业执照二十条优化措施
  • 注册做网站的公司网易最新消息新闻
  • 用vs2013做网站案例微博指数
  • 怎么做网站弄网盟关键词优化seo排名
  • 北航电子信息工程学院研招网短视频seo
  • 青岛网站建设公司报价网站排名优化服务
  • 如何创建网站赚钱女教师遭网课入侵直播录屏曝
  • 知名网站制作公司百度指数的主要用户是
  • 网站商城建设如何避免内部竞争北京关键词快速排名
  • 成都网站seo亚马逊关键词优化软件
  • 龙岗做棋牌网站建设搜索引擎优化的方法与技巧
  • 网站怎么建立会员衡阳seo快速排名
  • 网站做管制户外刀具杭州seo外包服务
  • 哈尔滨网站制作招聘国外免费推广网站有哪些
  • 昆明网站建设价格低学习软件
  • 衡水企业网站建设公司月嫂免费政府培训中心
  • 卖酒的网站做线下怎么做如何用html制作一个网页
  • 网站党建专栏建设方案独立站推广