近日,谷歌终于发布了迄今为止最完整的Fuchsia操作系统文档,供开发者和维修人员在闲暇时阅读和理解。一篇名为《Fuchsia is not linux》的文档,正式揭开了Fuchsia操作系统的神秘面纱。此前,用户必须通过各种渠道才能获得有关该操作系统的详细信息。Fuchsia操作系统:谷歌继Android、ChromeOS之后开发的第三个系统。目前,Android和ChromeOS都使用Linux内核,但从这份最新文档中,谷歌明确表示Fuchsia并非基于Linux内核。《Fuchsia is not linux》介绍《Fuchsia is not linux》本周发布的终于不再是一大堆Git管理下的开源代码,而是真正的Fuchsia程序员交互指南。作为嵌入式设备的操作系统,Fuchsia采用了微内核架构。《Fuchsia is not linux》文档列出了它的核心设计、软件接口、外围服务和用于运行程序、存储数据和访问网络的库,以及用户在屏幕上绘制图形的具体方式。从文档来看,操作系统的开发仍在进行中。关注“LittleKernel微内核”这些文档中提到了很多lk,即研究员TravisGeiselbrecht开发的LittleKernel微内核。2012年正式加入谷歌,2015年开始带领谷歌员工开发Fuchsia。他的操作系统设计技能在该项目中发挥了巨大作用。FuchsiaKernelZirconFuchsia内核名为Zircon,基于lk,用C编写。内核提供32位句柄,供应用程序通过系统调用处理各种对象。这些对象分别负责管理内存、与其他正在运行的程序交换信息以及使用同步原语。此外,Fuchsia内核还包含了通过系统调用实现对象操作的C++类。该内核规范文档还定义了一些其他概念,包括作业、进程和线程、信号、等待规则和事件。接下来值得一提的是ZirconCore,它处理设备驱动程序、符合POSIX标准的输入和输出、一组C运行时以及ELF二进制加载。最重要的是Zircon框架,它负责运行核心库、应用程序并提供命名空间和沙箱环境。当前文档完整覆盖了存储、网络和图形等相关内容。相关的源代码将x86-64和arm64指定为受支持的处理器架构。不过谷歌并没有完成《Fuchsia is not linux》中兼容性章节的内容。虽然它列出了“向后兼容性”一章,但没有提供具体链接。但提到将对支持的POSIX子集进行说明,并赋予“WebRuntime”这个模棱两可的标题。FuchsiaorkillAndroidFuchsia上线后,可以解决Android最大的碎片化问题,此外,Fuchsia还可能解决Android系统另一个恼人的问题,即开发者将使用Flutter让他们生产出运行在不同操作系统上的App并适配多种设备,无论是iPhoneX上的iOS11还是GooglePixel上的AndroidP。谷歌表示,借助Flutter,开发者可以开发出质量更好、性能更高的应用程序,并更快地部署他们的应用程序。关于Flutter和Fuchsia的关系,这是因为Fuchsia的用户界面是使用FlutterSDK构建的,而Flutter可以运行在Android和iOS系统上,所以Flutter制作的iPhone和Android应用都兼容Fuchsia。当Fuchsia于2016年首次上市时,人们认为谷歌会将其作为备用移动操作系统,以避免甲骨文长期Java诉讼对Android系统造成毁灭性影响。如果Google不看好Android这个基于Linux的操作系统,那么像Fuchsia这样有一套备份选项无疑更方便。两周前,美国一家法院正式宣布,谷歌在Android开发过程中侵犯了甲骨文的Java版权。法院命令谷歌向这家数据库巨头支付90亿美元的罚款。对于此事是否会影响安卓的未来,谷歌尚未做出明确表态。即使这份文档表明谷歌对Fuchsia的重视程度,仍然无法断定Android最终是否会被淘汰。
