CN104978221A - 实现程序的下载删除的方法及系统 - Google Patents

实现程序的下载删除的方法及系统 Download PDF

Info

Publication number
CN104978221A
CN104978221A CN201510314171.6A CN201510314171A CN104978221A CN 104978221 A CN104978221 A CN 104978221A CN 201510314171 A CN201510314171 A CN 201510314171A CN 104978221 A CN104978221 A CN 104978221A
Authority
CN
China
Prior art keywords
file
module
link
ncap
program
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
Application number
CN201510314171.6A
Other languages
English (en)
Other versions
CN104978221B (zh
Inventor
曹明革
何天翼
王丽丽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BDstar Intelligent and Connected Vehicle Technology Co Ltd
Original Assignee
BEIJING CHINA TSP Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by BEIJING CHINA TSP Co Ltd filed Critical BEIJING CHINA TSP Co Ltd
Priority to CN201510314171.6A priority Critical patent/CN104978221B/zh
Publication of CN104978221A publication Critical patent/CN104978221A/zh
Application granted granted Critical
Publication of CN104978221B publication Critical patent/CN104978221B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明提供了一种实现程序的下载删除的方法及系统,对目标程序对应的c文件进行编译,生成可执行链接格式ELF文件,并发送至批处理应用程序,运行批处理应用程序的第一命令对所述可执行链接格式ELF文件进行逐个拆解,得到链接文件;运行批处理应用程序的第二命令对提取所述链接文件内的指令集信息、指令跳转表信息得到中间临时文件进行重组,得到中间文件NCAP;将中间文件NCAP下载至目标芯片,并对中间文件NCAP的各个模块进行本地化链接定位,得到目标程序,以实现目标芯片对目标程序的调用及删除。本发明对可执行链接格式ELF文件内的函数进行了重定位,得到的中间文件NCAP中存储着与当前开发环境无关的地址信息,能够解决现有技术中目标芯片调用动态程序时需要在链接脚本内指明具体的链接信息,执行过程比较繁琐的问题。

Description

实现程序的下载删除的方法及系统
技术领域
本发明实施例涉及计算机软件领域,特别是涉及一种实现程序下载删除的方法及系统。
背景技术
在WindowsPC及LINUX嵌入式的系统平台下,使用C语言开发的应用或者插件模块可以以动态链接库的形式呈现在相应的操作系统上,可以非常灵活的在本地平台上“热插拔”。而此类动态链接库内的代码仅处于被编译状态,实际运行时的代码需要有一定处理能力的CPU动态链接后才可以执行,因此,上述系统对硬件的要求较高。而在处理能力有限的芯片平台,如arm7、Cortext-M3等,是不能通过上述方法实现对动态链接库的下载使用。
目前,通常在无MMU(内存管理单元,Memory Management Unit)的ARM系列芯片上的开发环境主要是基于KEIL、GCC、IAR。以KEIL的开发环境为例,在KEIL集成开发环境下对于动态程序的下载,是通过预先对动态程序对应的每个c文件进行编译,得到ELF(可执行连接格式,Executableand Linkable Format)文件,经过链接器将所有的ELF文件统一链接生成AXF(ARM Executable File)文件,提取AXF文件内的指令集信息即可得到直接下载到目标芯片上的bin文件。
上述方案中下载到目标芯片上的bin文件是在KEIL开发环境下经过编译、链接一站式完成的,该bin文件是与地址相关的。而bin文件在某一平台上运行时需要充分了解目标芯片平台上的详细地址划分,若更换了别的状态下的软件平台运行,还需要重新在链接脚本内指明具体的链接信息,执行过程比较繁琐。
发明内容
本发明实施例公开了一种实现程序的下载删除的方法及系统,以解决现有技术中目标芯片调用动态程序时需要在链接脚本内指明具体的链接信息,执行过程比较繁琐的问题。
为了解决上述问题,本发明提供了一种实现程序下载删除的方法,其特征在于,包括:
接收目标芯片下载目标程序的请求;
依据所述下载目标程序的请求,查找与所述目标程序对应的c文件;
对所述c文件进行编译,生成可执行链接格式ELF文件;
将所述可执行链接格式ELF文件发送至批处理应用程序;
运行所述批处理应用程序的第一命令对所述可执行链接格式ELF文件进行逐个拆解,得到链接文件;
提取所述链接文件内的指令集信息、指令跳转表信息,并对所述指令集信息、指令跳转表信息进行组合,得到中间临时文件;
运行所述批处理应用程序的第二命令对所述中间临时文件进行重组,得到中间文件NCAP;
将所述中间文件NCAP以数据流的形式下载至所述目标芯片;
在所述目标芯片中对所述中间文件NCAP的各个模块进行本地化链接定位,得到所述目标程序;
所述目标程序被所述目标芯片内软件平台的链接模块管理程序进行调用及删除。
优选的,所述运行所述批处理应用程序的第一命令对所述可执行链接格式ELF文件进行逐个拆解,得到链接文件的步骤,具体为:
运行所述批处理应用程序的第一命令对所述可执行链接格式ELF文件中的段进行逐个抽取,得到链接文件。
优选的,所述运行所述批处理应用程序的第二命令对所述中间临时文件进行重组,得到中间文件NCAP的步骤,具体为:
运行所述批处理应用程序的第二命令对所述中间临时文件中的段进行合并,得到中间文件NCAP。
优选的,所述中间文件NCAP中需要重定位的模块包括:BSS模块、DATA模块、CONSTDATA模块、TEXT模块。
另一方面,本发明还提供一种实现程序的下载删除的系统,所述系统包括:
接收模块,用于接收目标芯片下载目标程序的请求;
查找模块,用于依据所述下载目标程序的请求,查找与所述目标程序对应的c文件;
编译模块,用于对所述c文件进行编译,生成可执行连接格式ELF文件;
发送模块,用于将所述可执行链接格式ELF文件发送至批处理应用程序;
拆解模块,用于运行所述批处理应用程序的第一命令对所述可执行链接格式ELF文件进行拆解,得到链接文件;
提取模块,用于提取所述链接文件内的指令集信息、指令跳转表信息,并对所述指令集信息、指令跳转表信息进行组合,得到中间临时文件;
重组模块,用于运行所述批处理应用程序的第二命令对所述中间临时文件进行重组,得到中间文件NCAP;
下载模块,用于将所述中间文件NCAP以数据流的形式下载至所述目标芯片;
链接定位模块,用于在所述目标芯片中对所述中间文件NCAP的各个模块进行本地化链接定位,得到所述目标程序;
调用删除模块,用于所述目标程序被所述目标芯片内软件平台的链接模块管理程序进行调用及删除。
优选的,所述拆解模块,具体用于运行所述批处理应用程序的第一命令对所述可执行链接格式ELF文件中的段进行逐个抽取,得到中间临时文件。
优选的,所述重组模块,具体用于运行所述批处理应用程序的第二命令对所述中间临时文件中的段进行合并,得到中间文件NCAP。
优选的,所述中所述中间文件NCAP中需要重定位的模块包括:BSS模块、DATA模块、CONSTDATA模块、TEXT模块。
与现有技术相比,本发明实施例包括以下优点:
本发明实施例通过在批处理应用程序中对可执行链接格式ELF文件进行了逐个拆解,使得可执行链接格式ELF文件内函数的地址在中间临时文件中重定位,因此,对中间临时文件进行重组得到的中间文件NCAP内存储着与当前开发环境地址无关的代码,在更换了别的状态下的软件平台运行时,无需重新在链接脚本内指明具体的链接信息,接收芯片软件平台内会动态划分该中间文件NCAP的具体安装地址,相对于现有的需要在链接脚本内指明具体的链接信息后进而进行下载的方法,本发明实施例的执行过程具有更优的兼容性及适配性。
附图说明
图1是本发明实施例提供的一种实现程序的下载删除方法的步骤流程图;
图2是本发明实施例一提供的一种实现程序的下载删除方法的步骤流程图;
图3是本发明实施例提供的一种中间临时文件内部分代码的结构示意图;及
图4是本发明实施例二提供的一种实现程序的下载删除系统的结构示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本发明实施例提供的一种实现程序的下载删除方法的步骤流程图,其是通过编译目标程序对应的C文件,调用用户的命令对编译C文件得到的ELF文件进行逐个拆解,得到了临时文件;判断拆解是否全部完成,若否,则继续执行拆解的步骤;若拆解完成,对所有的临时文件进行重组得到可被目标芯片下载删除的NCAP文件。在目标芯片中,对NCAP文件进行本地化链接装载,并执行相应的应用程序以对NCAP文件内程序进行下载和删除操作。
下面以具体的实施例论述实现程序下载删除方法的详细步骤。
实施例一
参照图2,示出了本发明实施例一提供的一种实现程序的下载删除方法的步骤流程图,具体可以包括以下步骤:
步骤201、接收目标芯片下载目标程序的请求;
在车辆等设备中,车辆内的显示界面为用户提供了很多种应用功能,当用户需要使用某种应用功能时,通过按键会触发车辆相应的目标芯片对用户所需应用功能对应的目标程序进行下载。
目标芯片向服务器发送下载目标程序的请求。
步骤202、依据所述目标程序的请求,查找与所述目标程序对应的c文件;
步骤203、对所述c文件进行编译,生成可执行链接格式ELF文件;
接收目标芯片下载目标程序的请求,依据下载目标程序的请求在服务器中查找与目标程序对应的c文件,并对查找到的c文件进行编译,得到可执行链接格式ELF文件。
步骤204、将所述可执行链接格式ELF文件发送至批处理应用程序;
步骤205、运行所述批处理应用程序的第一命令对所述可执行链接格式ELF文件进行逐个拆解,得到链接文件;
服务器将该可执行链接格式ELF文件发送至批处理应用程序。
步骤206、提取所述链接文件内的指令集信息、指令跳转表信息,并对所述指令集信息、指令跳转表信息进行组合,得到中间临时文件;
本发明实施例中可执行链接格式ELF文件类似于PC平台下的动态链接库,其内的各个模块可以在目标芯片上进行本地化链接定位,以供目标芯片对相应模块的下载。
每个可执行链接格式ELF文件经过批处理应用程序的第一命令的拆解后均可得到一个相应的中间临时文件,该中间临时文件中包含目标程序对应c文件的指令集及.data等等必要段的描述信息。
参照图3,示出了本发明实施例提供的一种中间临时文件内部分代码的结构示意图;
在实际应用中,本发明实施例的步骤206具体可以为:运行所述批处理应用程序的第一命令对所述可执行链接格式ELF文件中的段进行逐个抽取,得到链接文件;
批处理应用程序的第一命令依据可执行链接格式ELF文件的文件头找到可执行链接格式ELF文件的段表首地址,逐个抽取可执行链接格式文件内的段,其中,可执行链接格式ELF文件内的段具体可以包括:.bss段、.data段、.strtab段、.symtab段、.rel<name>段、.rodata段、.text段等等,可以根据不同段的内容以区分不同段的类型及属性;在具体实现中,.bss段、.data段、.rodata段、.text段等的抽取比较简单,只需循环记录链接文件内的此类段即可,而对于.rel<name>段的抽取较为复杂,因为.rel<name>与.strtab段及.symtab段存在引用关系。
提取后的rel<name>段的组织形式如下所示:
Typedef struct{
 INT offset;
 INT info;
 CHAR  *relocatedSeg;
 CHAR  *name;
 INT   st_value;
 INT   st_size;
 BYTE  st_info;
 BYTE  st_other;
 SHORT st_shndx;
}Rel_Sym;
以上代码结构为符号表结构与重定位表结构的组合,可以清晰描述一个重定位元素的信息;其中,offset指明了重定位入口的偏移,是重定位入口所要修正的位置的第一个字节相对于段起始的偏移;info指明了该处重定位的类型及重定位元素的符号名称;relocatedSeg为重定位元素写回时的段名称;name指向重定位元素的名称;st_value根据不同的重定位类型可能具有不同的含义;st_size标明该重定位元素的大小,如果该重定位元素是一个函数调用,则st_size存储该被调用函数的大小,若该被调用函数位于外部,则该值为0;st_info指明了重定位元素的绑定方式及重定位元素的属性;st_other无意义;st_shndx指明被写回段在段描述表内的索引。
批处理应用程序接收到的可执行链接格式ELF文件内含有具体的为外部链接该可执行链接格式ELF文件的API接口,即代码图中的importAPI,以供外部对可执行链接格式ELF文件内相应模块的调用,该API接口在可执行链接格式ELF文件内被声明为weak以防止编译的错误。各个函数在源码级别被调用时,均存在其在调用者函数内相对于调用者函数所在代码段基地址的偏移量。后续链接步骤即使用该偏移量把确定地址的被调函数地址与该处地址的差值放置于该偏移处。如果该处为指针函数调用则直接读取被调函数地址后送与函数调用指令进行处理。
批处理应用程序的第一命令可以是如下形式:
java–classpath NCAPExport,jar com.tendyron.Main.Main main.o
在应用程序内对可执行链接格式ELF文件进行逐个拆解,产生相应的链接文件及其相应的描述文件,其中,链接文件的描述文件的内容具体可以为:
链接文件中具体描述了其导出的函数为main及test,同时,中间临时文件需要导入重定向的函数为test及importAPI,该重定向函数及导入接口importAPI属于i.main段内的函数,在i.main段内,test重定向的位置在相对于该段的基地址偏移为0x8处,importAPI接口的位置在相对于该段的基地址偏移为0xc处;type:R_386_GOTPC标明了该处是一个具体的常规函数调用。
因此,对于采用批处理应用程序的第一命令对可执行链接格式ELF文件内的段抽取的过程就是对于可执行链接格式ELF文件内具体的函数重定位的一个过程,得到的链接文件包含着与当前编译环境无关的地址信息。
步骤207、运行所述批处理应用程序的第二命令对所述中间临时文件进行重组,得到中间文件NCAP;
批处理应用程序的第二命令可以是如下形式:
java–classpath NCAPExported.jar com.tendyron.Linker.Main main.expmid
批处理应用程序的第二命令用于将拆解得到的中间临时文件进行重组,得到可被目标芯片链接的中间文件NCAP。
在具体实现中,本发明实施例的步骤207具体可以为:运行批处理应用程序的第二命令对所述中间临时文件中的段进行合并,得到中间文件NCAP;
批处理应用程序的第二命令用于将中间临时文件内的所有数据类型段进行整合,得到中间文件NCAP,把所有中间临时文件内各个属性相同的段合并为一个大段存储于中间文件NCAP。
因为中间临时文件内存储有重定位元素的名称等信息,为降低NCAP文件在目标芯片中进行链接时的运算量,因此,在对中间临时文件重组为中间文件NCAP时,对中间临时文件中进行简化描述。
步骤208、将所述中间文件NCAP以数据流的形式下载至所述目标芯片;
本发明实施例中将数据流的形式可以是APDU(应用协议数据单元,Application Protocol DataUnit)等等形式,在具体实现中,具体的数据流的形式是根据具体的开发环境及软硬件产生的,本发明实施例在此不再多加详述。
以智能卡应用为例,中间文件NCAP可经由APDU数据流的形式下载至智能卡卡片中。
步骤209、在所述目标芯片中对所述中间文件NCAP的各个模块进行本地化链接定位,得到所述目标程序;
步骤210、所述目标程序被所述目标芯片内软件平台的链接模块管理程序进行调用及删除;
目标芯片对中间文件NCAP中各个模块进行本地化链接定位,向目标芯片提供了用于调用及删除的对应于用户调用功能的目标程序,其中,中间文件NCAP内需要重定位的模块可以包括有:BSS模块、DATA模块、CONSTDATA模块及TEXT模块等等。
本发明实施例中可执行链接格式ELF文件在批处理应用程序中经过批处理命令的抽取及重组,对于可执行链接格式ELF文件内的函数进行了重定位,并且中间文件NCAP并没有经过当前开发环境的链接,因此中间文件NCAP中存储着与当前开发环境无关的地址信息,因而在更换别的状态下的软件平台运行时,无需重新在链接脚本内指明具体的链接信息,接收芯片软件平台内会动态划分该中间文件NCAP的具体安装地址。相对于现有的需要在链接脚本内指明具体的链接信息后进行下载的方法,该方案实施过程具有更优的兼容性及适配性。
实施例二
参照图4,示出了本发明实施例二提供的一种实现程序的下载删除的系统的结构示意图,具体可以包括:
接收模块401,用于接收目标芯片下载目标程序的请求;
查找模块402,用于依据所述目标程序的请求,查找与所述目标程序对应的c文件;
编译模块403,用于对所述c文件进行编译,生成可执行连接格式ELF文件;
发送模块404,用于将所述可执行链接格式ELF文件发送至批处理应用程序;
拆解模块405,用于运行所述批处理应用程序的第一命令对所述可执行链接格式ELF文件进行拆解,得到链接文件;
实际应用中,拆解模块406,具体可以用于运行所述批处理应用程序的第一命令对所述可执行链接格式ELF文件中的段进行逐个抽取,得到链接文件;
提取模块406,用于提取所述链接文件内的指令集信息、指令跳转表信息,并对所述指令集信息、指令跳转表信息进行组合,得到中间临时文件;
重组模块407,用于运行所述批处理应用程序的第二命令对所述中间临时文件进行重组,得到中间文件NCAP;
实际应用中,重组模块407,具体可以用于运行所述批处理应用程序的第二命令对所述中间临时文件中的段进行合并,得到中间文件NCAP;
下载模块408,用于将所述中间文件NCAP以数据流的形式下载至所述目标芯片;
链接定位模块409,用于在所述目标芯片中对所述中间文件NCAP的各个模块进行本地化链接定位;
其中,所述中间文件NCAP中需要重定位的模块可以包括:BSS模块、DATA模块、CONSTDATA模块、TEXT模块;
调用删除模块410,用于所述目标程序被所述目标芯片内软件平台的链接模块管理程序进行调用及删除。
本发明实施例中链接文件在批处理应用程序中经过批处理命令的抽取及重组,对于可执行链接格式ELF文件内的函数进行了重定位,并且中间文件NCAP并没有经过当前开发环境的链接,因此中间文件NCAP中存储着与当前开发环境无关的地址信息,因而在更换别的状态下的软件平台运行时,无需重新在链接脚本内指明具体的链接信息,接收芯片软件平台内会动态划分该中间文件NCAP的具体安装地址。相对于现有的需要在链接脚本内指明具体的链接信息后进而进行下载的方法,该方案实施过程有更优的兼容性及适配性。
对于本发明实施例的系统实施例而言,由于其与方法实施例一基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
在一个典型的配置中,所述计算机设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非持续性的电脑可读媒体(transitory media),如调制的数据信号和载波。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明实施例所提供的一种实现程序的下载删除的方法及系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (8)

1.一种实现程序的下载删除的方法,其特征在于,包括:
接收目标芯片下载目标程序的请求;
依据所述下载目标程序的请求,查找与所述目标程序对应的c文件;
对所述c文件进行编译,生成可执行链接格式ELF文件;
将所述可执行链接格式ELF文件发送至批处理应用程序;
运行所述批处理应用程序的第一命令对所述可执行链接格式ELF文件进行逐个拆解,得到链接文件;
提取所述链接文件内的指令集信息、指令跳转表信息,并对所述指令集信息、指令跳转表信息进行组合,得到中间临时文件;
运行所述批处理应用程序的第二命令对所述中间临时文件进行重组,得到中间文件NCAP;
将所述中间文件NCAP以数据流的形式下载至所述目标芯片;
在所述目标芯片中对所述中间文件NCAP的各个模块进行本地化链接定位,得到所述目标程序;
所述目标程序被所述目标芯片内软件平台的链接模块管理程序进行调用及删除。
2.根据权利要求1所述的方法,其特征在于,所述运行所述批处理应用程序的第一命令对所述可执行链接格式ELF文件进行逐个拆解,得到链接文件的步骤,具体为:
运行所述批处理应用程序的第一命令对所述可执行链接格式ELF文件中的段进行逐个抽取,得到链接文件。
3.根据权利要求1所述的方法,其特征在于,所述运行所述批处理应用程序的第二命令对所述中间临时文件进行重组,得到中间文件NCAP的步骤,具体为:
运行所述批处理应用程序的第二命令对所述中间临时文件中的段进行合并,得到中间文件NCAP。
4.根据权利要求1所述的方法,其特征在于,所述中间文件NCAP中需要重定位的模块包括:BSS模块、DATA模块、CONSTDATA模块、TEXT模块。
5.一种实现程序的下载删除的系统,其特征在于,所述系统包括:
接收模块,用于接收目标芯片下载目标程序的请求;
查找模块,用于依据所述下载目标程序的请求,查找与所述目标程序对应的c文件;
编译模块,用于对所述c文件进行编译,生成可执行连接格式ELF文件;
发送模块,用于将所述可执行链接格式ELF文件发送至批处理应用程序;
拆解模块,用于运行所述批处理应用程序的第一命令对所述可执行链接格式ELF文件进行拆解,得到链接文件;
提取模块,用于提取所述链接文件内的指令集信息、指令跳转表信息,并对所述指令集信息、指令跳转表信息进行组合,得到中间临时文件;
重组模块,用于运行所述批处理应用程序的第二命令对所述中间临时文件进行重组,得到中间文件NCAP;
下载模块,用于将所述中间文件NCAP以数据流的形式下载至所述目标芯片;
链接定位模块,用于在所述目标芯片中对所述中间文件NCAP的各个模块进行本地化链接定位,得到所述目标程序;
调用删除模块,用于所述目标程序被所述目标芯片内软件平台的链接模块管理程序进行调用及删除。
6.根据权利要求5所述的系统,其特征在于,所述拆解模块,具体用于运行所述批处理应用程序的第一命令对所述可执行链接格式ELF文件中的段进行逐个抽取,得到中间临时文件。
7.根据权利要求5所述的系统,其特征在于,所述重组模块,具体用于运行所述批处理应用程序的第二命令对所述中间临时文件中的段进行合并,得到中间文件NCAP。
8.根据权利要求5所述的系统,其特征在于,所述中所述中间文件NCAP中需要重定位的模块包括:BSS模块、DATA模块、CONSTDATA模块、TEXT模块。
CN201510314171.6A 2015-06-09 2015-06-09 实现程序的下载删除的方法及系统 Active CN104978221B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510314171.6A CN104978221B (zh) 2015-06-09 2015-06-09 实现程序的下载删除的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510314171.6A CN104978221B (zh) 2015-06-09 2015-06-09 实现程序的下载删除的方法及系统

Publications (2)

Publication Number Publication Date
CN104978221A true CN104978221A (zh) 2015-10-14
CN104978221B CN104978221B (zh) 2018-04-27

Family

ID=54274754

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510314171.6A Active CN104978221B (zh) 2015-06-09 2015-06-09 实现程序的下载删除的方法及系统

Country Status (1)

Country Link
CN (1) CN104978221B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113377370A (zh) * 2021-05-18 2021-09-10 龙芯中科(西安)科技有限公司 一种文件处理方法、装置、电子设备及存储介质
CN114860204A (zh) * 2022-04-27 2022-08-05 恒宝股份有限公司 程序处理、运行方法、装置、终端、智能卡及存储介质
WO2022199407A1 (zh) * 2021-03-22 2022-09-29 北京字跳网络技术有限公司 一种专用计算能力配置方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110179260A1 (en) * 2010-01-21 2011-07-21 Hong Fu Jin Precision Industry (Shenzhen) Co., Ltd. Method for integrating operating system into bios chip and method for booting operating system from server
CN103902332A (zh) * 2014-04-16 2014-07-02 河南工业职业技术学院 一种实现单片机程序下载的装置及调试方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110179260A1 (en) * 2010-01-21 2011-07-21 Hong Fu Jin Precision Industry (Shenzhen) Co., Ltd. Method for integrating operating system into bios chip and method for booting operating system from server
CN103902332A (zh) * 2014-04-16 2014-07-02 河南工业职业技术学院 一种实现单片机程序下载的装置及调试方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022199407A1 (zh) * 2021-03-22 2022-09-29 北京字跳网络技术有限公司 一种专用计算能力配置方法及装置
CN113377370A (zh) * 2021-05-18 2021-09-10 龙芯中科(西安)科技有限公司 一种文件处理方法、装置、电子设备及存储介质
CN114860204A (zh) * 2022-04-27 2022-08-05 恒宝股份有限公司 程序处理、运行方法、装置、终端、智能卡及存储介质

Also Published As

Publication number Publication date
CN104978221B (zh) 2018-04-27

Similar Documents

Publication Publication Date Title
CN109491695B (zh) 一种集成安卓应用的增量更新方法
CN109976761B (zh) 软件开发工具包的生成方法、装置及终端设备
US10908925B2 (en) Dynamic loading method, and target file creation method and apparatus
KR101944570B1 (ko) 변형 컨텍스트-인식 데이터 소스 관리
CN104461898A (zh) 应用测试的方法、中控服务器、测试终端及系统
CN105224370A (zh) 一种加载elf文件的方法和装置
CN106407111B (zh) 终端测试装置、终端测试设备及变量维护方法
CN111930382B (zh) 应用页面的接入方法、装置及设备
CN111176717B (zh) 生成安装包的方法、装置及电子设备
Macht Live memory forensics on android with volatility
CN108279940A (zh) 一种web容器中的模块加载方法和装置
CN112099880B (zh) 场景驱动的应用程序约减方法和系统
CN112099800A (zh) 代码数据的处理方法、装置和服务器
CN104978221A (zh) 实现程序的下载删除的方法及系统
CN105094941B (zh) 一种实现多语言的方法及装置
CN106371706A (zh) 应用快捷方式位置选择的方法及装置
CN103677778A (zh) 一种CAP文件Classref常量的解析方法
CN105204832A (zh) 一种实现脚本引擎的系统及方法
CN111045698A (zh) 冗余图片的删除方法、装置、电子设备及存储介质
CN111078279A (zh) 字节码文件的处理方法、装置、设备及存储介质
KR102141749B1 (ko) App 프로그램 실행 방법 및 장치
CN108845864A (zh) 一种基于spring框架的JVM垃圾回收方法和装置
CN109426515A (zh) 升级包的生成方法及装置
CN109409037B (zh) 一种数据混淆规则的生成方法、装置及设备
CN115080114B (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
CB02 Change of applicant information

Address after: 100123 Beijing city Chaoyang District High Road No. 8 well culture Dongyi international media industry park three floor C seat

Applicant after: BEIJING CHINA TSP TECHNOLOGY CO., LTD.

Address before: 100025, building 8, building 88, East Fourth Ring Road, Chaoyang District, Beijing

Applicant before: Beijing China TSP Co., Ltd.

COR Change of bibliographic data
GR01 Patent grant
GR01 Patent grant
CP02 Change in the address of a patent holder

Address after: Room 226, 2nd floor, Building 7, Fengxian East Road, Haidian District, Beijing 100080

Patentee after: BEIJING CHINA TSP TECHNOLOGY CO., LTD.

Address before: 100123 Beijing city Chaoyang District High Road No. 8 well culture Dongyi international media industry park three floor C seat

Patentee before: BEIJING CHINA TSP TECHNOLOGY CO., LTD.

CP02 Change in the address of a patent holder
TR01 Transfer of patent right

Effective date of registration: 20211221

Address after: 401120 No.3, Tonggui Avenue, Yufengshan Town, Yubei District, Chongqing

Patentee after: Beidou Xingtong Zhilian Technology Co.,Ltd.

Address before: 100080 room 226, 2 / F, building 1, No.7 Fengxian East Road, Haidian District, Beijing

Patentee before: BEIJING CHINA TSP TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right