手机软件开发中的程序加载方法研究及应用

被引量 : 0次 | 上传用户:zhuce121566
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
目前的功能手机的程序加载一般采用的方法是静态链接,将所有的应用程序与内核一同编译成目标机上的可执行的二进制文件,然后下载到非易失性的存储设备上运行。这种方案要完善手机功能,只有不断增加手机的本机应用程序,无法加载第三方应用程序。然而,手机系统的硬件资源非常有限,不断增加本机应用程序与非易失性的存储设备存储容量之间是矛盾的,因此目前的功能手机实现第三方应用程序加载基本上都是通过中间件技术,譬如通过移植J2ME中间件技术来加以实现。可是移植J2ME将带来较大的系统开销,大约要占用1.2MB的ROM加载空间,运行时需要600KB的RAM空间,效果不是非常理想。本文通过对嵌入式系统的程序静态加载方法、函数跳转的实现方法、手机动态加载第三方应用程序的方法以及ELF文件的动态加载过程的研究,根据一个具体的项目需求,要在功能手机上以极小的系统开销实现第三方应用程序的动态加载,提出了一种新的实现动态加载的方法,其基本思想是:首先通过ADS1.2在PC机端编译,指定虚拟的ROM地址和RAM地址编译形成ELF文件,文件中包含所有需要重定位数据的地址(虚拟地址),然后将ELF文件中的各个段按照自己设置的文件格式形成一个新的文件。动态加载时在手机RAM中申请与文件大小相同的空间,将整个文件载入到RAM中。通过重定位的数据,找到该数据所在的位置,把该数据地址减去虚拟的RAM地址再加上目标端申请到的空间的首地址,这样就完成了重定位。然后把手机端的PC指针指向代码的首地址,直接运行即可完成动态加载。根据本文提出的动态加载方法,在MTK手机开发环境下设计并实现了一个可以实现第三方应用软件动态加载的开发平台,扩充了功能手机的程序加载功能。通过测试,该动态加载平台占用的系统资源极少,加载时需要占用目标端的ROM空间为31KB,非运行状态所需的RAM空间小于1KB,成功地在1GB的t卡上加载了第三方开发的满足MTK编程规范的全部应用软件2450个,占用t卡不到600MB,而且都能够顺利地运行,速度比较理想,很好地解决了应用方和厂商方提出的问题。
其他文献
对21例实施正颌手术的唇腭裂患者进行术前及术后护理,探讨唇腭裂患者正颌手术术前与术后的最佳护理措施。做好唇腭裂正颌手术患者的术前与术后护理,在正颌治疗中起关键性作用
目的利用血管内超声观察冠脉左主干分叉病变介入治疗过程中的病变特征及不同治疗方案对病变特征的影响,探讨左主干分叉病变的处理策略。方法18例患者经定量冠脉造影确定需治
应用ZungSAS和ZungSDS对340名50岁以上中老年人进行评定和调查。结果:1.SAS、SDS评定 ̄x±s分别为33.26±7.81和33.28±8.67.2.女性老人SAS、SDS评分均高于男性(P<0.05及P<0.01)。3.老年组和老年前组SAS、SDS均值无差异。4.逐步回归分析提示,女性老人,收入少,疾病、健
目的探讨调强放射治疗晚期宫颈癌的近期疗效,对比调强放射治疗与常规放疗的靶区及危及器官的剂量分布,同时验证PCNA的测定可作为宫颈癌评价预后的手段。方法32例晚期宫颈癌患
通过7个钢筋钢纤维高强混凝土梁柱节点和1个钢筋高强混凝土梁柱节点的低周反复加载试验,研究钢筋钢纤维高强混凝土梁柱节点的受力机理及破坏模式,分析钢纤维体积率、节点核心
<正> 为了保证清水砖墙砌筑质量,现就其组砌方法谈谈自己的体会,供参考。一、排砖撂底一般砖混结构(或外砖内模)建筑,在砌筑首层清水砖外墙之前,必须做好排砖撂底工作。通过
文章介绍了美国现代主义风景园林设计大师丹·克雷的经历和景观设计的理论与实践
介绍等强直螺纹连接技术的一种新方式——滚压直螺纹连接。就滚压加工钢筋螺纹的几种形式作了简单介绍, 并详尽地介绍了剥肋滚压直螺纹连接技术的开发、特点、应用及经济分析
哈普林是二战后美国著名的风景园林设计师 ,他的作品和理论具有非常广泛的影响。本文介绍了哈普林的主要建成作品及其设计思想
前言心肌缺血再灌注(Ischemic reperfusion,I/R)损伤是临床实践中常见的组织器官损伤,其准确机制仍不十分清楚。研究结果表明心肌缺血再灌注损伤是一种急性炎症反应,其中缺血