聊聊谷歌的Fuchsia新操作系统
农步祥 于 2017.05.13 20:59:28 | 源自:www.soomal.com | 版权:原创
平均/总评分:10.00/30

最近,一款由谷歌开发,被称为Fuchsia的操作系统在网上曝光。 Fuchsia是在去年8月就进入了GitHub项目,但谷歌对此非常低调,像操作系统这样的重量级项目,却没有官方的宣传和说明介绍。网上的介绍称这个操作系统采用了代号为Magenta[一种给给的洋红色]的微内核设计[MicroKernel],是一种实时操作系统[real-time OS]。在谷歌官方介绍出现前,网上已经有了大量的“解毒”:例如说Fuchsia是用来取代Android高性能操作系统,兼容Android应用;也有说是针对物联网开发的一种实时操作系统;甚至有说是为了混合现实[MR]设计的操作系统,这众说纷纭下,哪个比较有道理?

微内核和实时系统

微内核在计算机术语中,特指的是操作系统的内核小型化,即操作系统核心部分架构只有线程管理、内存管理和进程间通讯等最基本的系统调用功能,即使是系统服务、硬件驱动都放在了用户空间应用。不同应用间通过进程通信方式完成。微内核是相对于Linux这种庞大的集成式核心的最大优势就是较好的伸缩性,其硬件驱动和系统服务可以按需取舍,效率高,因此微内核设计的操作系统和硬件在日常生活中常见于路由器等小型设备,以及一些分工明确的分布式系统。但随着硬件性能的提升,小设备的系统也正在变得大而全起来,以Linux、Android为基础的“智能硬件”已经广泛普及。

在PC上运行的操作系统中,基于Mach的MacOS就是微内核系统的典型,虽然WindowsNT和OSX都曾经自我标榜为微内核操作系统,但由于微内核系统中用户访问程序、硬件等行为都需要通过通信而不是程序函数调用完成,因此在大型复杂的应用下性能和效率都非常捉急。现在的Windows和OSX系统都将大量的系统服务和硬件驱动放入系统核心部分,其实更为接近Linux这样的集成式核心设计,有时会把这种集成式内核和微内核设计的结合称为混合式核心设计。

而实时系统是一种以实时[或尽快]并按时完成需求任务的操作系统类型,比较著名的有WindowsCE、VxWorks等。这类系统并不追求大数据吞吐量,而是要求有较快的响应速度和灵活的任务执行能力。

Fuchsia能做什么?

目前比较受欢迎的微内核+实时系统有开源的FreeRTOS等,它没有图形操作界面,主要用于实现类似无线路由器等功能比较单一的设备系统。而Fuchsia已经被归类为微内核+实时系统,是不是真的奔着物联网操作系统而去的?但Fuchsia出名就是因为在油管上有人演示了在手机上运行Fuchsia图形界面的片段而开始火起来的,当然目前其图形界面还处于初始演示阶段,并没有具体的功能,但可以看出人们还是希望更愿意接触的是一个有图形界面的全能型操作系统,而不是早期的纯命令行模式界面,然而对于大多数物联网设备来说,UI只是个累赘。

但以此要推断出Fuchsia是要做物联网操作系统还是取代Android还为时过早,从硬件支持平台来看,Fuchsia主要支持的是ARM64和X86-64两种高性能运算处理器类型,这类高功耗处理器显然不适合用在追求低功耗和小型化的物联网平台,至少从Fuchsia开发者团队的意愿来看,其设计目标应该还是完整的图形操作系统。

那么Fuchsia的诞生是不是真为了取代基于Linux的Android?许多人对大数据和复杂应用的理解可能是超算暴力运算任务或电信机房的服务器,因此误认为小型化的微内核和实时系统对于普通用户应用而言更有优势。但事实上用户日常的游戏娱乐、浏览网页看视频等应用对于目前使用微内核和实时系统的单一个体硬件来说都是非常巨大的处理器运算和数据负担[不信打开微信支付宝客户端试试]。虽然Android的很多缺点是由于Linux内核导致,但更多的是软件开发者不注重效率地过度开发和功能堆砌,或谷歌在开发Android组件时技术水平有限造成的[类似Skia GPU的负优化],改用微内核和实时系统设计未必能显著提升这类手机应用环境下的性能和效率。

另外,从Fuchsia的开发语言构成来看,它采用了C、C++甚至是Dust、Go、Python等编程语言,但并没有任何Java虚拟机、运行库的兼容和支持迹象,肯定是无法正常安装和运行Android应用的[倒是包含了一个qemu操作系统虚拟机]。至少目前来看,兼容和取代Android也只是一些人的愿景,或者说脑补而已。这就好比微软打算推出一款完全不支持Visual C++程序的桌面操作系统以取代现在的Windows,只会逼着客户和开发者造反。当然也不能完全排除谷歌真有取代Android的打算。至于MR应用,那只是一种特定应用环境,并不太需要开发一套新的操作系统来解决应用层的问题。

操作系统是最复杂软件工程之一,往往需要花费顶级序员们数年甚至数十年的精力进行开发和完善,微机史上出昙花一现操作系统不计其数,绝大多数并不会被人所铭记。也有类似FirefoxOS等试图以“自主操作系统”的方式吸引市场和消费者,但失败者居多,也正因为操作系统已经变得越来越复杂,哪怕是利用现成的开放源代码改造也很难在技术上做好并在市场上实现弯道超车。而目前Fuchsia的状态也只是一个十几人的小团队项目,有很强的试验性质,真要做一个完全取代Android的操作系统,肯定需要更大的开发团队规模,或许三五年以后,谷歌开发新系统的真正目的和意义才会变得明显。

转发到新浪微博 转发到腾讯微博 RSS订阅 收藏本文 本文代码
请您评分 1 2 3 4 5 6 7 8 9 10

此帖使用Win10提交
发表于2017.05.19 13:23:34
20
027.154.180.***
027.154.180.***
发表于2017.05.15 14:58:39
18
027.154.***.***
027.154.***.***
路由器嵌入式设备还是用linux的居多好吧,而不是微内核系统。桌面系统内核没那么容易就做到现在linux的水平,Fuchsia应该只是专注于物联网嵌入式设备。
此帖使用REDMI NOTE 3提交
发表于2017.05.15 14:56:56
17
125.045.***.***
125.045.***.***
发表于2017.05.15 12:11:26
16
最后被砍掉的也很多
发表于2017.05.15 10:49:20
15
最后被砍掉的也很多
发表于2017.05.15 10:28:04
14

此帖使用Win10提交
发表于2017.05.14 23:07:53
13
042.122.118.***
042.122.118.***
发表于2017.05.14 13:58:33
12

此帖使用Win10提交
发表于2017.05.14 13:20:09
10
001.085.033.***
001.085.033.***
发表于2017.05.14 13:14:05
9

此帖使用iPhone提交
发表于2017.05.14 08:08:52
8

此帖使用ZUK Z2131提交
发表于2017.05.14 07:49:53
7
最近有个绑架病毒好厉害,要给钱才能解除,WIN10以下无一幸免
森泃妏蚚Win10枑蝠
发表于2017.05.14 01:05:26
6
能比安卓好最好
发表于2017.05.13 23:55:54
5
毕竟Android骨子里是JAVA嘛。支持高功耗处理器不支持民用物联网的最底端,不过用在上层倒是不错。现在上层系统,不是臃肿的类Unix就是昂贵的“晕到死”(Windows),这两者都与谷歌无关,——用Android搭建上层是个好想法,可是效率怎么搞?
当然一切还只是我等意淫,谷歌真干起来才不是小玩意,——现在Android这盘棋大呀。
此帖使用VIVO X6PLUS A提交
发表于2017.05.13 22:41:13
4
111.058.***.***
111.058.***.***
也不知道数码多在说什么
此帖使用iPhone提交
发表于2017.05.13 22:27:23
3
101.226.***.***
101.226.***.***

此帖使用KNT-AL20提交
发表于2017.05.13 22:08:31
2

此帖使用iPhone提交
发表于2017.05.13 21:19:23
1
提示本贴可以匿名回复 ,您现在正处在潜水状态
回复
验证码
5323 为防止广告机贴垃圾,不得已而为之
表情
正文