• 精选
  • 会员

系统的对立:开放与封闭

2019年6月1日  来源:人人都是产品经理 作者: 提供人:kecai28......

Android和iOS在系统层面的差异化极大,其中最大的不同之处在于系统的开放与封闭,让二者在定位、发展和战略走向了两个极端:

  • Andorid的编程语言使用跨平台能力更强的java,iOS采用执行效率更高的Objective-C和Swift。
  • 两者运行机制不同:iOS采用的是沙盒运行机制,Android采用的是虚拟机运行机制。
  • 手机厂商对Andorid优化的参差不齐和第三方app开发者没有完全统一的开发标准,而iOS则没有这些问题。
  • iOS对后台进程的管制严格,通知消息等唤醒动作有专门统一的激发要求,而Android的后台允许常驻对内存和cpu开销较大。

1. iOS

iOS是基于UNIX开发的系统,并且有别于Android的开源开放,iOS的封闭性为所有开发者统一了约束规范,苹果掌控着app store所有应用的上架和迭代话语权,所有运行在iOS上面的应用程序都需要严格地遵从苹果的要求,小到ui设计大到整体的业务逻辑都在其掌控之下,这避免了类似Android恶意应用泛滥的情况,并一定程度上提高了第三方app的统一性和整体质量。

但不可避免的是,这缺失了Android系统的可玩性和可拓展性;让人欣慰的是,近年来iOS系统级的功能应用都在逐一完善,对于喜爱iOS的重度用户来说,越狱已经不再是刚需。

沙盒机制不是iOS特有的,但iOS玩转得得心应手。应用程序单独运行在一个封闭的沙盒之中,所有的非代码文件比如文本、图片、视频、属性集合等都集中规范在特定沙盒空间中,不同应用相互访问这些数据时,需要得到严格的授权,这样极大程度地保证了数据安全和用户隐私。沙盒目录下有三个文件夹Documents、Library(含有Caches和Preferences目录)、tmp。

  • Documents:存放文件数据,系统会自动备份需要的数据。
  • Library:存放缓存文件和设置配置文件。
  • tmp:临时目录文件,会被频繁的删除和写入数据。
分与合,浅谈iOS与Android的对立和统一

iOS系统分为四个层级,这里我们同样不做过多深入,仅限了解即可:

  • 可触摸层(Cocoa Touch Layer):界面控件、通知中心、地图和广告服务等等。
  • 媒体层(Media Layer):图像引擎、音视频引擎、游戏控制中心。
  • 核心服务层(Core Services Layer):网络控制、数据存储、其他硬件接口访问。
  • 核心系统层(Core OS Layer):内存管理、电池管理、安全认证等待。

区别于iOS拥有极高的软硬件契合度,Andorid系统具有开源特性,手机厂商都有针对性地对系统源码进行改写和优化,以更契合自家的硬件设备和满足消费者的需求,同时也能在硬件差异性难以明显拉开的情况下,扩大体验的差异化。

2. Android

Android采用了由C语音实现的linux内核作为底层系统,在应用软件和手机硬件中做为一个中间支持层存在。集成了所有应用服务所需要的驱动,通过上层发出的指令来调度驱动服务。

Android采用了虚拟机运行机制,这意味着每启动一个app,都相当于启动了一个独立的虚拟机,并且支持后台常驻,即便

用户退回到桌面或者访问其他app,都不会打断当前既有的任务回话,并且多个应用间能够串联启动,支持数据和文件共享。在这样的系统机制下,对cpu和内存的负担乃至电源消耗自然也要远大于iOS。

分与合,浅谈iOS与Android的对立和统一

同样地,Android的的体系架构也大致分为四个层级,从下至上依次是:

  • Linux内核(Linux Kernel):内存和进程管理、显示驱动、摄像驱动、电源驱动等等。
  • 系统库(Libraries):Android运行环境(虚拟机和核心库)、java的功能函数、数据库、浏览器引擎、渲染引擎等等。
  • 应用框架(AppLication Framework):提供指令Api,系统级应用的管理器。
  • 应用程序(AppLications):浏览器、电话薄等系统层面应用。

值得一提的是,Android一直在低调而努力地布局智能硬件、可穿戴设备和其他移动市场,涵盖TV、车载导航、智能手表等等,配合硬件厂商推出了多种基于Android适配系统,从中能看到谷歌发力硬件生态的前瞻性和决心。

而iOS先天不足的闭源特性,导致苹果只能亲力亲为关上门来自己研究,除了2014年推出了智能手表apple watch之外,据称还在投入研发搭载iOS系统的无人驾驶汽车。随着5G时代的到来,物联网必定会催生出新一波的改变人们生活的变革浪潮,而为此深耕多年的Android其表现令人期待。

Android平台原理机制

iOS 入门简介

本文仅针对系统层面进行简单介绍,详情请点击引用链接查看。

iOS / Android / Windows Phone / Symbian / yunos

如涉及版权,请著作权人与本网站联系,删除或支付费用事宜。

0000