专业嵌入式软件开发:Power BI与nm解析

需积分: 50 110 下载量 174 浏览量 更新于2024-08-05 收藏 84.73MB PDF 举报
"嵌入式开发,Power BI,nm命令,目标文件,可执行文件,链接,C编程,操作系统,质量保证" 在《所示的程-power bi白皮书》中,讨论了如何通过nm命令来理解和分析程序中的符号与目标文件、可执行文件之间的关系。nm是一个用于查看目标文件和可执行文件中的符号信息的工具。在描述中提到的示例程序包含全局变量gl.ball, gl.bal2以及函数foo()、internal()、bar()和main()。通过nm的输出,我们可以观察到符号的地址和类型。 在图5.20所示的程序中,nm的输出显示了各个符号在目标文件中的相对偏移位置,而不是实际运行时的内存地址。这是因为程序尚未完成链接,链接过程会将这些相对偏移转换为最终的内存地址。例如,符号"time"未在当前文件中定义,表明其实现可能存在于C标准库libc.a中。 从图5.21的nm输出可以得出以下几点结论: 1. 地址为0的符号表示它们在对应的段内的相对位置,而非绝对地址。 2. 如果nm输出中出现未定义的符号,意味着这些功能或变量在当前文件中没有定义,可能在其他库中实现。 这本书《专业嵌入式软件开发——全面走向高质高效编程》由李云著,是针对嵌入式开发者的指南,涵盖了硬件、工具、编程语言、操作系统、设计和质量保证等多个方面。书中详细介绍了嵌入式开发中常用的make、gcc编译器、binutils工具集、ld链接器和gdb调试器的使用。特别强调了makefile的编写,旨在帮助读者成为这方面的专家。 编程语言篇深入探讨了C语言,而操作系统篇则通过ClearRTOS这个实时操作系统实例,帮助读者理解操作系统的原理。设计篇和质量保证篇则提供了实践导向的指导,以提升开发质量和效率。 本书适合有一定C语言基础和UML知识的嵌入式开发新手或经验丰富的开发者阅读,有助于他们在开发过程中遇到的问题找到解决方案,并提升开发的专业性和效率。书中强调了版权保护,未经许可,禁止任何形式的复制或抄袭。同时,书中还提供了出版信息和购买、投诉及服务联系方式。