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

网站推广制作教程网站建设注意问题

网站推广制作教程,网站建设注意问题,昭通市住房和城乡建设局网站,德清县建设局网站1. 大纲 大概内容如下#xff1a; u-boot功能概述 目的功能细分 u-boot源码结构u-boot的配置、编译、连接过程 Makefile深入练习分析u-boot的Makefileu-boot可执行程序的组成 u-boot源码分析 SPL与第1阶段第2阶段核心#xff1a;命令让u-boot的使用更加便利#xff1a;env…1. 大纲 大概内容如下 u-boot功能概述 目的功能细分 u-boot源码结构u-boot的配置、编译、连接过程 Makefile深入练习分析u-boot的Makefileu-boot可执行程序的组成 u-boot源码分析 SPL与第1阶段第2阶段核心命令让u-boot的使用更加便利env u-boot的设备树u-boot实战 移植其他版本的u-boot修改设备树支持网卡 2. u-boot核心功能 就是启动内核 读Flash把内核读入内存启动内核 3. 配置u-boot的过程分析 3.1 源码结构 在u-boot目录下执行tree . -d 1.txt可以得到目录的结构精简如下 ├── arch │ ├── arm // 1. 架构相关 │ │ ├── cpu │ │ │ ├── armv7 │ │ │ │ ├── mx6 │ │ ├── dts │ │ │ └── include │ │ │ └── dt-bindings - ../../../../include/dt-bindings │ │ ├── include │ │ │ ├── asm │ │ │ │ ├── arch-imx │ │ │ │ ├── arch-imx8 │ │ │ │ ├── arch-imx8m │ │ │ │ ├── imx-common │ │ │ └── debug │ │ ├── lib │ │ ├── mach-rockchip │ │ │ ├── rk3036 │ │ │ ├── rk3288 │ │ │ └── rk3399 │ │ ├── lib ├── board // 单板相关 │ ├── freescale │ │ ├── common │ │ │ └── p_corenet │ │ ├── corenet_ds │ │ ├── mx6ul_14x14_ddr3_arm2 │ │ ├── mx6ul_14x14_evk │ │ ├── mx6ul_14x14_lpddr2_arm2 │ │ ├── mx6ull_ddr3_arm2 │ │ ├── mx6ullevk ├── cmd // 通用的命令 │ ├── fastboot │ └── mvebu ├── common // 通用的 │ ├── eeprom │ ├── init │ └── spl ├── configs ├── disk ├── drivers // 各类驱动 ├── fs // 文件系统 │ ├── cbfs │ ├── cramfs │ ├── ext4 │ ├── fat │ ├── jffs2 │ ├── reiserfs │ ├── sandbox │ ├── ubifs │ ├── yaffs2 │ └── zfs ├── include ├── lib // 库 ├── net // 网络协议3.2 Makefile分析 3.2.1 基础知识 文档本Git仓库01_all_series_quickstart\04_嵌入式Linux应用开发基础知识\doc_pic\04.2018_Makefile 3.2.2 make的技巧 打印Makefile的规则和变量make -p 可以把make命令规则和变量存入文件make -p 1.txt 然后执行vi 1.txt使用vi命令删除注释:g/^#/d 3.3 u-boot的默认配置 3.3.1 默认配置的过程 IMX6ULL: make mx6ull_14x14_evk_defconfig STM32MP157: make stm32mp15_trusted_defconfig 执行过程 制作工具scripts/kconfig/conf把默认配置信息写入文件.config 分析过程 mx6ull_14x14_evk_defconfig: scripts/kconfig/conf$(Q)$ $(silent) --defconfigarch/$(SRCARCH)/configs/$ $(Kconfig)就是 UBOOTVERSION2017.03 scripts/kconfig/conf --defconfigarch/../configs/mx6ull_14x14_evk_defconfig Kconfig3.3.2 conf命令概述 总体分析scripts/kconfig/conf.c 更详细的配置过程make mx6ull_14x14_evk_defconfig V1 defconfig_file arch/../configs/mx6ull_14x14_evk_defconfig; name Kconfigconf_parse(name); // 解析uboot根目录下的Kconfig文件conf_read(defconfig_file); // 读配置文件conf_set_all_new_symbols(def_default); // 设置new_symbols为默认值conf_write(NULL); // 写到.configKconfig这是一个通用文件里面规定了一些依赖比如 如果是ARM架构就默认选中A、B、C配置如果是RISC-V架构就默认选中a、b、c配置 defconfig_file这是厂家提供的里面定义了 ARM架构自己的一些配置项 怎么处理呢 使用defconfig_file的内容去解析Kconfig确定各个依赖的配置项其他未涉及的配置项给它们指定默认值写入.config 3.3.3 conf命令详解 深入分析scripts/kconfig/conf.c 3.4. Kconfig介绍 参考文档 任一个Linux内核的Documentation\kbuild\kconfig-language.rsthttps://www.rt-thread.org/document/site/programming-manual/kconfig/kconfig/对于各类内核只要支持menuconfig配置界面都是使用Kconfig。 在配置界面中可以选择、设置选项这些设置会保存在.config文件里。 编译脚本会包含.config根据里面的值决定编译哪些文件、怎么编译文件。 .config文件也会被转换为头文件C程序可以从头文件中获得配置信息。 1.1 配置界面示例 问题 这个界面里各个配置项来自哪里这个界面里这些配置项是怎么组织的这个界面里我们的选择、设置结果保存在哪里这些配置结果怎么使用 1.2 配置结果的保存 1.2.1 示例 在配置界面中操作的结果保存在.config文件中示例如下 # # Automatically generated file; DO NOT EDIT. # U-Boot Configuration # CONFIG_CREATE_ARCH_SYMLINKy # CONFIG_ARC is not set CONFIG_ARMy # CONFIG_AVR32 is not set # CONFIG_BLACKFIN is not set # CONFIG_M68K is not set # CONFIG_MICROBLAZE is not set # CONFIG_MIPS is not set # CONFIG_NDS32 is not set # CONFIG_NIOS2 is not set # CONFIG_OPENRISC is not set # CONFIG_PPC is not set # CONFIG_SANDBOX is not set # CONFIG_SH is not set # CONFIG_SPARC is not set # CONFIG_X86 is not set # CONFIG_XTENSA is not set CONFIG_SYS_ARCHarm CONFIG_SYS_CPUarmv7 CONFIG_SYS_SOCmx6 CONFIG_SYS_VENDORfreescale CONFIG_SYS_BOARDmx6ullevk CONFIG_SYS_CONFIG_NAMEmx6ullevk# # ARM architecture # CONFIG_HAS_VBARy CONFIG_HAS_THUMB2y CONFIG_CPU_V7y CONFIG_SYS_ARM_ARCH7 CONFIG_SYS_CACHE_SHIFT_6y CONFIG_SYS_CACHELINE_SIZE64编译脚本会包含.config文件它会根据里面的变量比如CONFIG_CPU_V7选择u-boot特性。 1.2.2 配置项的前缀 在Kconfig文件中假设配置项的名字是XXX在.config文件中 默认情况下它对应的变量名为CONFIG_XXX如果设置了环境变量CONFIG_ABC则对应的变量名为ABC_XXX 1.3 描述单个配置项config 1.3.1 示例 在menuconfig界面可以看到这个配置项 在配置界面使用方向箭头游走到Display information about the CPU during start up后可以 输入Y选择配置项在.config中对应CONFIG_DISPLAY_CPUINFOy 输入N不选择配置项在.config中对应# CONFIG_DISPLAY_CPUINFO is not set 上图中的配置项怎么实现的 在common/Kconfig文件中它对应下列代码 1.3.2 语法 上面是一个精简的例子完整的例子可以从Linux中获得如下 config SGI_SNSCbool SGI Altix system controller communication supportdepends on (IA64_SGI_SN2 || IA64_GENERIC)default yhelpIf you have an SGI Altix and you want to enable systemcontroller communication from user space (you want this!),say Y. Otherwise, say N.解释如下 config 表示config option这是Kconfig的基本entry其他entry是用来管理config的。 config 表示一个配置选项的开始紧跟着的 SGI_SNSC 是配置选项的名称。 config 下面几行定义了该配置选项的属性。 属性可以是该配置选项的类型、输入提示、依赖关系、默认值、帮助信息。 bool 表示配置选项的类型每个 config 菜单项都要有类型定义变量有5种类型 bool 布尔类型tristate 三态类型string 字符串hex 十六进制int 整型 “SGI Altix system controller communication support”提示信息depends on表示依赖关系只有(IA64_SGI_SN2 || IA64_GENERIC)被选中才可以选择SGI_SNSCselect XXX表示反向依赖关系即当前配置选项被选中后XXX选项就会被选中。default 表示配置选项的默认值bool 类型的默认值可以是 y/n。help 帮助信息在menuconfig界面输入H键时就会提示帮助信息。 1.4 实现菜单menu/endmenu 1.4.1 示例 示例代码rt-smart/kernel/src/Kconfig代码如下 menu Boot mediaconfig NOR_BOOTbool Support for booting from NOR flashdepends on NORhelpEnabling this will make a U-Boot binary that is capable of beingbooted via NOR. In this case we will enable certain pinmux earlyas the ROM only partially sets up pinmux. We also default to usingNOR for environment.config NAND_BOOTbool Support for booting from NAND flashdefault nhelpEnabling this will make a U-Boot binary that is capable of beingbooted via NAND flash. This is not a must, some SoCs need this,some not.config ONENAND_BOOTbool Support for booting from ONENANDdefault nhelpEnabling this will make a U-Boot binary that is capable of beingbooted via ONENAND. This is not a must, some SoCs need this,some not.config QSPI_BOOTbool Support for booting from QSPI flashdefault nhelpEnabling this will make a U-Boot binary that is capable of beingbooted via QSPI flash. This is not a must, some SoCs need this,some not.config SATA_BOOTbool Support for booting from SATAdefault nhelpEnabling this will make a U-Boot binary that is capable of beingbooted via SATA. This is not a must, some SoCs need this,some not.config SD_BOOTbool Support for booting from SD/EMMCdefault nhelpEnabling this will make a U-Boot binary that is capable of beingbooted via SD/EMMC. This is not a must, some SoCs need this,some not.config SPI_BOOTbool Support for booting from SPI flashdefault nhelpEnabling this will make a U-Boot binary that is capable of beingbooted via SPI flash. This is not a must, some SoCs need this,some not.endmenu 界面如下 1.4.2 语法 解释如下 menu “xxx表示一个菜单菜单名是xxx” menu和endmenu之间的entry都是xxx菜单的选项 在上面的例子中子菜单有6个选项 1.5 实现单选choice/endchoice 1.5.1 示例 示例代码rt-smart/kernel/src/Kconfig代码如下 config DEBUG_UARTbool Enable an early debug UART for debugginghelpThe debug UART is intended for use very early in U-Boot to debugproblems when an ICE or other debug mechanism is not available.choiceprompt Select which UART will provide the debug UARTdepends on DEBUG_UARTdefault DEBUG_UART_NS16550config DEBUG_UART_ALTERA_JTAGUARTbool Altera JTAG UARThelpSelect this to enable a debug UART using the altera_jtag_uart driver.You will need to provide parameters to make this work. The driver willbe available until the real driver model serial is running.config DEBUG_UART_ALTERA_UARTbool Altera UARThelpSelect this to enable a debug UART using the altera_uart driver.You will need to provide parameters to make this work. The driver willbe available until the real driver model serial is running.endchoice界面如下 在上述界面中设置了DEBUG_UART才有后续的选择菜单。 1.5.2 语法 解释如下 choice表示选择choice和endchoice之间的entry是可以选择的项目 它们之间只能有一个被设置为y表示编进内核它们之间可以设置多个为m表示编译为模块比如一个硬件有多个驱动程序 同一时间只能有一个驱动能编进内核但是多个驱动都可以单独编译为模块 1.6 menuconfig menuconfig XXX和config XXX类似 唯一不同的是该选项除了能设置y/m/n外还可以实现菜单效果(能回车进入该项内部)。 1.6.1 示例 示例代码Kconfig menuconfig EXPERTbool Configure standard U-Boot features (expert users)default yhelpThis option allows certain base U-Boot options and settingsto be disabled or tweaked. This is for specializedenvironments which can tolerate a non-standard U-Boot.Use this only if you really know what you are doing.if EXPERTconfig SYS_MALLOC_CLEAR_ON_INITbool Init with zeros the memory reserved for malloc (slow)default yhelpThis setting is enabled by default. The reserved mallocmemory is initialized with zeros, so first malloc callswill return the pointer to the zeroed memory. But thisslows the boot time.It is recommended to disable it, when CONFIG_SYS_MALLOC_LENvalue, has more than few MiB, e.g. when uses bzip2 or bmp logo.Then the boot time can be significantly reduced.Warning:When disabling this, please check if malloc calls, maybeshould be replaced by calloc - if one expects zeroed memory.config TOOLS_DEBUGbool Enable debug information for toolshelpEnable generation of debug information for tools such as mkimage.This can be used for debugging purposes. With debug informationit is possible to set breakpoints on particular lines, single-stepdebug through the source code, etc.endif # EXPERT 界面如下 1.6.2 语法 menuconfig常用格式有2种 menuconfig Mif Mconfig C1config C2endif或 menuconfig Mconfig C1depends on Mconfig C2depends on M第1项menuconfig M跟config M语法是一样的 不同之处在于menuocnfig M后面可以跟着好几个依赖于M的config C1、config C2等子配置项。 1.7 if/endif 1.7.1 语法 在上面的menuconfig中就有if/endif的使用它的语法如下 if expr if block endif1.7.2 示例 示例如下只有定义了的EXPERT项SYS_MALLOC_CLEAR_ON_INIT等才会显示出来 if EXPERTconfig SYS_MALLOC_CLEAR_ON_INITbool Init with zeros the memory reserved for malloc (slow)default yhelpThis setting is enabled by default. The reserved mallocmemory is initialized with zeros, so first malloc callswill return the pointer to the zeroed memory. But thisslows the boot time.It is recommended to disable it, when CONFIG_SYS_MALLOC_LENvalue, has more than few MiB, e.g. when uses bzip2 or bmp logo.Then the boot time can be significantly reduced.Warning:When disabling this, please check if malloc calls, maybeshould be replaced by calloc - if one expects zeroed memory.config TOOLS_DEBUGbool Enable debug information for toolshelpEnable generation of debug information for tools such as mkimage.This can be used for debugging purposes. With debug informationit is possible to set breakpoints on particular lines, single-stepdebug through the source code, etc.endif # EXPERT1.8 source source 语句用于读取另一个文件中的 Kconfig 文件 比如Kconfig中就包含了其他Kconfig source arch/Kconfig1.9 comment comment 语句出现在界面的第一行用于定义一些提示信息如cmd/Kconfig comment Commands界面如下 1.10 测试代码 1.10.1 config config 100ASKbool test for 100askdefault yhelpjust for Kconfig test1.10.2 menu(多选) menu 100ASK menuconfig IMX6ULL_TESTtristate menu test item 1 IMX6ULLhelpjust for test menu.config STM32MP157_TESTtristate menu test item 2 IMX6ULLhhelpjust for test menu. endmenu1.10.3 choice(单选) config CHOICE_ON_100ASKbool Enable choice for 100askhelpEnable choice for 100askchoiceprompt choice test for 100askdepends on CHOICE_ON_100ASKconfig CHOICE_ITEM1bool CHOICE_ITEM1helpCHOICE_ITEM1.config CHOICE_ITEM2bool CHOICE_ITEM2helpCHOICE_ITEM2.endchoice1.10.4 menuconfig menuconfig 100ASK_MENUCFGbool test for menuconfig of 100askif 100ASK_MENUCFG config IMX6ULL_TEST_MENUCFGtristate menuconfig test item 1 IMX6ULLhelpjust for test menuconfig.config STM32MP157_MENUCFGtristate menuconfig test item 2 IMX6ULLhhelpjust for test menuconfig. endifmenu test menu config TEST_Abool TEST Adefault yconfig TEST_Bbool TEST Bdefault yendmenuchoiceprompt test choisedefault TEST_Cconfig TEST_Cbool TEST Cdefault yconfig TEST_Dbool TEST Ddefault yendchoice menuconfig TEST_MENUCONFIGbool test menuconfigdefault nif TEST_MENUCONFIG config TEST_Ebool TEST Edefault yconfig TEST_Fbool TEST Fdefault yendif
http://www.zqtcl.cn/news/249786/

相关文章:

  • 如何备份网站数据库网站用户体验模型
  • 网站域名注册流程办公室装修风格
  • a站免费最好看的电影片推荐方正隶变简体可以做网站用么
  • 创同盟做网站找公司做网站需要咨询什么问题
  • 西安行业网站株洲高端网站建设
  • 优化网站流量商城网站建设软件
  • dw属于什么的网页制作工具网络建站优化科技
  • 百度网站首页的设计理念南京高新区规划建设局网站
  • 虚拟机做实验的网站网站以个人名义备案
  • 自定义表单网站网站建设营销型号的区别
  • 有个网站做彩盒的贵阳网站建设托管
  • 网站制作属于什么专业做网站需要什么配置服务器吗
  • 网站开发学习培训广州网站优化关键词公司
  • 毕节金海湖新区城乡建设局网站企业网站的步骤
  • 网站后台设计教程网站建设判断题
  • 珠海网站建设 金蝶天元建设集团有限公司李华
  • 海安市建设局网站成都官网seo技术
  • 网站建设策划书结束语wordpress付费版
  • 进口网站建设做网站用什么格式的图片
  • 青海省住房和城乡建设部网站进入网站空间
  • 做公司简介的开源网站企业seo多少费用
  • 学校网站建设工作方案昆明做网站词排名优化
  • 镇江企业做网站针对人群不同,网站做细分
  • 个人单页网站建设台州网站建设惠店
  • 专做婚礼logo的网站做搜狗pc网站快速排
  • 北京网站建设公司分享网站改版注意事项做网站需要多大空间
  • 主机网站建设制作天津西青区天气预报
  • 网站没有内容可以备案吗横向网站源码
  • 做的网站浏览器提示不安全站优化
  • dede移动端网站源码电子商务网站建设开题报告