Linux手机软件平台创建工具
摘 要: 随着手机功能的丰富和使用领域的拓广,手机软件平台技术越来越被重视。手机软件平台对手机开发和手机性能上的影响,已经使其成为技术领域内一个研究的热点。为了使基于Linux 的嵌入式软件平台的建立、集成和分配更容易,需要一个手机软件平台创建工具,以提高手机软件平台的开发效率。手机软件平台创建工具是一个图形用户界面的系统集成和分配工具,功能覆盖了创建手机软件平台的全过程。分析了基于Linux 的手机软件平台的优势,探讨了软件包管理方式,描述了平台创建工具的系统结构和相关技术,并讨论了该工具在手机软件开发过程中所起的重要作用。
本文引用地址:http://www.amcfsurvey.com/article/164819.htm1 引言
随着手机功能的迅速发展,越来越多手机上的软件功能已经和个人计算机上的软件功能非常相近。因此,手机也需要功能更加强大的操作系统作为支持。
基于Linux 操作系统的手机软件平台,已经被认为是下一代手机软件平台。
当前,已经有很多手机开发商开始采用手机软件平台。但是,手机软件平台在提供可靠的手机操作系统和优质软件的同时,需要花费大量的时间、人力、财力进行创建。原始的手机软件平台开发方式不仅效率低,而且对开发人员的技术水平的要求较高,需要经过大量的培训才能胜任,这必然会增加产品的开发成本。手机开发商们正在为创建属于自己的下一代手机软件平台寻找更加方便、高效的方法。
2 基于Linux的手机软件平台
个人计算机因为拥有操作系统以及运行于操作系统之上的软件,而具有丰富的功能。同样,手机也在提供不断丰富的功能,需要强大的操作系统和软件作为支持。与其它操作系统相比,采用开放源代码的Linux 操作系统作为手机操作系统能够大大降低手机开发成本。开放源代码的另一个好处是允许手机生产商根据实际情况,有针对性地开发适合自己手机的Linux 操作系统,这样既能让自己的产品有特色,又能避免受制于人,还能够满足用户多方面的应用需求。
手机软件平台的概念可概括为:
(1) 手机软件平台基于一定的硬件架构之上,特定的软件平台一般只能用于特定厂商的硬件体系;(2) 手机软件平台提供对应用程序的基础支持;(3) 手机软件平台自带一些应用;(4) 手机软件平台能够方便的进行扩展,手机软件开发者能够在平台上方便的建立新的功能,这也是最重要的功能之一。
手机软件平台架构在手机操作系统之上,通过抽象层与不同操作系统进行集成。一个完整的软件平台主要包括中间件、系统抽象层、关键应用软件和SDK(Software Developers Kit)开发环境。软件平台不能取代操作系统。但是就应用软件来说,可以在软件平台上直接开发,这也是手机软件平台的一个重要应用。
手机生产商之间的竞争越来越激烈,新产品层出不穷,面对新的市场要求,只要在已有平台上加以扩展,就能很快推出新的手机产品,在竞争中取得优势。
3 平台创建工具开发背景
3.1 手机软件平台开发现状
手机的整个开发流程如图1 所示,其中手机软件的开发包括创建平台和产品开发两部分。
图1 手机开发流程
创建手机软件平台是一个庞大的工程,需要构建很多功能部件,每一个功能部件都独立存在,但又相辅相成,需要多方的协同合作共同完成,整套流程需要很长时间。
目前做完全构建的实际情况是,对一个功能部件做一次完全构建一般需要3 个小时以上,开发人员只有等待构建完成才能进行下一步的工作。在理想情况下,3 小时后构建成功,并且测试通过。但一般情况下,由于源代码的问题,构建经常在进行过程中半途失败,需要修改源代码重新进行构建。即使构建成功,如果在测试过程中发现问题,又要进行代码修改,然后重新进行构建,如此反复数遍。对于经验不足的开发人员,或者处在一个功能部件开发的初期,这种重新构建的出现频率会大大提高,这将浪费大量的精力,工作效率也会大幅下降。任何一个功能部件的修改对整个平台都会造成影响,需要对整个平台重新进行建构,面对竞争越发激烈的市场,这将增加产品的开发成本、增长开发周期。
未来手机产品竞争最核心的是软件平台,并将成为一些大的手机品牌的最后竞争领域。Linux 操作系统作为一个免费开源系统,Linux 手机软件平台在降低手机生产商研发成本、提高新品上市响应时间、实现产品个性化设计三个方面表现尤为突出。Linux 手机软件平台已成为众多资深专家和手机生产商认定的下一代手机软件平台,有着广阔的发展前景。
3.2 RPM 软件包管理。
一个解决现状的方法是使用软件包管理方式。包管理系统由包括程序、数据、文档、配置信息的众多文件组成,它们存储在一个特殊的格式文件--包文件中。基于包的系统集成和发行,已经广泛应用于当代的Linux 发行商。目前两个最流行的包管理方法是Red Hat 的RPM (Red Hat Package Manager)和Debian 的dpkg.
RPM 软件包管理是开发打包系统,任何人都可以使用。对于终端用户,RPM 提供了很多功能,使得软件的维护远比以前容易。通过简短的命令就可完成RPM 包的安装、卸载和升级,所有杂乱的细节都经过了处理。 RPM 对已经安装的包及文件形成的数据库进行维护,可以在系统上使用功能强大的查询和校验功能[1].一个RPM 包中的应用程序,有时除了自身所带的附加文件保证其正常运行以外,还需要其它特定版本的文件作为支持,这就是软件包的依赖关系[2].
使用RPM 管理软件后,软件的安装流程如图2 所示。
图2 使用RPM 的软件安装流程图。
4 平台创建工具开发背景
经过十多年的发展,基于Linux 的开发已经不再是最开始对所有内容进行构建的时代。在桌面领域,Linux 已经成为一个拥有成熟的软件构建区块和综合工具的开发系统。然而,在嵌入式领域,在将传统的原始数据驱动开发模式转换为新的基于包的开发模式方面,Linux 操作系统还存在一些差距。
原始数据驱动开发模式的主要问题在于,它没有一个有效的方法去控制功能部件之间的分界,这会导致功能部件代码之间的依赖超过了API (ApplicationProgramming Interface),最终会使整个平台功能部件间的关系变得更加复杂。这些复杂的功能部件将堆积在平台源代码中,使以后的识别和修改更困难。经过多年的发展,整个软件平台都将难以进行扩展、剪裁和定制,以适应产品改变的需要。
由于手机生产商已经确认将Linux 作为下一代手机软件平台,基于Linux 的手机产品功能开发将成为一个主流。为了让开发得以实现,需要建立一个合理的综合开发环境,其中包括整套的开发流程和开发工具,其关键在于如何定制和发行一个完整的软件平台。
尽管传统的基于源代码的系统集成依然可以满足需求,但是积累的工程经验倾向于基于软件包的系统集成和部署方案,因为基于软件包的方案已经被证明更加可靠、灵活、安全。可以预见,基于软件包的系统集成方案将在平台集成和发行上占据优势。
Linux 企业解决方案提供商试图缩小Linux 操作系统在嵌入式领域的差距。但是,只有先建立适合开发的基础结构,Linux 企业解决方案提交的包格式才能充分发挥作用。手机软件平台创建工具,就是一个基于RPM 的平台构建、管理、部署系统工具,还对嵌入式系统的发行提供强大的支持。图3 举例说明了平台创建工具基于RPM 软件包的工作模式。
linux操作系统文章专题:linux操作系统详解(linux不再难懂)
评论