第9章 开发环境和调试技术知识(初稿) 嵌入式系统课件.pptVIP

第9章 开发环境和调试技术知识(初稿) 嵌入式系统课件.ppt

  1. 1、本文档共41页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第9章 开发环境和调试技术知识(初稿) 嵌入式系统课件.ppt

标准库:glibc 最初是自由软件基金会为其GNU操作系统所写,但目前最主要的应用是配合Linux内核,成为GNU/Linux操作系统一个重要的组成部分。 是Linux系统中最底层的API,几乎其它任何运行库都会直接或间接地依赖于glibc。 除了封装系统调用之外,还提供一些基本的功能,例如open、malloc、printf、exit等等。 编译器: gcc 支持不同的编程语言,它被目前许多Unix/Linux系统作为默认的标准编译器。 支持多种处理器架构上,并且在商业、专利和开源软件开发环境中广泛使用。 支持嵌入式系统平台。 binutils 是一组开发工具包,包括连接器、汇编器和其他用于目标文件和档案的工具。其中包括:addr2line、ar 、as、ld、nm、objdump 、ranlib、readelf 调试器:gdb 是一款功能非常强大的调试器,既支持多种硬件平台,也支持多种编程语言,目前gdb支持的调试语言有C/C++、Java、Fortran、Modula-2等多种语言。 不仅用于本地调试,还可以用于远程调试,非常适合嵌入式系统开发使用。 第9章 开发环境和调试技术 提纲 1、交叉开发环境模式概述 2、宿主机环境 3、目标板环境 4、交叉编译工具链 5、gdb调试器 6、远程调试 7、内核调试 8、网络调试 1、交叉开发环境模式概述 什么是嵌入式系统 “以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。” 硬件上的局限性 存储空间小 处理器频率低 缺少存储、输入输出设备 宿主机—目标板交叉开发模式 组成部分 宿主机:平时使用的桌面计算机 目标板:嵌入式开发板 介绍 利用宿主机上已有的成熟的开发工具,专门针对目标板定制一套系统,包括引导程序、内核和文件系统,然后下载到目标板上运行。 宿主机—目标板交叉开发模式 开发过程 在宿主机上编写代码,并通过交叉编译工具编译出能够在目标板上运行的程序,然后下载到目标板上测试执行,最后利用宿主机上的调试工具对目标板上运行的程序进行远程调试。 特点 使用和桌面开发一样的工具,降低学习成本。 充分利用宿主机的开发环境。 2、宿主机环境 串口终端 BOOTP协议 TFTP协议 交叉编译 Make工具 串口终端 串口的用途 作为终端执行命令,管理嵌入式系统。 使用zmodem协议等传送小文件。 串口终端 超级终端 (Windows XP) Minicom (Linux) BOOTP协议 什么是BOOTP协议 引导协议(Bootstrap Protocol,BOOTP)是一种基于TCP/IP的协议,它最初在RFC951中定义,如今在通用计算机上广泛使用的DHCP协议就是从BOOTP协议扩展而来。BOOTP协议使用TCP/IP网络协议中的UDP 67/68两个通讯端口。 BOOTP协议用途 用于无盘客户机从服务器得到自己的IP地址、服务器的IP地址、启动映象文件名、网关信息等等 BOOTP处理过程 第一步,在主机平台运行BOOTP服务的情况下,目标板由Boot Loader启动BOOTP,此时目标板还没有IP地址,它就用广播形式以IP地址向网络中发出IP地址查询的请求,这个请求帧中包含了客户机的网卡MAC地址。 第二步,主机平台上的BOOTP服务器接收到的这个请求帧,根据这帧中的MAC地址在Bootptab启动数据库中查找这个MAC的记录,如果没有此MAC的记录则不响应这个请求;如果有就将FOUND帧发送回目标板。FOUND帧中包含的主要信息有目标板的IP地址、服务器的IP地址、硬件类型、网关IP地址、目标板MAC地址和启动映象文件名。 第三步,目标板就根据FOUND帧中的信息通过TFTP服务器下载启动映象文件。 TFTP协议 什么是BOOTP协议 TFTP的全称是Trivial File Transfer Protocol,即“简单文件传输协议”,它是TCP/IP协议族中的一个在客户端和服务端之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。 TFTP特点 不提供用户名和口令 TFTP 协议传输由客户端发起 交叉编译 背景 目标文件在不同架构间由于采用的CPU指令集不同等原因不能通用。 定义 交叉编译就是在一个架构的机器下编译另一个架构的目标文件。 需要安装交叉编译工具链 make工具 GNU make是一种常用的编译工具,通过它,开发人员可以很方便地管理软件编译的内容、方式和时机,从而能够把主要精力集中在代码的编写上。make会自动根据文件修改时间来判断源文件中哪些部分有更新,通过解释Makefile文件内的规则并执行相应的命令,重新编译链接这些更

文档评论(0)

yuzongxu123 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档