【Android源码 栏目提醒】:网学会员,鉴于大家对Android源码 十分关注,论文会员在此为大家搜集整理了“Android系统分析 - 网络与通信”一文,供大家参考学习!
Android操作系统分析穆英华基于Linux内核的
Android操作系统尽管非常年轻却已经占领了智能手机9的市场而且还在向其它移动平台及嵌入式领域迅速扩张着。
下图为2010年一季度的智能手机操作系统占有率统计。
在国内外制造商纷纷推出基于
Android的产品、
Android Market中的应用程序飞速增长的背景下有必要对
Android操作系统的情况进行调研对比其与Midinux的优劣势、估计其机遇或威胁。
本文将从以下几个方面分析
Android目标用户群、支持硬件架构、平台技术架构、应用程序数量、未来发展方向。
一.目标用户群覆盖高、中、低端智能手机用户是
Android的主要目标尤其是市场上基于ARM11处理器的智能手机已经降到1000元人民币的价格让低成本的硬件配置也可以运行
Android系统更使得
Android从中高端扩展到低端成为可能。
除智能手机外
Android已经渗透到了平板电脑、上网本乃至汽车电子、机顶盒、电子相册、无绳电话等各移动平台和嵌入式产品领域。
对于
Android的智能手机和平板电脑用户
Android Market中种类丰富和数量众多的应用程序是其选择
Android的重要原因没有众多可选择的第三方应用程序操作系统就是再性能优异也不会对用户有任何杀伤力。
这一点类似于苹果的iOS但总体来说
Android的用户不会像苹果用户那样忠诚、他们中的很大一部分也不会像苹果用户那样为数码产品花费那么多金钱可以说
Android更大众一些。
二. 支持硬件架构1.支持的硬件架构目前
Android已经移植到了ARM、X86、MIPS各体系架构中的很多处理器核、处理器芯片、以及更多的板级结构上对PPC等体系架构的移植也早已开始。
如高通、三星等芯片制造商推出的基于ARM Cortex-A8处理器核及PowerVR显示核心的处理器芯片早已移植
Android成功并被联想的LePhone、魅族的M9等许多手机采用多核的Cortex-A9也蓄势待发。
随着较低端的基于ARM9核的一些处理器也移植
Android成功
Android将在低端手机及其它低硬件配置设备中进一步渗透。
随着基于ARM及DSP双核的OMAP处理器的部分型号移植
Android成功
Android在一些专用领域也将进一步扩展。
2.硬件架构的支持上段介绍了
Android对硬件架构的支持其实反过来作为一种嵌入式操作系统获得硬件芯片对
Android的专门支持也是很重要的。
例如山寨手机芯片MTK成功的原因之一就是采用Java开发手机以降低开发难度、缩短开发周期。
而廉价的ARM7内核通过软件虚拟机跑Java很吃力MTK采用改进的硬件上支持Java加速的ARM7EJ内核后便有效地提高了性能同时还大大降低了功耗。
所以从长远计
Android应该与ARM、Intel等公司结成联盟研制专门支持
Android的处理器芯片。
三.平台技术架构1.软件层次上图为
Android平台技术架构图。
由下至上一共分为四层。
第一层Linux内核Linux Kernel。
Android为基于Linux内核的操作系统尽管它已经被Linux除名。
Linux内核的强大功能为
Android提供了良好的发展基础另外此层还包括一些与移动平台相关的硬件设备驱动包括液晶屏驱动Display Driver、摄像头驱动Camera Driver、蓝牙驱动Bluetooth Driver、Flash驱动Flash Memory Driver、用于
Android独有的进程间通信方式的Binder驱动Binder Driver、USB驱动USB Driver、键盘驱动Keypad Driver、WiFi驱动WiFi Driver、音频驱动Audio Driver、电源管理Power Management。
第二层库Libraries。
包括各种底层标准库和
Android为移动平台添加的专用库以及
Android运行时库。
各种库如下界面管理Surface Manager、多媒体框架Media Framwork、SQLite数据库、3D图形库OpenGLES、绘制字符的FreeType、浏览器内核Webkit、2D图形库SGL、保障网络通信安全的SSLSecure Socket Layer、libc库。
Android运行时库如下Dalvik Java虚拟机Dalvik Virtual Machine Dalvik不同于标准的Java虚拟机它基于寄存器而不是基于栈它的字节码也不同于标准Java虚拟机其采用的.dex格式更节省存储空间。
核心库Core Libraries包含了Java编程语言核心库的大部分功能。
第三层应用程序框架。
为上层的应用程序提供框架及API。
第四层应用程序。
包括谷歌开发的主屏幕Home联系人Contact电话Phone浏览器Browers等主要应用程序和
Android Market上的海量第三方应用程序。
2.系统运行时的动态层次虽然
Android与标准的Linux有很多不同之处且已被Linux除名但归根结底还是一种Linux操作系统。
标准Linux运行时的层次如下用户空间运行进程在ARM-Linux中每个进程有3G的虚拟内存空间。
内核空间运行Linux内核在ARM-Linux中内核有1G的虚拟内存空间。
Android在动态层次上与标准Linux只有一个不同就是采用了Java虚拟机每个Java应用对应一个Linux进程。
Android运行时的层次如下
Android应用空间ServiceproxyActivityprovider对应Linux的进程。
内核空间与标准Linux内核空间相同。
四.应用程序数量据6月的统计数字
Android Market上的应用程序达到了约6万个预计到年底将超过十万个。
虽然与苹果的App store的约25万个应用程序还有差距但凭借谷歌和各大合作伙伴的支持以及迅速扩大的用户群
Android与iOS的差距将进一步缩小。
五.未来发展方向1.云计算在人“云”亦“云”的时代云计算已经成为一种“时尚”但
Android却是实实在在的理想的云计算终端它有以下几个优势
Android中可靠的Linux内核提供了软件的基础。
Android的最佳硬件搭档——ARM提供了超低的功耗和超高的效率。
Android中的SSL库提供了保障网络通信安全的基础。
Android的Dalvik虚拟机提供了比普通Java虚拟机更高的程序执行效率和更低的功耗。
Android庞大的第三方开发团队将会提供越来越多的相关应用程序。
谷歌的强大技术实力、尤其是其在云计算领域的研究提供了坚实的后盾。
2.物联网越来越多的设备乃至物体将接入Internet已是不争的趋势基于
Android的移动平台和嵌入式设备将担负起终端和网关的作用。
例如住宅里的各种智能家电将实时信息通过蓝牙、WiFi、ZigBee等方式传递给
Android设备
Android设备通过以太网、3G、4G等方式接入Internet。
若在
Android设备上架好Web服务器则远端的
Android平台或PC机用户将无需安装应用软件通过网络浏览器就可以实时查看节点信息、甚至发送控制信号。
3.未来的隐忧
Android发展极为迅速但也埋下了许多问题不够开放。
虽然
Android自称是开源的、可下载内核
源码但很多东西还是看不到。
Edited by Foxit ReaderCopyrightC by Foxit Software Company2005-2008For Evaluation Only.设备种类太杂。
Android早已不只用于手机、平板电脑设备甚至已经不是移动平台所专用而是扩展到了整个嵌入式领域可以说只要嵌入式设备上有液晶屏就可能采用
Android。
这势必导致驱动和API的分化和复杂化再加上
Android不同版本号的差异问题会越来越严重。
山寨机的春天。
广大山寨厂商将告别MTKJava的时代开启ARM Cortex-AAndroid的时代由于开发的软件门槛较低低质量的内核移植和应用程序开发将扰乱市场。
例如之前未从事过
Android开发的我从网上简单查阅了一些资料就可以编写几个小的应用程序可见入门门槛之低见下图。
六.结论
Android在今后较长时间里还会快速发展、与苹果的iOS争霸移动平台市场它的发展也对MIDinux构成了极大的威胁尤其是其海量的第三方应用程序是MIDinux无法比拟的。
由于MIDinux与Maemo的亲缘性若MIDinux能够兼容Meego的应用程序那么就将有力地抵消
Android的威胁。
上一篇:
在Ubuntu7 10上编译android 1 概述 上个星期看到android开放源代码
下一篇:
7*30m公路预应力混凝土连续梁桥上部结构设计