可执行程序的跨平台实现方法及移动终端技术

技术编号:7786324 阅读:165 留言:0更新日期:2012-09-21 07:22
本发明专利技术实施例公开了提供了一种可执行程序的跨平台实现方法,包括:读取标准格式文件;从所述标准格式文件中选择与当前平台环境相匹配的可执行程序,将所述可执行程序加载至当前平台的内存中;运行所述加载的可执行程序。本发明专利技术实施例还公开了一种移动终端。采用本发明专利技术,可实现移动终端的跨平台的可执行程序的加载运行,执行效率高、性能高、成本低。

【技术实现步骤摘要】

本专利技术涉及移动终端的操作系统的
,尤其涉及一种可执行程序的跨平台实现方法及移动终端
技术介绍
OS (Operating System,操作系统)是控制其他程序运行,管理系统资源并为用户提供操作界面的系统软件的集合,OS为具有并发性、共享性、虚拟性和不确定性的平台。目前,市面上存在多种移动終端平台,以智能手机平台为例,主要包括=PalmOS、Symbian、Windows mobile、Linux、Android、iPhone OS 和黑莓七种平台。各种平台的手机都有自成体系的一整套软件开发环境,且各自之间的软件开发环境差异极大,导致各种平 台的可执行程序都是专用的,两两之间互不兼容。软件开发商开发出ー款软件后,需要针对该款软件,为各种平台配备专门的研发团队,使该款软件能适配各种平台,导致软件开发代价过高,运营和维护成本高昂。由于java程序是目前唯一一种可实现跨平台开发的程序,许多软件开发商则采用java程序开发软件,在各平台上安装java虚拟机,实现软件的适配。但由于java程序是一种解释执行的程序,其与各种平台的原生可执行程序相比,执行效率较低;一般地,java虚拟机的硬件配置较低,采用java虚拟机来进行程序的加载运行,性能较低、电源耗费大,且易受硬件配置的限制和影响。因此,一种执行效率高、性能高、电源耗费小的跨平台可执行程序的实现成为ー个重要的研究方向。
技术实现思路
本专利技术实施例所要解决的技术问题在于,提供一种可执行程序的跨平台实现方法及移动终端,可实现移动终端的跨平台的可执行程序的加载运行,执行效率高、性能高、成本低。为了解决上述技术问题,本专利技术实施例提供了一种可执行程序的跨平台实现方法,包括 读取标准格式文件; 从所述标准格式文件中选择与当前平台环境相匹配的可执行程序,将所述可执行程序加载至当前平台的内存中; 运行所述加载的可执行程序。其中,所述标准格式文件为QELF (QQ Executable and Linkable Format,QQ 可执行连接格式)文件,所述QELF文件中包含至少ー个QELF程序; 所述QELF程序为X86指令的可执行程序、ARM (Advanced RISC Machines, 一种微处理器)指令的可执行程序、Java指令的可执行程序和Misc指令的可执行程序中的任ー种或多种。其中,所述QELF文件中的任一QELF程序均包含用于调用所述当前平台的标准服务接口的函数; 所述QELF程序为调用所述标准服务接口开发得到的软件源代码经编译获得的可执行程序。其中,所述标准服务接口为所述当前平台的原生服务接口按预设的标准接口规范封装后获得的服务接口。其中,所述当前平台包括Palm操作系统、Symbian操作系统、Windows mobile操作系统、Android操作系统、iPhone操作系统、黑莓操作系统、Windows操作系统、Unix操作系统及Linux操作系统中的任一种或多种。 相应地,一种移动终端,包括 读取模块,用于读取标准格式文件; 加载模块,用于从所述读取模块读取的标准格式文件中选择与当前平台环境相匹配的可执行程序,将所述可执行程序加载至当前平台的内存中; 执行模块,用于运行所述加载模块加载的可执行程序。其中,所述移动终端还包括标准化模块,用于按预设的标准接口规范,对所述当前平台的原生服务接口进行标准化封装,获得标准服务接口。其中所述标准格式文件为QELF文件,所述QELF文件中包含至少一个QELF程序; 所述QELF程序为X86指令的可执行程序、ARM指令的可执行程序、Java指令的可执行程序和Misc指令的可执行程序中的任一种或多种。其中,所述加载模块为QELF加载器。其中,所述标准化模块为平台抽象层。其中,所述QELF文件中的任一 QELF程序均包含用于调用所述平台抽象层的标准服务接口的函数; 所述QELF程序为调用所述标准服务接口开发得到的软件源代码经编译获得的可执行程序。其中,所述当前平台为所述移动终端的当前操作系统; 所述移动终端的当前操作系统为Palm操作系统、Symbian操作系统、Windows mobile操作系统、Android操作系统、iPhone操作系统、黑莓操作系统、Windows操作系统、Unix操作系统及Linux操作系统中的任一种。实施本专利技术实施例,具有如下有益效果 I、本专利技术实施例从标准格式文件(QELF文件)中选择与当前平台环境相匹配的可执行程序进行加载运行,该QELF文件包含一种或多种指令的可执行程序,可直接应用于各种移动终端平台,各移动终端平台可直接从该可执行程序文件中选择与当前平台相适配的可执行程序进行加载运行,实现了可执行程序的跨平台应用,降低了软件开发商的开发、运营成本,提闻了程序执行效率和性能。2、本专利技术实施例采用统一的标准接口规范对各种平台的原生服务接口进行标准化封装,使各种平台均能够以标准服务接口的形式向外提供服务,在此基础上进行软件开发时,则不需要再考虑平台差异,实现了开发得到的同一份软件源代码可以在所有平台上 公用,实现了可执行程序的跨平台应用,降低了软件开发商的开发、运营成本,提高了程序执行效率和性能。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图I为本专利技术的移动终端的第一实施例的结构示意 图2为本专利技术的移动终端的第二实施例的结构示意 图3为本专利技术的QELF程序的实施例的结构示意图; 图4为本专利技术的QELF文件的实施例的结构示意 图5为本专利技术的可执行程序的跨平台实现方法的实施例的流程 图6为本专利技术的可执行程序的应用的实施例的结构示意图。具体实施例方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例的移动终端包括但不限于手机、智能手机、PDA(Personal DigitalAssistant,个人数码助理)、PC (Personal Computer,个人计算机)机等终端。请参见图1,为本专利技术的移动终端的第一实施例的结构示意图;所述移动终端包括 读取模块10,用于读取标准格式文件。具体实现中,该标准格式文件优选为QELF格式的文件,该QELF文件中包含至少一个QELF程序,其中,任一 QELF程序均包含可以用来调用标准服务接口的函数,即QELF程序是使用任一移动终端平台的标准服务接口开发得到的软件源代码经编译获得的可执行程序。具体地,所述QELF程序为X86指令的可执行程序、ARM指令的可执行程序、Java指令的可执行程序和Misc指令的可执行程序的任一种或多种。可以理解的是,QELF文件中的QELF程序并不限于上述四种指令,其还可以根据实际应用需要,为其他指令的QELF程序。QELF文件存储于所本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种可执行程序的跨平台实现方法,其特征在于,包括 读取标准格式文件; 从所述标准格式文件中选择与当前平台环境相匹配的可执行程序,将所述可执行程序加载至当前平台的内存中; 运行所述加载的可执行程序。2.如权利要求I所述的方法,其特征在于,所述标准格式文件为QELF文件,所述QELF文件中包含至少ー个QELF程序; 所述QELF程序为X86指令的可执行程序、ARM指令的可执行程序、Java指令的可执行程序和Misc指令的可执行程序中的任ー种或多种。3.如权利要求2所述的方法,其特征在于,所述QELF文件中的任一QELF程序均包含用于调用所述当前平台的标准服务接ロ的函数; 所述QELF程序为调用所述标准服务接ロ开发得到的软件源代码经编译获得的可执行程序。4.如权利要求3所述的方法,其特征在于,所述标准服务接ロ为所述当前平台的原生服务接ロ按预设的标准接ロ规范封装后获得的服务接ロ。5.如权利要求1-4任一项所述的方法,其特征在于,所述当前平台包括 Palm操作系统、Symbian操作系统、Windows mobile操作系统、Android操作系统、iPhone操作系统、黑莓操作系统、Windows操作系统、Unix操作系统及Linux操作系统中的任ー种或多种。6.一种移动終端,其特征在于,包括 读取模块,用于读取标准格式文件; 加载模块,用于从所述读取模块读取的标准格式文件中选择与当前平台环境相匹...

【专利技术属性】
技术研发人员:谢勇波
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1