CN1904853A - 一种嵌入式软件装载调试方法及其*** - Google Patents
一种嵌入式软件装载调试方法及其*** Download PDFInfo
- Publication number
- CN1904853A CN1904853A CN 200610111281 CN200610111281A CN1904853A CN 1904853 A CN1904853 A CN 1904853A CN 200610111281 CN200610111281 CN 200610111281 CN 200610111281 A CN200610111281 A CN 200610111281A CN 1904853 A CN1904853 A CN 1904853A
- Authority
- CN
- China
- Prior art keywords
- file
- source code
- boot
- embedded
- code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000013507 mapping Methods 0.000 claims abstract description 8
- 230000004048 modification Effects 0.000 claims description 20
- 238000012986 modification Methods 0.000 claims description 20
- 230000008859 change Effects 0.000 claims description 7
- 230000006870 function Effects 0.000 claims description 7
- 230000003993 interaction Effects 0.000 claims description 7
- 230000002093 peripheral effect Effects 0.000 claims description 6
- 239000000284 extract Substances 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
本发明公开了一种嵌入式软件装载调试方法,其包括:编译嵌入式***软件源代码生成目标文件;确定需要修改和不需要修改的源代码,编辑地址映射描述文件,将存储空间分为两个部分;根据地址映射描述文件链接目标文件,生成两个分别包含不需要修改和需要修改的源代码的可执行映像文件;根据用户指令将生成的可执行映像文件中修改的部分转换为可装载文件,将其下载到目标嵌入式***,并存储到存储空间的相应位置,引导嵌入式***软件运行进行调试。本发明同时还公开了一种嵌入式软件装载调试***,该***的能够控制嵌入式***的计算机***包括:编译链接器、装载文件生成器以及引导装载器部件;目标嵌入式***包括:引导装载器部件和存储单元。
Description
技术领域
本发明涉及嵌入式***技术,特别涉及一种嵌入式软件装载调试方法及其***。
背景技术
嵌入式***是以应用为中心,以计算机技术为基础,并且软硬件可裁减,适用于应用***对功能、成本、可靠性、体积以及功耗等有严格要求的专用计算机***。嵌入式***已经在各种通讯设备中大量使用。由于各种嵌入式***定制的功能、采用的存储介质及控制器,以及运行环境各不相同,因此,不同的嵌入式***在嵌入式通讯设备中的性能表现各不相同,对于不同的嵌入式***需要进行调试,以验证嵌入式***的各种定制功能,保证嵌入式***的可靠性。
现有技术中存在两种嵌入式***调试方法及其***:
图1为现有技术第一种嵌入式***调试***的结构示意图。如图1所示,该***包括:桌面计算机、硬件仿真器103以及目标嵌入式***。其中,桌面计算机包括:编译链接器101和调试器102,硬件仿真器103用于连接调试器102和目标嵌入式***。
利用图1所示调试***进行嵌入式***调试的实现过程为:桌面计算机通过编译连接器101编译链接嵌入式***软件源代码,生成完整的带有调试信息的可执行映像文件,再通过调试器102将生成的带有调试信息的可执行映像文件传输给硬件仿真器103,由硬件仿真器103将接收到的带有调试信息的可执行映像文件下载到目标嵌入式***,再通过调试器102进行在线调试。
利用图1所示***进行嵌入式***调试的优点是:能够在线调试单线程可执行代码;可以通过调试器102单步执行或设置断点,因此,可以非常方便地查看和修改***中的变量。但实际应用中,该方法并不常用,主要的原因是:使用该方法需要购买价格昂贵的硬件仿真器;代码装载时间随着软件源代码量的增加而增加,所以,当嵌入式***的软件源代码量较大时,代码装载时间会很长。另外,该方法不适合调试多线程可执行源代码,而实际应用中,带有操作***的嵌入式***通常都需要多线程调试。
图2为现有技术第二种嵌入式***调试***的结构示意图。如图2所示,该***包括:桌面计算机和目标嵌入式***。其中,桌面计算机包括:编译链接器201和下载器202,嵌入式***包括:可引导程序单元203和存储单元204。
利用图2所示调试***进行嵌入式***调试的实现过程为:桌面计算机通过编译链接器201编译链接嵌入式***软件源代码,生成完整的可执行映像文件,并通过下载器201和可引导程序单元203之间的通讯端口将生成的可执行映像文件下载并存储到目标嵌入式***的存储单元204。然后,目标嵌入式***中的可引导程序引导存储单元204中的可执行映像文件进行嵌入式***调试,并通过下载器201和可引导程序单元203之间的通讯端口向桌面计算机控制台发送嵌入式***调试结果的打印信息。这里,所述的通讯端口可以根据***配置确定,可以是串行接口、并行接口或者USB通用串行接口。
利用图2所示***进行嵌入式***调试可以通过普通的串行端口线连接桌面计算机和目标嵌入式硬件***,使用方便,成本低廉,单线程和多线程可执行源代码都可以调试。目前,大多数软件工程师和***工程师都使用该方法和***进行嵌入式***调试。但由于串行端口的特性,下载可执行映像文件的速度受到一定限制,无法达到很高的速度,尤其在软件代码量很大时,调试人员的很多时间都是在等待桌面计算机向目标嵌入式***下载可执行映像文件,因此造成大量时间的浪费。
发明内容
本发明的主要目的在于提供一种嵌入式软件装载调试方法,提高嵌入式***软件装载调试的效率。
本发明的另一主要目的在于提供一种嵌入式软件装载调试***,在低成本的基础上提高嵌入式软件装载调试的效率。
为了实现上述目的的第一方面,本发明提供了一种嵌入式软件装载调试方法,该方法编译嵌入式***软件源代码生成目标文件后,还包括以下步骤:
A、确定需要修改和不需要修改的源代码,编辑地址映射描述文件,将目标嵌入式***的存储空间相应的划分为两个部分;
B、根据步骤A的地址映射描述文件链接目标文件,生成分别包含不需要修改和需要修改的源代码的两个可执行映像文件;
C、根据用户指令将步骤B生成的两个可执行映像文件中修改的部分转换为可装载文件,并将转换的可装载文件下载到目标嵌入式***,存储到存储空间的相应位置,引导嵌入式***软件运行进行调试。
所述生成目标文件时,进一步包括:记录每一段源代码对应的代码段和数据段的大小;
步骤A所述确定需要修改和不需要修改的源代码后,进一步包括:根据记录的每一段源代码对应的代码段和数据段的大小,分别计算需要修改和不需要修改的源代码对应的代码段和数据段的大小;
步骤A所述将存储空间分为两个部分为:根据嵌入式***的硬件存储器配置以及需要修改的源代码和不需要修改的源代码对应的代码段和数据段的大小将存储空间分为两个部分。
步骤C所述根据用户指令将步骤B生成的可执行映像文件中修改的部分转换为可装载文件为:
根据用户指令将两个可执行映像文件全部转换为可装载文件;或
根据用户指令提取可执行映像文件一中由于重新编译链接导致的部分指令修改的代码,并将可执行映像文件一中修改的代码与可执行映像文件二合并后转换为可装载文件;或
根据用户指令将可执行映像文件二转换为可装载文件;
步骤C所述的将可装载文件存储到存储空间的相应位置为:根据可装载文件中携带的数据块在存储空间的存储位置信息,将可装载文件中的数据块存储到存储空间的相应位置。
所述可装载文件携带的数据块在存储空间的存储位置信息为:可装载文件中每一个数据块的偏移量信息。
步骤A所述需要修改的源代码包括:嵌入式***中的未经调试的应用软件代码、嵌入式***外设的驱动代码、嵌入式***外设的功能代码;
所述不需要修改的源代码包括:已经过调试的稳定的嵌入式***代码。
为了实现上述目的的第二方面,本发明提供了一种嵌入式软件装载调试***,该***包括:
能够控制嵌入式***的计算机***和目标嵌入式***,其中,
能够控制嵌入式***的计算机***包括:编译链接器、装载文件生成器以及引导装载器部件一;目标嵌入式***包括:引导装载器部件二和存储单元,
引导装载器部件一与引导装载器部件二相连进行信息交互,
编译链接器,用于将嵌入式***的软件源代码编译生成目标文件后,根据用户编辑的执行地址映射描述文件链接目标文件,生成分别包含不需要修改的源代码和需要修改的源代码的两个可执行映像文件;
装载文件生成器,用于根据用户指令,将编译链接器生成的两个可执行映像文件中修改的部分转换为可装载文件,并将转换的可装载文件发送给引导装载器部件一;
引导装载器部件一与引导装载器部件二通过信息交互,将可装载文件下载到引导装载器部件二;
引导装载器部件二将可装载文件存储到存储单元的相应位置,并引导嵌入式***软件运行进行调试。
所述引导装载器部件二包括:数据块存储模块,用于根据可装载文件携带的数据块在存储单元的存储位置信息,将可装载文件中的数据块存储到存储单元的相应位置。
所述目标嵌入式***进一步包括:存储单元二,用于存储目标嵌入式***从所述存储单元拷贝的嵌入式***软件;
所述引导装载器部件二进一步用于引导存储单元二中的嵌入式***软件运行。
所述引导装载器部件一与引导装载器部件二通过通讯端口相连;
所述的通讯端口为串行接口、并行接口或USB通用串行接口。
所述能够控制嵌入式***的计算机***为:桌面计算机、或笔记本电脑。
本发明提供的嵌入式软件装载调试方法,根据嵌入式***调试中绝大部分源代码不需要修改,只需修改部分源代码的特点,通过分解可执行映像文件,将源代码不需要修改和需要修改部分的可执行映像文件分离,调试中只需要将源代码修改部分的可执行映像文件装载到目标嵌入式***,减少了下载文件的长度,缩短了下载时间,从而达到提高工作效率的目的。
本发明提供的嵌入式软件装载调试***,通过编译链接器根据用户编辑的执行地址映射描述文件链接目标文件,生成两个分别包含不需要修改和需要修改的源代码的可执行映像文件;通过装载文件生成器根据用户指令,将编译链接器生成的可执行映像文件中修改的部分转换为可装载文件;通过引导装载器部件将转换的可装载文件下载到目标嵌入式***中,并引导嵌入式***软件运行进行调试。
因此,利用本发明提供的嵌入式软件装载调试方法及其***,不仅可以避免现有技术中第一种嵌入式***调试***的高成本、代码装载时间长以及不适于调试多线程可执行源代码的问题,而且与现有技术的第二种嵌入式***调试方法和***相比,具有更高的调试效率,实现了在低成本的基础上提高嵌入式软件装载调试效率的目的。
附图说明
图1为现有技术第一种嵌入式***调试***的结构示意图;
图2为现有技术第二种嵌入式***调试***的结构示意图;
图3为本发明的嵌入式***调试方法的流程示意图;
图4为本发明的嵌入式***的调试***的结构示意图。
具体实施方式
为使本发明的目的、技术方案和有益效果更加清楚明白,下面结合实施例和附图,对本发明进一步详细说明。
本发明提供的嵌入式软件装载调试方法及其***的核心思想是:将可执行映像文件分解为两个可执行映像文件,分别包含不需要修改和需要修改的源代码,并在目标嵌入式***中为两个可执行映像文件分配不同的存储空间,从而在目标嵌入式***调试中,只需要将源代码修改部分的可执行映像文件下载到目标嵌入式***中相应的存储空间,然后引导嵌入式***软件运行,进行调试。
参见图3,图3为本发明的嵌入式***调试方法的流程示意图。如图3所示,该流程包括以下步骤:
步骤301,使用编译链接器编译嵌入式***软件源代码,生成目标文件。
在编译链接器编译源代码生成目标文件的时候,会指示出每一段源代码对应的代码段和数据段的大小,该步骤可以进一步包括:记录每一段源代码对应的代码段和数据段的大小。
步骤302,确定需要修改的源代码和不需要修改的源代码,编辑地址映射描述文件,将存储空间划分为两个部分。
用户确定需要修改的源代码和不需要修改的源代码,并根据步骤301记录的每一段源代码对应的代码段和数据段的大小,确定需要修改的源代码和不需要修改的源代码对应的代码段和数据段的大小。
然后,用户根据嵌入式***的硬件存储器配置以及步骤302确定的需要修改和不需要修改的源代码分别对应的代码段和数据段大小,将存储空间分为两个部分:一部分用于存储不需要修改的源代码所对应的代码段和数据段,空间大小与这部分的代码段及数据段的大小相等或稍大几个字节;另一部分用于存储需要修改的源代码所对应的代码段和数据段,由于这部分的源代码在调试中会不断地修改,对应的代码段和数据段在每次编译调试中都会有差异,因此需要为这部分代码段和数据段分配尽可能多的存储空间。当然,两部分存储空间的总和不能超过嵌入式***存储器的可访问地址长度。
这里,所述需要修改的源代码包括:嵌入式***中的未经调试的应用软件代码、嵌入式***外设的驱动代码、嵌入式***外设的功能代码等;所述不需要修改的源代码包括:已经过调试的稳定可靠的嵌入式***代码,如操作***代码等。
嵌入式***的硬件存储器配置包括:存储器的起始地址、可访问地址长度。
可以采用如下格式编辑地址映射描述文件:
[装载段1][起始地址][长度]
{
[代码段起始地址][代码段长度]
[数据段起始地址][数据段长度]
{
目标文件名字
}
}
[装载段2][起始地址][长度]
{
[代码段起始地址][代码段长度]
[数据段起始地址][数据段长度]
{
目标文件名字
}
}
其中,如果装载段1描述的地址映射空间存储对应不需要修改的源代码的可执行映像文件,则与装载段1相关的各个参数的确定原则或取值范围为:
起始地址根据目标嵌入式***的存储器配置确定,长度应不小于不需修改的源代码的对应代码段长度与数据段长度之和;
代码段起始地址等于装载段1的起始地址,代码段长度应等于不需修改源代码的对应代码段长度;
数据段起始地址等于代码段起始地址加上代码段长度,数据段长度应等于不需修改源代码的对应数据段长度。
装载段2描述的地址映射空间存储对应需要修改的源代码的可执行映像文件,其中与装载段2相关的各个参数的确定原则或取值范围为:
起始地址等于装载段1起始地址加上装载段1的长度,长度应不小于需修改源代码的对应代码段长度与数据段长度之和;
代码段起始地址等于装载段2的起始地址,代码段长度应大于或等于需修改源代码的对应代码段长度;
数据段起始地址等于代码段起始地址加上代码段长度,数据段长度应大于或等于需修改源代码的对应数据段长度。
步骤303,根据步骤302编辑的地址映射描述文件链接目标文件,生成两个可执行映像文件,可执行映像文件一包含不需要修改的源代码的可执行代码段和数据段;可执行映像文件二包含需要修改的源代码的可执行代码段和数据段。
步骤304,根据用户指令,将步骤303生成的两个可执行映像文件中修改的部分转换为可装载文件。
所述的用户指令包括三种情况:一种是用户指令要求完整装载,即将两个可执行映像文件全部转换为可装载文件,这种指令用于嵌入式***调试过程中的第一次装载或可执行映像文件一和二的源代码都进行了修改的情况。这里,也可以将第一次装载的情况看作可执行映像文件一和二的源代码都进行了修改的一种特殊情况;
第二种用户指令要求部分装载,即提取可执行映像文件一中由于重新编译链接导致部分指令改变的代码,将可执行映像文件一中改变的部分与可执行映像文件二转换为可装载文件;
第三种用户指令要求只装载可执行映像文件二,这种指令用于可执行映像文件一没有进行任何修改,只有可执行映像文件二的源代码修改的情况。
这里,可装载文件可以采用如下所示的数据格式:
组成 代表符号 长度
文件头数据组成
文件标记 File_Mark 4字节
文件数据长度 File_Length 4字节
数据区数据组成
数据块1头信息
数据块1标记 DB_1Mark 4字节
数据块1偏移量 DB1_Offset 4字节
数据块1长度 DB1_Length 4字节
数据块1数据 DB1_Data DB1_Length 字节
数据块2头信息
数据块2标记 DB2_Mark 4字节
数据块2偏移量 DB2_Offset 4字节
数据块2长度 DB2_Length 4字节
数据块2数据 DB2_Data DB2_Length 字节
…
数据块n头信息
数据块n标记 DBn_Mark 4字节
数据块n偏移量 DBn_Offset 4字节
数据块n长度 DBn_Length 4字节
数据块n数据 DBn_Data DBn_Length 字节
文件结尾数据块头信息
文件结束标记 File_Tail 4字节
上述文件格式中的n为大于0的整数。每一个数据块的偏移量表征了该数据块在存储单元的起始位置。
步骤305,将步骤304转换的可装载文件下载到目标嵌入式***,并存储到存储单元的相应位置后,引导嵌入式***软件运行进行调试。
这里,目标嵌入式***根据可装载文件携带的数据块在存储空间的存储位置信息,将可装载文件中的数据块存储到存储空间的相应位置。
如果采用步骤304所述的可装载文件格式,则目标嵌入式***根据接收到的可装载文件的每一个数据块的偏移量信息,将每一个数据块存储到存储单元的相应位置。
具体而言,将可装载文件下载到目标嵌入式***,并存储到存储单元的相应位置包括以下过程:
A1、根据目标嵌入式***发送的等待下载的提示,向目标嵌入式***发送可装载文件的文件头数据。
A2、在目标嵌入式***返回成功接收文件头数据的握手消息后,向目标嵌入式***发送可装载文件的数据区数据。
A3、目标嵌入式***接收到下载的数据区数据后,根据接收的每一个数据块的偏移量信息,将接收到的数据块写入存储单元的相应位置。
A3、在目标嵌入式***返回成功接收数据区数据的握手消息后,装载成功。
图4为本发明的嵌入式***的调试***的结构示意图,如图4所示,该调试***包括:能够控制嵌入式***的计算机***和目标嵌入式***,其中,
能够控制嵌入式***的计算机***包括:编译链接器401、装载文件生成器402、引导装载器部件一403。目标嵌入式***包括:引导装载器部件二404、存储单元405。这里,所述的能够控制嵌入式***的计算机***可以是桌面计算机、笔记本电脑等具有控制嵌入式***的功能的计算机***。
引导装载器部件一403与引导装载器部件二404相连,二者可以通过通讯端口相连,进行信息交互。这里,所述的通讯端口可以是串行接口、并行接口或USB通用串行接口。
编译链接器401,用于将嵌入式***的软件源代码编译生成目标文件后,根据用户编辑的执行地址映射描述文件链接目标文件生成包含不需要修改源代码的可执行代码段和数据段的可执行映像文件一和包含需要修改的调试源代码的可执行代码段和数据段的可执行映像文件二。
装载文件生成器402,用于根据用户指令,将编译链接器401生成的可执行映像文件一和二的中修改的部分转换为可装载文件,并将生成的可装载文件发送给引导装载器部件一403。
引导装载器部件一403与引导装载器部件二404通过信息交互,将可装载文件下载到引导装载器部件二404。
引导装载器部件二404将接收到的可装载文件存储到存储单元405的相应位置。
这里,引导装载器部件二404根据可装载文件携带的数据块在存储空间的存储位置信息,将可装载文件中的数据块下载到存储空间405的相应位置。
引导装载器部件一403与引导装载器部件二404通过信息交互,将可装载文件下载到引导装载器部件二404,包括:
a、引导装载器部件一403根据引导装载器部件二404发送的等待下载的提示,向引导装载器部件二404发送可装载文件的文件头数据;
b、引导装载器部件一403接收到引导装载器部件二404返回的成功接收文件头数据的握手消息后,向引导装载器部件二404发送可装载文件的数据区数据;
c、引导装载器部件一403接收到引导装载器部件二404返回的成功接收数据区数据的握手消息后,向能够控制嵌入式***的计算机***的控制台提示装载成功。
引导装载器部件二404还用于引导完整的嵌入式***软件运行,进行嵌入式软件和***调试。
引导装载器部件二404通过与引导装载器部件一403之间的通讯端口向能够控制嵌入式***的计算机***控制台发送嵌入式***调试结果的打印信息。
本发明所述的引导装载器部件二404可以直接引导存储单元405中的嵌入式***软件运行,所述的嵌入式***软件即下载到存储单元中的所有可装载文件;也可以先将存储单元405中的嵌入式***软件拷贝到嵌入式***的其它存储单元中后,再引导嵌入式***软件运行,进行调试。
由以上实施例可见,本发明的嵌入式软件装载调试方法及其***,通过分离不需要修改和需要修改的源代码的可执行映像文件,调试中只需要将源代码修改部分的可执行映像文件装载到目标嵌入式***,实现了在低成本的基础上提高嵌入式软件装载调试效率的目的。
Claims (10)
1、一种嵌入式软件装载调试方法,编译嵌入式***软件源代码生成目标文件,其特征在于,该方法还包括以下步骤:
A、确定需要修改和不需要修改的源代码,编辑地址映射描述文件,将目标嵌入式***的存储空间划分为两个部分;
B、根据步骤A的地址映射描述文件链接目标文件,生成分别包含不需要修改和需要修改的源代码的两个可执行映像文件;
C、根据用户指令将步骤B生成的两个可执行映像文件中修改的部分转换为可装载文件,并将转换的可装载文件下载到目标嵌入式***,存储到存储空间的相应位置,引导嵌入式***软件运行进行调试。
2、如权利要求1所述的方法,其特征在于,所述生成目标文件时,进一步包括:记录每一段源代码对应的代码段和数据段的大小;
步骤A所述确定需要修改和不需要修改的源代码后,进一步包括:根据记录的每一段源代码对应的代码段和数据段的大小,分别计算需要修改和不需要修改的源代码对应的代码段和数据段的大小;
步骤A所述将存储空间分为两个部分为:根据嵌入式***的硬件存储器配置以及需要修改的源代码和不需要修改的源代码对应的代码段和数据段的大小将存储空间分为两个部分。
3、如权利要求1或2所述的方法,其特征在于,步骤C所述根据用户指令将步骤B生成的可执行映像文件中修改的部分转换为可装载文件为:
根据用户指令将两个可执行映像文件全部转换为可装载文件;或
根据用户指令提取可执行映像文件一中由于重新编译链接导致的部分指令修改的代码,并将可执行映像文件一中修改的代码与可执行映像文件二合并后转换为可装载文件;或
根据用户指令将可执行映像文件二转换为可装载文件;
步骤C所述的将可装载文件存储到存储空间的相应位置为:根据可装载文件中携带的数据块在存储空间的存储位置信息,将可装载文件中的数据块存储到存储空间的相应位置。
4、如权利要求3所述的方法,其特征在于,所述可装载文件携带的数据块在存储空间的存储位置信息为:可装载文件中每一个数据块的偏移量信息。
5、如权利要求1或2所述的方法,其特征在于,步骤A所述需要修改的源代码包括:嵌入式***中的未经调试的应用软件代码、嵌入式***外设的驱动代码、嵌入式***外设的功能代码;
所述不需要修改的源代码包括:已经过调试的稳定的嵌入式***代码。
6、一种嵌入式软件装载调试***,该***包括:能够控制嵌入式***的计算机***和目标嵌入式***,其特征在于,能够控制嵌入式***的计算机***包括:编译链接器、装载文件生成器以及引导装载器部件一;目标嵌入式***包括:引导装载器部件二和存储单元,
引导装载器部件一与引导装载器部件二相连进行信息交互,
编译链接器,用于将嵌入式***的软件源代码编译生成目标文件后,根据用户编辑的执行地址映射描述文件链接目标文件,生成分别包含不需要修改的源代码和需要修改的源代码的两个可执行映像文件;
装载文件生成器,用于根据用户指令,将编译链接器生成的两个可执行映像文件中修改的部分转换为可装载文件,并将转换的可装载文件发送给引导装载器部件一;
引导装载器部件一与引导装载器部件二通过信息交互,将可装载文件下载到引导装载器部件二;
引导装载器部件二将可装载文件存储到存储单元的相应位置,并引导嵌入式***软件运行进行调试。
7、如权利要求6所述的***,其特征在于,所述引导装载器部件二包括:数据块存储模块,用于根据可装载文件携带的数据块在存储单元的存储位置信息,将可装载文件中的数据块存储到存储单元的相应位置。
8、如权利要求6或7所述的***,其特征在于,所述目标嵌入式***进一步包括:存储单元二,用于存储目标嵌入式***从所述存储单元拷贝的嵌入式***软件;
所述引导装载器部件二进一步用于引导存储单元二中的嵌入式***软件运行。
9、如权利要求6或7所述的***,其特征在于,所述引导装载器部件一与引导装载器部件二通过通讯端口相连;
所述的通讯端口为串行接口、并行接口或USB通用串行接口。
10、如权利要求6或7所述的***,其特征在于,所述能够控制嵌入式***的计算机***为:桌面计算机、或笔记本电脑。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006101112813A CN100405325C (zh) | 2006-08-21 | 2006-08-21 | 一种嵌入式软件装载调试方法及其*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006101112813A CN100405325C (zh) | 2006-08-21 | 2006-08-21 | 一种嵌入式软件装载调试方法及其*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1904853A true CN1904853A (zh) | 2007-01-31 |
CN100405325C CN100405325C (zh) | 2008-07-23 |
Family
ID=37674123
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006101112813A Expired - Fee Related CN100405325C (zh) | 2006-08-21 | 2006-08-21 | 一种嵌入式软件装载调试方法及其*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100405325C (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101894069A (zh) * | 2010-06-10 | 2010-11-24 | 中兴通讯股份有限公司 | Linux中的早期串口打印调试方法及装置 |
CN102147758A (zh) * | 2011-03-16 | 2011-08-10 | 深圳创维数字技术股份有限公司 | 一种待测设备自动编译及配置方法、装置、*** |
CN102486840A (zh) * | 2010-12-03 | 2012-06-06 | 上海华虹集成电路有限责任公司 | 采用非rom方式引导程序的智能卡及其程序引导方法 |
US8392895B2 (en) | 2009-01-13 | 2013-03-05 | Mediatek Inc. | Firmware extension method and firmware builder |
CN103135997A (zh) * | 2011-11-24 | 2013-06-05 | 中兴通讯股份有限公司 | 实现嵌入式设备引导程序通用性的方法及装置 |
CN104657175A (zh) * | 2015-02-06 | 2015-05-27 | 西安电子科技大学 | 利用配置芯片实现启动引导和数据的读写***及方法 |
CN105260184A (zh) * | 2015-10-15 | 2016-01-20 | 广东欧珀移动通信有限公司 | 一种恢复镜像文件的调试方法及装置 |
CN108446214A (zh) * | 2018-01-31 | 2018-08-24 | 浙江理工大学 | 基于dbn的测试用例进化生成方法 |
WO2023066233A1 (zh) * | 2021-10-18 | 2023-04-27 | 中国第一汽车股份有限公司 | 控制器的程序刷写方法、装置、控制器和存储介质 |
CN116700833A (zh) * | 2023-07-27 | 2023-09-05 | 北京智芯微电子科技有限公司 | 应用后下载方法、装置、片上***、终端及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5446900A (en) * | 1992-07-24 | 1995-08-29 | Microtec Research, Inc. | Method and apparatus for statement level debugging of a computer program |
CN1139876C (zh) * | 1999-11-30 | 2004-02-25 | 深圳市中兴通讯股份有限公司 | 嵌入式软件辅助调试方法 |
CN100359485C (zh) * | 2003-07-10 | 2008-01-02 | 华为技术有限公司 | 嵌入式***的测试装置及测试方法 |
CN1591334A (zh) * | 2003-09-05 | 2005-03-09 | 英业达股份有限公司 | 嵌入式***程序精简处理方法及*** |
-
2006
- 2006-08-21 CN CNB2006101112813A patent/CN100405325C/zh not_active Expired - Fee Related
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9207918B2 (en) | 2009-01-13 | 2015-12-08 | Mediatek Inc. | Firmware extension method and firmware builder |
US8392895B2 (en) | 2009-01-13 | 2013-03-05 | Mediatek Inc. | Firmware extension method and firmware builder |
CN101776990B (zh) * | 2009-01-13 | 2013-04-03 | 联发科技股份有限公司 | 固件扩展方法以及固件生成器 |
CN101894069A (zh) * | 2010-06-10 | 2010-11-24 | 中兴通讯股份有限公司 | Linux中的早期串口打印调试方法及装置 |
CN101894069B (zh) * | 2010-06-10 | 2015-04-01 | 中兴通讯股份有限公司 | Linux中的早期串口打印调试方法及装置 |
CN102486840A (zh) * | 2010-12-03 | 2012-06-06 | 上海华虹集成电路有限责任公司 | 采用非rom方式引导程序的智能卡及其程序引导方法 |
CN102147758A (zh) * | 2011-03-16 | 2011-08-10 | 深圳创维数字技术股份有限公司 | 一种待测设备自动编译及配置方法、装置、*** |
CN103135997A (zh) * | 2011-11-24 | 2013-06-05 | 中兴通讯股份有限公司 | 实现嵌入式设备引导程序通用性的方法及装置 |
CN104657175B (zh) * | 2015-02-06 | 2018-07-03 | 西安电子科技大学 | 利用配置芯片实现启动引导和数据的读写***及方法 |
CN104657175A (zh) * | 2015-02-06 | 2015-05-27 | 西安电子科技大学 | 利用配置芯片实现启动引导和数据的读写***及方法 |
CN105260184A (zh) * | 2015-10-15 | 2016-01-20 | 广东欧珀移动通信有限公司 | 一种恢复镜像文件的调试方法及装置 |
CN105260184B (zh) * | 2015-10-15 | 2019-02-19 | Oppo广东移动通信有限公司 | 一种恢复镜像文件的调试方法及装置 |
CN108446214A (zh) * | 2018-01-31 | 2018-08-24 | 浙江理工大学 | 基于dbn的测试用例进化生成方法 |
CN108446214B (zh) * | 2018-01-31 | 2021-02-05 | 浙江理工大学 | 基于dbn的测试用例进化生成方法 |
WO2023066233A1 (zh) * | 2021-10-18 | 2023-04-27 | 中国第一汽车股份有限公司 | 控制器的程序刷写方法、装置、控制器和存储介质 |
CN116700833A (zh) * | 2023-07-27 | 2023-09-05 | 北京智芯微电子科技有限公司 | 应用后下载方法、装置、片上***、终端及存储介质 |
CN116700833B (zh) * | 2023-07-27 | 2023-11-28 | 北京智芯微电子科技有限公司 | 应用后下载方法、装置、片上***、终端及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN100405325C (zh) | 2008-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1904853A (zh) | 一种嵌入式软件装载调试方法及其*** | |
CN1324468C (zh) | 信息处理装置、信息处理方法 | |
TWI439931B (zh) | 用於增加三角差動效能之目的碼之產生 | |
CN1108560C (zh) | 用于存储与多种编程语言相关的执行数据的方法和装置 | |
CN1229944A (zh) | 用于减少预装类的脚印的***和方法 | |
CN1265290C (zh) | 优化链接后代码的方法 | |
CN101042645A (zh) | 统一软件开发环境的方法、设备及*** | |
CN1767453A (zh) | 自动测试方法和*** | |
CN1609799A (zh) | 资源清单 | |
CN1834922A (zh) | 程序变换方法及程序变换*** | |
CN1975670A (zh) | 使用引导代码引导微处理器***的方法和装置 | |
CN1577271A (zh) | 数据的包内增量压缩的***和方法 | |
CN1667574A (zh) | 并行驱动程序 | |
CN1752934A (zh) | 编译器、编译方法以及编译程序 | |
CN1841298A (zh) | 信息处理装置和方法,程序以及存储介质 | |
CN1441352A (zh) | 信息处理装置、该信息处理装置的控制方法、存储媒体 | |
CN101042649A (zh) | 一种配置信息处理方法及装置以及平台*** | |
CN101030145A (zh) | 一种实现软件更新的方法及装置 | |
CN1725177A (zh) | 嵌入式设备集成开发***及其使用方法 | |
CN1419192A (zh) | 中间代码预处理、执行装置及执行***及计算机程序产品 | |
CN1641568A (zh) | 基板管理控制器的固件自动配置***及方法 | |
CN1294501C (zh) | 控制***中装置的控制方法 | |
CN1485732A (zh) | 应用软件自动安装与自动修复的方法 | |
CN111506334A (zh) | 一种dsp芯片程序在线升级方法及*** | |
CN1525323A (zh) | 处理器以及用于产生在处理器中使用的程序的编译器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080723 Termination date: 20120821 |