靠谱的APP软件开发公司

您的位置:首页 > 新闻动态 > Android 助力云计算

Android 助力云计算

2015/7/18

在一个充斥着蹩脚比喻的行业,突然有人跳出来并抓住富有创造力的业务和 IT 人员的想象力,这一点也不奇怪。云计算 就是这样一种比喻,而且它已经(请允许我这样说)席卷了全球。但云计算到底是指什么呢?

  当然,云是由许多水分子组成的,几乎有几亿个。云没有中央控制,基本上可以随风吹向各处。从这个角度来说,Internet 中无数个具有各种用途的客户机和服务器以及驱动其发展的控制实体就像是云。将这一概念与手机公司带给我们的无线数据革命结合后,我们似乎就处在一种无形的 “云” 计算力量中了。

  自电子计算机诞生以来,就一直有人对计算机的 4 个主要功能部分进行明确的划分:

  提供人机接口的输入/输出(I/O)设备

  中央处理单元

  易失性随机访问存储器(RAM)

  非易失性存储器

  前三个部分将 “计算” 功能植于计算机中。第 4 部分通常存储有价值的数据资产,这一部分将随着云计算的到来而发生翻天覆地的变化。有价值的数据驻留在非易失性存储器中,以免因为断电而丢失 — 不管这种断电是有意还是无意。非易失性存储设备一般为硬盘,但也可以是安全数字(SD)卡之类的固态设备,甚至可以是磁带设备(不过现在已经过时了)。但是这些设备都有它们的局限性。

  随着时间的流逝,技术也在不断进步,出现了计算机网络,在计算机网络上,企业中有价值的数据资产都集中在一台由多个终端共享的计算机中,而且定期对这些数据进行备份是一项基本的 IT 职能。这种模型(称为大型机模型)提供了许多优点 — 其中之一就是它减轻了每个终端位置的工作负载。仅具有一个微型终端(键盘、鼠标、显示器和 PC)的小型办公室可以访问 GB 级的企业数据,而无需提供大型机的处理能力 — 只要它们通过电缆连接在一起。

  下一个巨大的范式转变来自于我们所熟知的 Internet,在其中,庞大的计算机系统(本地网络)可以为位于全世界任何可以使用卫星天线的位置的大量微型终端提供服务。这种配置的无线远程特点即被称为云。

  随后出现了个人数字助理(PDA)、移动电话和智能手机,计算机的微型化已经发展到我们熟知的并非常喜爱的手持形式。一夜之间,智能终端已经成为无数高生产力人员的工具,它们以惊人的速度生成和消费着信息。

  在 20 世纪 90 年代中期和末期,电子邮件和万维网(World Wide Web)是主导云的最流行应用程序。大多数人都使用 Web 浏览器与云进行交互并认识到 Internet 是一种比较简单的应用。随着 Yahoo! 和 Google 在商业方面的成功,TB 级服务器和网络连接取代本地硬盘成为首选的非易失性存储设备。就像许多具有超前思维的预见者所预言的那样,云已经成为了一种像水、电话和电那样不可缺少的现代实用工具。通过将移动电话数字网络作为主要的 Internet 服务提供商(Internet Service Provider,ISP),云已经发展为使用几百万个微型手持设备作为显示服务器数据的主要工具。

  就像云到处移动和随风变化那样,这些微型手持设备的操作模式也是如此 — 终端变得越来越小,功能越来越强,可移植性增强了许多,服务器的功能也越加强大,通过软件虚拟化并根据使用收费,能更好地满足用户的数据需求。

  公司不再需要维护大型而昂贵的服务器 “集群”,现在有另一种成本更低的方法:通过 Google、Amazon 和 IBM? 之类的供应商实现服务外包。通过虚拟化,以前在定制环境中运行的应用程序现在可以被复制或 “映像化”,从而在供应商服务器的云中运行。通过恰当地对这些服务计费,公司就不需要在服务空闲期间支付高额费用。

  在硬件技术不断进步的同时,软件技术也在不断发展,并且我们看到出现了很多新的应用程序。例如,基于位置的服务可确定接近手机讯号接收塔的企业、内置全球定位系统(GPS)可以确定您的位置。出现了下载和测试有用程序和数据文件的新市场,比如用于购买和下载音乐的 Android Market 和 Amazon MP3 Market。毫无疑问,这些独特的新的云计算应用程序将进一步发展 — 例如,公司可以分类和选择区域联系人信息,然后在区域销售人员休息时自动将当天的促销电话列表发送到他们的基于 Android 的手机中。

  云计算将可移植设备与强大的服务器互为补充,它需要一个能够让服务器架构师和程序员最大程度利用小型客户机机器的操作系统。Android 就是这样一种操作系统。

  Android 架构

  首先,Android 是一个用于移动设备的软件堆栈。这意味着优先级最高的事是保持电池电量和有效地管理有限的内存资源。Android 系统堆栈有 5 个不同的层:

  Acorn RISC Machine(ARM)Linux 内核构成了所有其他层所依赖的坚实基础。Linux 被证明是一种高可靠性的技术,而 ARM 处理器以能在非常低的电源需求下发挥高性能而著称。

  库提供可重用的和可共享的低级代码,用于基本函数,如 codecs(用于编码和解码数字音频与视频的软件),以及用于在小的显示器上表示丰富图形的函数、支持在云中加密 TCP/IP 流量的安全 shell,以及支持 Web 浏览(WebKit)的组件、SQL 数据库功能(SQLite)和可以在 Linux 系统中使用的标准 C 库功能。

  Dalvik 运行时字节码解释程序非常类似于 Java? 语言的字节码解释程序,它添加了几个独特的特性,使用独特的方式定义了 Android 的安全和电力保持模型。例如,当前运行的每个应用程序都运行自己的用户 ID 和解释程序副本以严格区分进程,从而实现安全性和可靠性。

  Android 应用程序框架允许您使用和替换您认为适合的组件。这些高级 Java 类与定义 Android API 的组件紧密集成在一起。

  Android 核心应用程序包括 WebKit 浏览器、Google 日历、Gmail、Maps 应用程序、SMS messenger 和一个标准的电子邮件客户机等等。Android 应用程序是用 Java 编程语言编写的,您可以随时从 Android 市场下载更多的 Android 应用程序。

  每个 Android 应用程序可以被进一步划分为不同的功能单元:

  活动(Activities)

  目的(Intents)

  服务(Services)

  安全模型(Security model)

  活动

  活动 是 Android 应用程序的一个组件,它扩展 Activity 基类并定义一个由响应事件 的 视图(View)组成的接口。如果一个应用程序由 3 个窗口(例如,一个登录窗口、一个文本查看窗口和一个文件查看窗口)组成,那么每一个窗口通常用一个不同的 Activity 类来表示。