itgle.com

嵌入式系统开发时,由于受到目标机资源的限制,需要建立一个___【37】____与目标机组成的调试架构来完成开发工作。若目标机为裸机环境时,通常需要通过___【38】____接口来完成硬件环境测试及初始软件的调试和下载。

题目

嵌入式系统开发时,由于受到目标机资源的限制,需要建立一个___【37】____与目标机组成的调试架构来完成开发工作。若目标机为裸机环境时,通常需要通过___【38】____接口来完成硬件环境测试及初始软件的调试和下载。


相似考题
参考答案和解析
正确答案:宿主机 JTAG
更多“嵌入式系统开发时,由于受到目标机资源的限制,需要建立一个___【37】____与目标机组成的调试架构来 ”相关问题
  • 第1题:

    在嵌入式系统开发时,有时会利用指令集模拟器来开发、调试相关的嵌入式应用软件。下面有关指令集模拟器的说法中,错误的是:()。

    A.指令集模拟器只是在宿主机上运行的纯软件工具

    B.指令集模拟器可以根据目标机指令集的定义生成目标机器指令序列,并仿真运行

    C.指令集模拟器中把目标机处理器硬件逻辑用变量或数据结构表示

    D.指令集模拟器只能采用解释型的方式来仿真运行目标机器指令序列


    正确答案:D

  • 第2题:

    以下叙述中正确的是(37) 。

    A.宿主机与目标机之间只需要建立逻辑连接即可

    B.在嵌入式系统中,调试器与被调试程序必须位于同一台机器上

    C.在嵌入式系统开发中,通常采用的是交叉编译器

    D.宿主机与目标机之间的通信方式只有串口和并口两种


    正确答案:C
    本题考查嵌入式系统软件开发调试的基础知识。在进行嵌入式系统的开发时,运行秸序的目标平台通常具有有限的存储空间和运算能力,比如常见的ARM平台,其一般的静态存储空间大致是16~32MB,而CPU的主频大概为100~500MHz。这种情况下,在ARM平台上进行本机编译就不太可能了,这是因为一般的编译工具链(compilationto)lchain)需要很大的存储空间,并需要很强的CPU运算能力。为了解决这个问题,嵌入式系统普遍采用交叉开发调试的方法。通过交叉编译工具,我们就可以在CPU能力很强、存储空间足够的主机平台上(比如PC上,称为宿主机)编译出针对其他平台(比如ARM,称为目标机)的可执行程序。交叉编译只需要在主机平台上安装对应的交叉编泽工具链(crosscompilationtoolchain),然后用这个交叉编译工具链编译我们的源代码,最终生成可在目标平台上运行的代码,通过串口、以太网或者JTAG等方式,下载到嵌入式设备中运行调试。

  • 第3题:

    嵌入式Linux的交叉开发环境由宿主机、目标机和它们之间的通讯方式组 成。其中,嵌入式Linux系统应该安装在 机上。


    目标机

  • 第4题:

    关于ROM Monitor调试方式,以下说法中正确的是()

    (A)开发ROM Monitor的难度比较大。

    (B)当ROM Monitor占用CPU时,应用程序不响应外部的中断,因此不便调试有时间特性的程序。

    (C)要求目标机必须有足够的ROM

    (D)ROM Monitor要占用目标机一定数量的资源,如:CPU资源、RAM资源和通信设备(如:串口、网卡等)资源。

    (E)调试环境不同于实际目标环境


    参考答案ABCDE

  • 第5题:

    以下关于嵌入式软件开发的叙述中,正确的是( )。

    A.宿主机与目标机之间只需要建立逻辑连接即可
    B.调试器与被调试程序一般位贵同一台机器上
    C.嵌入式系统开发通常采用的是交叉编译器
    D.宿主机与目标机之间的通信方式只有串口和并口两种

    答案:C
    解析:
    本题考查嵌入式系统软件开发调试的基础知识。嵌入式系统的软件开发与通常软件开发的区别:要在于软件实现部分,其中又可以分为编译和调试两部分,下面分别对这两部分进行讲解。第一是交叉编译。嵌入式软件开发所采用的编译为交叉编译。所谓交叉编译就是在一个平台上生成可以在另一个平台上执行的代码。编译的最主要的工作就在将程序转化成运行该程序的CPU所能识别的机器代码,由于不同的体系结构有不同的指令系统。因此,不同的CPU需要有相应的编译器,而交叉编译就如同翻译一样,把相同的程序代码翻译成不同CPU的对应可执行二进制文件。要注意的是,编译器本身也是程序,也要在与之对应的某一个CPU平台上运行。这里一般将进行交叉编译的主机称为宿主机,也就是普通的通用PC,而将程序实际的运行环境称为目标机,也就是嵌入式系统环境。由于一般通用计算机拥有非常丰富的系统资源、使用方便的集成开发环境和调试工具等,而嵌入式系统的系统资源非常紧缺,无法在其上运行相关的编译工具,因此,嵌入式系统的开发需要借助宿主机(通用计算机)来编译出目标机的可执行代码。第二是交叉调试。嵌入式软件经过编译和链接后即进入调试阶段,调试是软件开发过程中必不可少的一个环节,嵌入式软件开发过程中的交叉调试与通用软件开发过程中的调试方式有很大的差别。在常见软件开发中,调试器与被调试的程序往往运行在同一台计算机上,调试器是一个单独运行着的进程它通过操作系统提供的调试接口来控制被调试的进程。而在嵌入式软件开发中,调试时采用的是在宿主机和目标机之间进行的交叉调试,调试器仍然运行在宿主机的通用操作系统之上,但被调试的进程却是运行在基于特定硬件平台的嵌入式操作系统中,调试器和被调试进程通过串口或者网络进行通信,调试器可以控制、访问被调试进程,读取被调试进程的当前状态,并能够改变被调试进程的运行状态。