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

如何将vs做的网站备份出来6谷歌建站

如何将vs做的网站备份出来6,谷歌建站,山东响应式网站建设,河北建设工程信息网招标公告唐县目录 1、概述 2、节点#xff08; node#xff09;和属性#xff08; property#xff09; 2.1、DTS 描述键值对的语法#xff1a; 2.2 节点语法规范说明 2.3节点名及节点路径 2.4 节点别名#xff08;节点引用#xff09; 2.5 合并节点内容 2.6 替换节点内容 2…目录 1、概述 2、节点 node和属性 property 2.1、DTS 描述键值对的语法 2.2 节点语法规范说明 2.3节点名及节点路径 2.4 节点别名节点引用 2.5 合并节点内容 2.6 替换节点内容 2.8 chosen 节点 2.9 查找节点 2.10 查找办法 3 节点描述 3.1 节点属性 1、概述 设备树 Device Tree是一种描述硬件的数据结构在操作系统 OS引导 阶段进行设备初始化的时候数据结构中的硬件信息被检测并传递给操作系统 最早诞生于 Open Firmware Flattened Device Tree (FDT)格式标准。  dts 文件 Device Tree Source dts是以 ASCII 文本形式描述设备树内容。  dtb 文件是二进制格式编译工具为 Device Tree Compiler DTC。  2011 年被引入 ARM Linux 内核。 ARM Linux 设备树描述了内核的软/硬件信息。 2、节点 node和属性 property 节点用以归类描述一个硬件信息或是软件信息好比文件系统的目录      节点内描述了一个或多个属性属性是键值对 key/value描述具体的 软/硬信息。 为什么 ARM Linux 社区会引入设备树呢     主要是想解决 ARM Linux 内核代码冗余的问题。 2.1、DTS 描述键值对的语法 1、字符串信息  2、 32bits 无符号整型数组信息  3、二进制数数组  4、混和形式  5、字符串哈希表 /dts-v1/; #include exynos4412.dtsi //此设备树依赖于exynos4412.dtsi 文件 #include dt-bindings/gpio/gpio.h //gpio引脚配置文件 / { //根节点 root nodemodel FriendlyARM TINY4412 board based on Exynos4412;compatible friendlyarm,tiny4412, samsung,exynos4412, samsung,exynos4;chosen {stdout-path serial_0; }; 2.2 节点语法规范说明 节点名: 语法 name[unit-address] 规范 名字是ASCII字符串 (字母、数字、 -、等等构成 最长可以是31个字符一般的应该以设备类型命名 unit-address一般的是设备地址 /*****示例*****/ /{serial101F0000{……};gpio101F3000{……};interrupt-controller10140000{……};spi10115000{…….};external-bus{……}; }; 2.3节点名及节点路径 /{…dm9000{…};… }; 节点名:dm9000 节点路径:/dm9000 2.4 节点别名节点引用 为了解决节点路径名过长的问题引入了节点别名的概念可以引用到一个全路径的节点 /{aliases{demodemo0;};…demo:demo080000000{…};… }; 节点名:demo0 节点路径:/demo080000000 节点别名:demo(等价/demo080000000)/**********************************/ 引用语法范例1: demo{… }; 引用语法范例2: /{reference-node{propertydemo;…};… }; 2.5 合并节点内容 一般的 一个硬件设备的部分信息不会变化但是部分信息是可能会变化的就出现了节点内容合并。即先编写好节点仅仅描述部分属性值使用者后加一部分属性值。在同级路径下节点名相同的“两个”节点实际是一个节点。 /{node{propertyvalue;}; }; /*移植者添加的节点*/ /{node{property2value;}; }; /***合并后的节点内容***/ /{node{property2value;}; }; 2.6 替换节点内容 一个硬件设备的部分属性信息可能会变化但是设备树里面已经描述了所有的属性值使用者可以添加已有的属性值以替换原有的属性值就出现了节点内容替换。在同级路径下节点名相同的“两个”节点实际是一个节点。 2.7 引用节点内容 一个设备可能会使用到别的节点的内容可以通过节点的别名来引用到其内容。 引用的目的可能是合并两个节点的内容、 替换部分内容、或是使用部分内容. /{node:node80000000{propertyvalue;}; }; /*移植者添加的node节点*/ node{propertyvalue;status “okay”; } /*移植者添加demo节点*/ /{demo{propertynode;}; }; 说明:demo节点的属性property引用了节点的node的属性值一般的,引用的目的是使用node节点的部分属性内容 2.8 chosen 节点 chosen 节点不描述一个真实设备而是用于 firmware 传递一些数据给 OS譬如 bootloader 传递内核启动参数给内核. chosen {bootargs “root/dev/nfs rw nfsroot192.168.1.1 consolettyS0,115200”; }; 2.9 查找节点 涉及设备、总线、驱动的概念即所谓设备信息和驱动代码分离的驱动框架如 platform、 i2c、 usb、spi、 pci、等等 或是分层驱动框架 MTD 设备驱动、framebuffer 设备驱动、 input 设备驱动、 ...则设备树中设备节点的会内核初始化时候被查找到驱动代码将不关心节点的查找。  如果仅仅是接口驱动框架字符设备驱动、块设备驱动、网络设备驱动 则需要使用内核节点查找函数查找设备树中的设备节点。 2.10 查找办法 通过节点的 compatible 属性值查找指定节点  通过节点名查找指定节点  通过节点路径查找指定节点 3 节点描述 头文件 include/of.h struct device_node {const char *name; //节点名const char *type; //设备类型phandle phandle;const char *full_name; //全路径节点名struct fwnode_handle fwnode;struct property *properties;struct property *deadprops; /* removed properties */struct device_node *parent; 父节点指针struct device_node *child; //子节点指针struct device_node *sibling;struct kobject kobj;unsigned long _flags;void *data;#if defined(CONFIG_SPARC)const char *path_component_name;unsigned int unique_id;struct of_irq_controller *irq_trans;#endif }; 功能通过 compatible 属性查找指定节点 struct device_node *of_find_compatible_node(struct device_node *from, const char *type, const char *compat); 参数 struct device_node *from - 指向开始路径的节点如果为NULL则从根节点开始 const char *type - device_type设备类型可以为NULL const char *compat - 指向节点的compatible属性的值字符串的首地址 返回值 成功得到节点的首地址失败 NULL 设备 ID 表结构用于匹配设备节点和驱动 struct of_device_id {char name[32]; /*设备名*/char type[32]; /*设备类型*/char compatible[128]; /*用于与设备树compatible属性值匹配的字符串*/const void *data; /*驱动私有数据*/ }; //注册支持设备树的设备ID表 include/module.h MODULE_DEVICE_TABLE(of, ID表首地址) 功能通过 compatible 属性查找指定节点 struct device_node *of_find_matching_node(struct device_node *from, const struct of_device_id *matches); 参数 struct device_node *from - 指向开始路径的节点如果为NULL则从根节点开始 const struct of_device_id *matches - 指向设备ID表注意ID表必须以NULL结束 范例 const struct of_device_id mydemo_of_match[] {{ .compatible fs4412,mydemo, },{} }; 返回值 成功得到节点的首地址失败 NULL 功能通过路径查找指定节点 struct device_node *of_find_node_by_path(const char *path); 参数 const char *path - 带全路径的节点名也可以是节点的别名 返回值 成功得到节点的首地址失败 NULL 功能通过节点名查找指定节点 struct device_node *of_find_node_by_name(struct device_node *from, const char *name); 参数 struct device_node *from - 开始查找节点如果为NULL则从根节点开始 const char *name- 节点名 返回值 成功 得到节点的首地址失败 NULL 3.1 节点属性 有默认意义的属性  1、设备树语法中已经定义好的具有通用规范意义的属性。  如果是设备信息和驱动分离框架的设备节点则能够在内核初始化找到节点时候自动解析生成相应的设备信息。  常见属性的有 compatible、地址 address、中断 interrupt  ARM Linux 内核定义好的一类设备通用的有默认意义的属性  一般的不能被内核自动解析生成相应的设备信息但是内核已经编写了相应的解析提取函数。  常见属性的有 MAC 地址、 GPIO 口、 clock、 power、 regulator、等等 驱动自定义属性 针对具体设备有部分属性很难通用需要驱动自己定义好通过内核的属性提取解析函数进行值的获得。 ethernet18000000 {compatible “davicom,dm9000”;reg 0x18000000 0x2 0x18000004 0x2;interrupt 7 4;local-mac-address [00 00 de ad be ef];davicom,no-eeprom;reset-gpios gpf 12 GPIO_ACTIVE_LOW;vcc-supply eth0_power; }; compatible 属性 用于匹配设备节点和设备驱动规则是驱动设备 ID 表中的 compatible 域的值字符串和设备树中设备节点中的 compatible 属性值完全一致则节点的内容是给驱动的。  设备树中的命名规范如下 /{ node{compatible“厂商名,名称” ;......vcc-supply eth0_power; };设备树示例 /{…mydemo{compatible “fs4412,mydemo”;…} }/*platform 框架的探测函数*/ static int demo_probe(struct platform_device *devices) { //设备树对应节点的信息已经被内核构造成struct platform_devic … } static const struct of_device_id demo_of_matches[] {{.compatible “fs4412,mydemo”,},{} } MODULE_DEVICE_TABLE(of,demo_of_matches);static struct platform_driver demo_drv {.driver {.name DEMONAME,.owner THIS_MODULE,.of_match_table of_match_ptr(demo_of)} } 属性-address #address-cells描述子节点 reg 属性值的地址表中首地址 cell 数量 #size-cells描述子节点 reg 属性值的地址表中地址长度 cell 数量
http://www.pierceye.com/news/282945/

相关文章:

  • o2o网站设计方案做一个网站只做前端怎么做
  • 长沙网站建设公司联系方式网站注册手机号安全吗
  • 广州市网站建设服务机构建设部网站查资质
  • 医院网站建设思路wordpress mx主题
  • 天津如何做百度的网站虚拟机做局域网网站服务器
  • 网站建设维护需要懂哪些知识网站建设优质公司
  • 怎么做网络彩票网站校园网站建设经费申请报告
  • 廊坊公司做网站一般网站图标是用什么做的
  • php网站开发文档模板玖壹购网站是做啥子的
  • 海报模板网站有哪些小程序电商平台排名
  • 百度一下百度网站苏州优秀网站设计企业
  • 通信管理局网站备案cms网站建设的实训总结
  • 西安知名网站建设公司百度网页版微信
  • 单纯python能完成网站开发吗门户网站衰落的原因
  • 唐山微网站建设价格宁波外贸网站推广优化
  • 如何能把网站做的更大赤峰网站建设赤峰
  • 织梦大气绿色大气农业能源化工机械产品企业网站源码模版网站设计是用ps做图吗
  • 长沙建设网站公司浙江网站建设上市公司
  • 成都艾邦视觉专业网站建设公司有内涵大气的公司名字
  • 制作学校网站编程基础知识大全
  • 建设银行网站买手机阿里云已备案域名购买
  • 12个优秀的平面设计素材网站wordpress 标题 拼音
  • 瑶海区网站建设公司上海app开发定制公司
  • 北海建设厅网站局域网的电脑怎么做网站服务器
  • 莱芜网站建设价格域名注册成功后怎么使用网站
  • 衡阳县建设局网站wordpress 图片缓存
  • 浙江门户网站建设公司新闻稿发布
  • 温州网站建设排名wordpress 汉化失败
  • 做数据可视化的网站推广类软文案例
  • 外包做网站的要求怎么写做网站 360