写点什么

取代 Android?Fuchsia 要的是统一操作系统平台

  • 2019-05-15
  • 本文字数:3125 字

    阅读完需:约 10 分钟

取代Android?Fuchsia要的是统一操作系统平台

Fuchsia——犹抱琵琶半遮面

Android 和 Chrome OS 可能是谷歌最知名的 OS 项目,但实际上这两年曝光量逐渐增大的是谷歌正在开发的第三个操作系统——Fuchsia。


我们对 Fuchsia 的了解是:它是一个开源项目,类似于 AOSP(Android 开放源代码项目),但 Fuchsia 可以运行各种设备,从智能家居设备到笔记本电脑和手机等等。它也被认为是建立在一个谷歌构建的名为“zircon”的全新内核之上,而不是构成 Android 和 Chrome 操作系统基础的 Linux 内核。


除此之外,我们对 Fuchsia 的所知甚少,只在两年前看到过 Fuchsia 的 UI 界面。



Fuchsia 与我们见过的其他操作系统完全不同,包括 Android。从诞生之日起,Fuchsia 就笼罩在一团疑云之中,我们不知道它的用途是什么,是否为了取代 Android 而生,亦或只是谷歌的一次玩票实验。


彭博社曾报导称:谷歌新研发的 Fuchsia OS 可能会在 5 年内取代 Android 和 Chrome OS。报道指出,这两年谷歌一直在加大投入研发名为“Fuchsia”的项目,目前参与研发的工程师已超 100 名。


Fuchsia 团队在讨论一个野心的计划:打造一个统一的操作系统,让其既可以适用于 Google 内部的所有设备如 Pixel 手机和智能音响,也能用在搭载 Android 或 Chrome OS 的第三方设备上。对此,Google 内部的工程师的计划是:在 3 年内,让 Fuchsia OS 应用在音响等智能家具设备中,然后扩展到 PC 或更大的设备上,并计划在未来 5 年内取代 Android。


此报导一出,谷歌发言人火速辟谣:他表示:“Fuchsia 是谷歌众多实验性开源项目之一,我们目前还没有提供该项目的其他详细信息,2015 年,Lockheimer(Android/Chrome 负责人)曾说过公司未计划让 Android 取代 Chrome,现在这个立场仍然适用”,但他拒绝进一步置评。


但搜索巨人的这一辟谣并未消除坊间关于 Fuchsia 的疑云,各种不着边际的猜测依旧层出不穷。有人甚至认为,Fuchsia 项目可能是谷歌的一个“保住高级工程师”的项目,目的是想让谷歌的人才保持忙碌的状态,避免他们跳槽。


在 Windows、iOS、Linux 等成熟操作系统瓜分完市场的今天,为什么谷歌要大费周章地去开发一个全新的操作系统?仅仅只是因为这是你没有玩过的全新版本?

操作系统以外的故事

在聊谷歌开发 Fuchsia 系统的故事以前,我们先来回顾一下两个具有强关联性的事件。


2010 年,谷歌惹上了一桩官司,这场官司旷日持久地打了将近十年,现在已经上诉到了美国联邦最高法院做最终裁决,结局未知。是的,你没有猜错,这场官司就是版权史上赫赫有名的“谷歌Java侵权案”


事件起因发生在 2010 年,作为 Java 拥有者的 Oracle 认为,谷歌在 Android 系统上无偿使用了 37 个 Java APIs,这侵犯了他们的专利,而在 Android 中还有 9 行代码抄袭了 Java,这侵犯了他们的版权。


那 9 行代码造成抄袭的缘由据说是因为当时 Google 的一位工程师在为 Android 项目工作的同时,又为 Sun 公司的 OpenJDK 效力,后来,该工程师直接从 OpenJDK 中复制了 9 行代码到 Android 中,由于 Google 没有得到 Sun 公司的授权,所以 Oracle 收购 Sun 之后,Java 易主,这就相当于侵犯了 Oracle 的版权。


这一场官司从 2010 年打到了 2019 年,期间判决结果数次反复,既有谷歌胜诉的时候,也有 Oracle 胜诉的时候。最近一场裁决结果是认定谷歌侵权,需要赔偿 Oracle 88 亿美元。今年 1 月份,谷歌不服判决,选择了上诉美国最高法院,其判决结果将为此事件做最终裁决。


在此之后,谷歌开始了对 Kotlin 语言的大力投入,其支持力度之大甚至超过自己的亲儿子 Go 语言。2017 年,Google I/O 大会上宣布 Kotlin 成为 Android 开发的一级语言。今年则更进一步,官宣 Kotlin 成为 Android 开发的首选语言。Java 失宠了。此为其一。


2018 年初,谷歌发布了 Flutter 的第一个 Beta 版本,同年 12 月,Flutter 1.0版本正式发布。Flutter 是谷歌推出的 iOS、Android 平台的高质量原生应用的全新移动开发 SDK,用 Dart 语言编写。Dart 是谷歌开发的脚本语言,现在已经用于 Google 内部的项目中,而 Flutter 是 Dart 中构建跨平台、高性能移动应用程序的工具。


虽然按照谷歌的说法,Flutter 的推出只是为了与 Android 原生技术竞争,没有别的目的。但是有意思的是,Flutter 并没有在底层使用 Java API,这就有种此地无银三百两的感觉了。毕竟,Fuchsia 是支持 Flutter 和 Dart 的。此为其二。


虽然仅从这两个事件并不能得出谷歌开发 Fuchsia 操作系统的目的是为了取代 Android,但不难看出的是,谷歌对于 Android 系统背后的 Java 版权问题做了深切的考量,在新框架、新语言乃至新系统的技术选型上都规避了可能存在的 Java 版权纠纷。


Fuchsia 会取代 Android 吗?未必。就像 Kotlin 虽然正式上位,但 Java 光是凭借其庞大的生态,就不太可能被取而代之。事实上,谷歌要砍掉 Android 并不容易,因为 Android 有数十个硬件合作伙伴,在全世界范围内有数百万个 Android 开发者,谷歌不能指望这个庞大的生态系统能够快速替换成 Fuchsia 生态,再者,谷歌每年在移动广告上的收入就有数十亿美元。所以谷歌对 Android 的改革计划会保持审慎的态度。


但 Fuchsia 的“野心”,其实并不在取代 Android 上。

Fuchsia——单一操作系统的野望

“我们正在研究操作系统的新面貌。所以我知道,人们会非常兴奋地说,‘哦,这是新的安卓系统’,或者‘这是新的 Chrome 操作系统’,”Lockheimer 说。“但 Fuchsia 真的与此无关。Fuchsia 只是致力于推动操作系统的发展,并将我们从 Fuchsia 中学到的东西融入到其他产品中。”


他说,Fuchsia 作为实验性操作系统的目的还在于尝试针对大小迥异的设备进行优化,暗示其可能设计用于智能家居设备,可穿戴设备,甚至可能是增强或虚拟现实设备。 “你知道 Android 在手机上运行得非常好,并且你知道在 Chrome OS 的环境中它是应用程序的运行时。但 Fuchsia 也可能针对某些其他形状因素进行优化。所以我们正在试验。“


Lockheimer 在回答的最后变得有些神秘,他接着说,“想想专用设备……现在,每个人都认为 Fuchsia 代表手机。但如果它能用于其他事情呢?”


在 Google I/O 举行的一次单独的 Android 炉边聊天中,Lockheimer 提供了一些额外的细节,尽管他的细节仍然很神秘。


“(Fuchsia)不仅仅是手机和个人电脑。在【物联网】的世界中,需要操作系统和新运行时等的设备越来越多。我认为这对各有所长及特性的多重操作系统而言是有共存空间的。Fuchsia 就是其中之一,所以请继续关注。”


话说到这里差不多就能猜出一些门道了:Fuchsia 是一个你没有玩过的全新版本,采用了最新的架构,可以运行在一切你所熟知的终端设备上,PC、手机、平板、智能家居、AR/VR 设备等等。它的目的不在于成为另一个 Android 系统,而在于打造一个全平台的操作系统。


事实上,一个操作系统联结多个设备(智能手机、笔记本、物联网设备、可穿戴智能设备)的概念,已经是不可抗拒的潮流了。看看微软,用 Midori(微软开发的模块化操作系统)和 Windows 追逐着单一操作系统的梦想。再看看苹果正在搭建的 macOS 和 iOS 之间的桥梁,如果它推出同时支持 Mac、iPhone、iWatch、Apple TV 的单一操作系统,也不用感到惊讶。这是大势所趋。


彭博社报导称谷歌的宏伟计划是用 5 年时间来推出一个统治其生态系统的操作系统。这或许是 Fuchsia 的野心所在,却也面临着重重困难。作为一个目前由工程师主导,高管参与度不高的项目,似乎无法断言其成败与否。


万物基于 Fuchsia?或者,谷歌:我们就是做着玩玩。

番外:诛心之论

Linux 创始人 Linus 有一次曾在 Linux 内核的邮件组里痛骂谷歌的工程师不守规矩,称自己不会接受他们的 patch。事实上 Android 受限于 GPL 协议的 Linux,谷歌自己无法完全掌控,也许,这也是他们需要一个自己能完全掌握的操作系统内核的原因?


2019-05-15 17:0713964
用户头像
小智 让所有人认同的文字称不上表达

发布了 408 篇内容, 共 407.1 次阅读, 收获喜欢 1986 次。

关注

评论 1 条评论

发布
用户头像
又要用Linux内核,又嫌GPL碍事,当初怎么不学苹果用BSD呢
2019-05-16 19:08
回复
没有更多了
发现更多内容

开源 | WLock:高可用分布式锁设计实践

开源 分布式 分布式锁

35岁程序员危机,有何破解之法?

博文视点Broadview

人手一套的K8S命令集合,它来了!

wljslmz

云计算 Kubernetes 容器 8月月更

连流量染色都没有,你说要搞微服务?

得物技术

架构 微服务 云原生

推荐一款微软出品的开发神器,体验不输IDEA!(含参考资料和项目源码)

收到请回复

面试 springboot 应届生 金九银十 java项目实战分享

微服务性能分析|Pyroscope 在 Rainbond 上的实践分享

北京好雨科技有限公司

Kubernetes 微服务 云原生

创新能力加速产业发展,SphereEx 荣获“中关村银行杯”『大数据与云计算』领域 TOP1

SphereEx

数据库 开源 架构 SphereEx Apache ShardingSphere

开源一夏|OpenHarmony之如何实现震动

坚果

开源 OpenHarmony 8月月更

鄢贵海:DPU发展中的四个关键问题

硬科技星球

属实不赖!Alibaba开源GitHub星标114K微服务架构全彩进阶手册

冉然学Java

Java 阿里巴巴 开源 微服务 微服务架构

为什么电商云产品需要 Assisted Service Module (ASM) 模块的支持

汪子熙

typescript 电商 SAP 8月月更 Storefront

一文详解特权访问管理(PAM)

SEAL安全

安全 访问权限 访问管理 特权访问

以合规交易释放数据“红利”,合合信息旗下启信宝签约福建大数据交易所首批数商

合合技术团队

数据 峰会

用Rust编写的Linux内核GPU驱动程序,或将到来

非凸科技

Linux gpu rust 编程语言

StarRocks 技术内幕 | 基于全局字典的极速字符串查询

StarRocks

数据库

Vue3知识点梳理(一)

青柚1943

Vue3

多原则等于无原则,微服务识别方法究竟该怎么选?

老坛架构

架构 微服务

Groovy语境下的Map

FunTester

前端监控系列2 |聊聊 JS 错误监控那些事儿

字节跳动终端技术

APM 前端监控 火山引擎 JS错误

业务数据迁移上云的一些技术思考

京东科技开发者

MySQL 迁移 云数据库Redis

增强分析在百度统计的实践

百度Geek说

数据库

为什么不做APP而要做小程序

源字节1号

小程序开发

一文搞懂│mysql 中的备份恢复、分区分表、主从复制、读写分离

MySQL 高并发 经验分享 签约计划第三季 8月月更

《数字经济全景白皮书》银行业数字普惠金融发展与优化策略分析 发布

易观分析

金融 数字经济全景白皮书 易观分析

Linux下玩转nginx系列(八)---如何使用upsync模块实现动态负载均衡

anyRTC开发者

nginx Linux 负载均衡 音视频 服务器

MobPush丨iOS端SDK API

MobTech袤博科技

ios API MobTech袤博科技 mobpush

Android进阶(十六)子线程调用Toast报Can‘t create handler inside thread that has not called Looper.prepare() 错误

No Silver Bullet

android 8月月更 toast

DAPP和APP有哪些区别?多链跨链NFT铸造挖矿dapp系统开发技术原理分析

开发微hkkf5566

基于RocksDB实现高可靠、低时延的MQTT数据持久化

EMQ映云科技

物联网 mqtt RocksDB emqx 8月月更

阿里大佬 推荐的 “ Spring Cloud Alibaba项目文档 ” 正式发布

冉然学Java

Java 微服务 Spring Cloud Alibaba

取代Android?Fuchsia要的是统一操作系统平台_语言 & 开发_小智_InfoQ精选文章