理解开源-android

提几个有趣的问题。

谷歌为什么开源android

简单说就是,抢手机份额。
移动互联网是未来,而苹果用ios率先抢占了手机市场。很明显苹果不带谷歌玩,谷歌在移动互联网活不下去了,就像现在的百度。为了活下去,必须让用户的手机上安装谷歌的应用。谷歌的方法是开源自家的手机操作系统android,免费用。

大家一看有个开源的手机操作系统,赶紧支持。后来android份额超过85%。android手机搭载谷歌应用,谷歌活下来了。

谷歌和linux内核的关系(只讲宏观,细节不完全准确)

  1. google对linux内核做了修改,开了个门。由于linux内核遵循GPL,所以这个开门程序也遵循GPL,必须开源,回合到linux版本树。
  2. google搞了一个AOSP,走kernel上开的门。由于走门的方式是普通的系统调用,所以AOSP可以不遵循GPL。linux内核管不着。AOSP遵循Apache 2.0。
  3. 开门,再整一个AOSP走这个门,目的是,允许手机厂商将自己的硬件驱动闭源。因为按linux原有机制,驱动和内核跑在一起,由于linux内核遵循GPL,所以驱动必须开源,相当于公布了硬件参数,厂商当然不愿意。而通过谷歌的手段,驱动是基于AOSP,而AOSP遵循Apache 2.0,所以驱动允许闭源,因此手机厂商愿意上android。
  4. APP也基于AOSP。

手机份额抢完了怎么办

那就闭源呗。
将安卓开源的目的是抢手机份额,现在安卓手机份额超过85%,基本把手机市场抢光。既然开源的目的已经达成,为什么还要继续开源呢?
所以谷歌闭源安卓,对手机厂商做出严格的限制,是正常的事。

你可能感兴趣的:(理解开源-android)