Google正在开发一个新的操作系统:借助Fuchsia OS,该技术小组放弃了Linux体系结构,转而依靠自行开发的微内核Zircon。Fuchsia 不仅可以替代台式机操作系统Chrome操作系统,而且可以替代专为移动设备设计的Android。尽管事实上,Android在当今市场上几乎是无与伦比的。

Google Fuchsia是未来的操作系统吗?我们仔细研究了该项目。

什么是Google Fuchsia ?

Fuchsia 不仅是红色和蓝色之间的一种颜色,还是Google自2016年以来一直在公众面前开发的模块化,基于权限的实时操作系统的名称。该系统使用C,C ++, Dart,Go和Rust,并在现代64位Intel ARM处理器上运行。

事实

实时操作系统(RTOS)是一种能够响应事件并立即或在预定时间内提供处理结果的操作系统。

Fuchsia OS的源代码已获得开源许可证(包括BSD,MIT和Apache许可证),并且可以由Google公共Git存储库中的任何人查看和下载。这是有关该项目的综合文档。

根据文档,Fuchsia OS同样适用于智能手机,平板电脑,笔记本电脑和台式计算机。自2017年5月起,Armadillo已成为具有图形用户界面的触摸优化用户界面(UI)。谷歌正在为Fuchsia OS开发一个桌面UI,标题为Capybara。从那以后,有传言称Google正在努力替代几乎无与伦比的Android。

Fuchsia OS如何工作?

Google在开发Fuchsia OS方面开辟了新天地。可以说,该公司从过去的错误中吸取了教训,尤其是在更新和修改Android和Chrome OS的局限性和问题方面。与已建立的Google操作系统的主要区别:Fuchsia OS从头到尾都是模块化的。这不仅反映在模块化系统体系结构中,而且反映在对应用程序是什么的全新理解中。

模块化应用设计

Google Fuchsia基于模块化设计,打破了应用程序的概念。软件单元称为软件包软件包是一个被选中的文件—包括元数据、清单文件和可执行元素。后者在Google术语中称为组件

Fuchsia 组件最接近我们今天所说的应用程序。每个组件执行特定任务,并且可以与其他组件组合以编程一个更复杂的应用程序。组件由清单文件以及相关的代码组成。组件始终在自己的沙箱中运行,通过名称空间访问对象,并通过导出目录发布它们。Fuchsia OS专注于两种类型的组件:模块(modules )和代理agents)。

agents组件在后台工作,并为其他组件提供服务。agents由另一个组件或系统调用-例如,响应某些触发(例如推送通知或其他屏幕处理)。

modules是具有用户界面的组件,这些组件在前台执行,对用户可见。操作系统中的每个模块都是为特定任务而设计的,并进行了相应的标记,以便可以在需要时自动对其进行访问。这是使用模块的功能完成的,可以使用所谓的动词名词来描述。

每个模块都包括一个verbs 列表,表示模块可以执行的工作,以及一个nouns 列表,表示正在使用的实体。根据谷歌术语,实体包括作为结构化数据对象存在的任何唯一可识别的人、地点、事物、事件或概念,这些数据对象可以被引用和检索、呈现、操作或共享。

因此,在实际中,使用实时操作系统Fuchsia的方式如下:用户执行操作后,Fuchsia OS会自动为该任务确定适当的模块。所需的动作被翻译成动词和名词的组合。然后,系统检索所有支持所需动词的模块的列表,并在下一步中根据还可以处理所需名词的模块进行过滤。

相关的模块可以分组到所谓的stories中。stories根据当前的需求组合不同的动作和任务,使用户能够根据自己的想法和需求组装复杂的应用程序。

概要

=借助Fuchsia OS的模块化应用程序概念,Google将重点从应用程序转移到动作和内容。Fuchsia 的任务由所谓的stories中的一组组件来处理,而不是当前使用的应用程序的经典操作系统,该组件通过模块访问当前所需的资源。

下图说明了Fuchsia OS应用程序开发背后的模块化概念。

Fuchsia OS的应用程序开发基于模块化结构。

模块化系统架构

Fuchsia OS的系统架构也基于模块化方法。操作系统由四个或多或少的独立级别组成,每个级别都有其自己的任务:Zircon,Garnet,Peridot和Topaz。

Zircon

Zircon(以前为Magenta)是新的Google操作系统的基础,但严格来说,它不是Fuchsia OS的一部分,也可以与其他操作系统一起使用。

Zircon包含Fuchsia OS内核,设备管理器,最核心的第一层设备驱动程序以及底层系统库(如libc和launchpad)。此外,Zircon还提供FIDL(Fuchsia 接口定义语言),这是一种用于进程间通信的协议。FIDL是独立于编程语言的,但是与流行的编程语言(例如C,C ++,Dart,Go和Rust)具有联系。

作为Fuchsia OS的基础,Zircon提供了对后续级别的硬件访问,在共享硬件资源上创建了软件抽象,并充当了低级软件开发的平台。Zircon是Project Little Kernel(LK)的结果,该项目充当Android的引导程序。

Garnet

Garnet是基于Zircon的第一款针对Fuchsia 的系统层。提供了设备级别的各种系统服务以及网络,媒体和图形服务,例如,用于软件安装,系统管理以及与其他系统的通信。Garnet包含图形渲染器Escher,程序包管理和更新系统Amber以及文本和代码编辑器Xi。

Peridot

Peridot是Fuchsia OS的操作系统级别,根据当前用户要求在其上管理和编译模块化应用程序(请参见上文)。Peridot的核心成分是Ledger和Maxwell。

  • Ledger:Ledger是基于云的存储系统(分布式存储系统),它为每个Fuchsia组件(模块或代理)提供单独的数据存储。这在不同设备之间同步。这使用户可以在当前Fuchsia 的设备上继续停留在其他Fuchsia 的设备上的位置。

  • Maxwell:通过Maxwell,Google在Fuchsia OS中集成了一个组件,该组件将给用户提供了人工智能。就像Fuchsia 一样,Maxwell具有模块化设计。AI系统由一系列代理组成,这些代理分析用户的行为及其所使用的内容,在后台确定合适的信息,并将建议转发给操作系统-例如,应加载哪些模块或故事以适合用户在特定时间的行为。Google语言助手也是AI组件的一部分,该组件将在Fuchsia项目的框架内以代码Kronk的形式进一步开发。

    注意

到目前为止,Kronk是Fuchsia OS唯一未作为开源项目开发的组件。

Topaz

Topaz是Fuchsia OS的系统级别,用户可以在其中与操作系统进行交互。在此显示以下级别定义的组件的用户界面:带主屏幕的图形用户界面(取决于设备Armadillo或Capybara)以及模块的可视前端。Google的跨平台开源移动应用程序框架Flutter也已在此系统级别集成。因此,可以假定Fuchsia OS用户将来也将能够运行和使用其他系统的应用程序,例如Android或iOS应用程序。

Fuchsia OS的四个系统级别:Zircon, Garnet, Peridot, and Topaz

Fuchsia OS的优缺点一目了然

按照模块化方法,Fuchsia OS的开发人员已将系统体系结构划分为具有特殊任务的各个区域。这不仅提高了代码的可读性,而且影响了操作系统适应性和更新。除其他外,Google解决了Android长期以来一直在努力的更新问题。

事实

Android生态系统正在努力解决更新问题。查看官方分发仪表板可以看到:操作系统的新版本正在缓慢传播。这是竞争对手苹果不会面临的问题。尽管Apple硬件和软件来自同一来源,可以直接进行修改,但每个Android更新必须首先由各种硬件制造商实施。

此外,模块化系统架构可满足Google销售合作伙伴的需求,他们希望根据自己的想法来适应或扩展Fuchsia OS。

硬件制造商可以与自己的产品交换操作系统的各个级别,而不会影响其他级别的功能。例如,三星可以用自己开发的TouchWiz风格的用户界面代替Topaz。亚马逊可以放弃Peridot和Google Language Assistant,而为Fuchsia OS配备基于Alexa的基于AWS的应用程序模块。

在这两种情况下,设备制造商都可以提供个性化的Fuchsia OS版本,而不会影响Zircon和Garnet功能或这些层的正式更新周期。

好处 缺点
Fuchsia OS的模块化系统架构使Google可以比Android更快地推出安全更新。 Google使Ledger成为Fuchsia OS的核心组件。Ledger控制跨多个设备的应用程序同步,从而将系统紧密地绑定到云。
由于采用了模块化设计,硬件制造商可以用自己的模块替换Fuchsia OS的各个系统级别,而不会影响其他级别的功能。

发展状况

Fuchsia OS正在慢慢成形,但仍未准备好投放市场。Google甚至尚未宣布正式发布日期。据媒体报道,第一批硬件测试已经进行。作为首家测试Fuchsia操作系统的设备制造商,华为已成功在Honor Play上启动了新操作系统。该智能手机配备了华为麒麟970芯片,该芯片还用于该制造商的其他设备中,例如Mate 10,Mate 20和Mate 20 Pro。

Fuchsia OS演示

Fuchsia OS可以在开发阶段早期编译为APK(Android软件包)并安装在Android智能手机和平板电脑上。该曼努埃尔Goulão在mgoulao.github.io“>Fuchsia OS演示版Fuchsia OS演示节目是什么样子。

如果在浏览器中访问Fuchsia OS演示,则会看到一个网站,其中显示了操作系统的启动屏幕。这为用户提供了背景图像和当前时间。此外,还有三个按钮可用:一个用于打开Wi-Fi设置的按钮,一个用于注册用户的登录按钮以及一个来宾登录。

该演示仅允许您注册为访客。

Armadillo –为触摸屏优化的Fuchsia OS图形用户界面/来源:https://mgoulao.github.io/fuchsia-web-demo/

注册用户可以访问Fuchsia OS主屏幕,该屏幕在一页上显示所有信息。

主屏幕上最突出的元素是屏幕中央的窗口,其中包含Google搜索栏,Google语言向导和设备上安装的应用程序。

借助Fuchsia OS,Google放弃了具有多个屏幕的设计,这在Android或iOS中是常见的,而是在主屏幕上显示所有内容。资料来源:https://mgoulao.github.io/fuchsia-web-demo/

如果您启动一个应用程序(仅使该演示作为虚拟对象可用),您会看到Google选择了基于窗口的用户界面。

启动的应用程序在单独的窗口中执行,并在主屏幕上以图块形式显示给用户。资料来源:https://mgoulao.github.io/fuchsia-web-demo/

单击主屏幕中间的用户图像会打开一个菜单,其中包含常用设置

只需单击即可访问常用设置,例如WIFI和蓝牙设置,音量和亮度。资料来源:https://mgoulao.github.io/fuchsia-web-demo/

参考资料:

https://www.theverge.com/2020/12/8/22163225/google-fuchsia-os-call-contributors-mailing-list-governance

https://arstechnica.com/gadgets/2020/12/googles-secretive-fuchsia-os-is-open-for-contributions/

https://www.ionos.com/digitalguide/server/tools/fuchsia-os/

杂谈——什么是Google Fuchsia ?相关推荐

  1. Google Fuchsia 对中国操作系统的启示 | 畅言

    Google 在操作系统方面的成功,是可以复制的. 作者 | 徐 星 责编 | 唐小引 为什么学习 Google 随着华为.BATJ 在国内外市场获得了巨大成功,以及新秀摩拜单车等在业务模式的创新,让 ...

  2. Google 究竟是不是要用 Fuchsia OS 取代 Android?

    作者 | 罗昭成&唐小引 出品 | CSDN(ID:CSDNnews) 在前文<Kotlin 和 Flutter 对于开发者究竟意味着什么?>中,作者段建华(@技术小黑屋)针对 G ...

  3. CSDN开发者周刊第 20 期:Google 下一代操作系统 Fuchsia 源码正式公开;AI 消除马赛克 效果惊人

    CSDN开发者周刊:只为传递"有趣/有用"的开发者内容,点击 Star(CodeChina)! 本周热门项目 1.红帽停止维护 CentOS 8,创始人另起炉灶 12 月 8 日, ...

  4. 谷歌Fuchsia OS负责人离职,网友:被鸿蒙挖走了?

    文 | Travis 出品 | OSC开源社区(ID:oschina2013) Chris McKillop 是 Google Fuchsia OS 的负责人兼工程总监,近日他在个人社交媒体上宣布已经 ...

  5. 传 ofo 年底裁员超 50%;Vivo 支持谷歌 Fuchsia OS;Spring Boot 2.2.2 发布 | 极客头条

    整理 | 屠敏 快来收听极客头条音频版吧,智能播报由标贝科技提供技术支持. 「极客头条」-- 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注 ...

  6. Google 产品的消亡史!

    Google的产品支持已沦为一个笑话,为此,Google是时候应该有所关注了. 作者 | Ron Amadeo,科技编辑@Ars Technica 译者 | 弯月 责编 | 屠敏 出品 | CSDN( ...

  7. 您操作系统的msxml组件版本过低_Fuchsia OS –未来的Google操作系统?

    Fuchsia OS –未来的Google操作系统? Google正在开发一个新的操作系统:借助Fuchsia OS,该技术小组放弃了Linux体系结构,转而依靠自行开发的微内核Zircon.Fuch ...

  8. Fuchsia - 简析

    一点猜测 Fuchsia 是为了取代 Android 的吗? 我觉得不是的,因为现在 Android 作为移动平台的操作系统已经非常成熟,暂时也没有遇到影响演进的瓶颈,Fuchsia 如果是为了代替 ...

  9. Fuchsia 确认支持安卓 APP;悼念杰出的内核开发者李少华

    (给技术最前线加星标,每天看技术热点) 转自:开源中国.solidot.cnBeta.腾讯科技.快科技等 [技术资讯] 0.谷歌 Fuchsia 开源操作系统确认支持运行 Android APP 有关 ...

最新文章

  1. 【算法与数据结构】一道检测inversion count的初级算法
  2. SAP评估级别 Valuation Area
  3. 项目管理基础:项目的生存周期模型
  4. Javascript 判断 object 的特定类
  5. 数据结构c语言版第二版第三章课后答案,数据结构(C语言版)习题集答案第三章.doc...
  6. acfun html5 转换,AcFun剧场模式插件
  7. 深井软岩巷道群支护技术与应用_金能煤业公司组织观看千米深井软岩巷道大变形机理及围岩控制技术讲座...
  8. 【转】如何读一篇论文
  9. pycharm 中文_环境搭建:3.pycharm社区版安装配置
  10. [COLING18]两种成分句法分析的局部特征模型
  11. 第三章 选择结构
  12. 原理+代码实战:SUID提权渗透
  13. 分布式系统如何保证数据一致性
  14. linux编写自动运行一串命令的脚本
  15. React中Mpegts播放器的使用
  16. 域名如映射为 IP: 端口
  17. 专访STEM领域人才资深人工智能图像算法工程师张旦
  18. GOM 登录器源码及编译教程
  19. uni-app页面跳转问题
  20. “程序员吐槽大会”上,被怼坏的阿里美女产品经理,做出了2亿人在用的钉邮钉盘!...

热门文章

  1. 访千寻位置郦可:“时空智能,赋能万物互联新时代。”
  2. 天创速盈:学会这几招,拼多多网店推广更省钱
  3. ubuntu系统输入法切换_Ubuntu 安装中文输入法 小白版
  4. 多目标家庭行为检测--人脸识别模块构建
  5. ARM Core WFI/WFE
  6. 【2020校招总结】接受社会的毒打,收获腾讯天美、字节跳动、网易互娱、华为等offer(开发岗)
  7. OpenPortalServer Operation Ultra V5.7.0.8 运营旗舰版 2021-10-09
  8. 基于两阶段鲁棒优化算法的微网多电源容量配置(Matlab)
  9. 2维旋转矩阵的推导方式
  10. Linux内核驱动初探(一) LVDS显卡