华为鸿蒙OS初探

最近IT界的热点之一莫过于华为发布的鸿蒙开源操作系统。如今似乎很少有人研究操作系统了,大家更关注上层应用以及云服务了,还记得十几年前,从网上还能下载到几百K大小的操作系统,甚至还带有图形界面。当时主流的操作系统还是Windows 2000和XP。随着各种终端设备的兴起,尤其是手机。围绕几大操作系统的生态圈也随之成熟起来,并占据了垄断地位,当然实际上在整个过程中也淘汰掉了一些操作系统,比如当年诺基亚力推的Symbian手机操作系统。实际上依我看操作系统这20年始终就两大门派, 一是Windows, 二是Linux系列, 有人说你把UNIX忘了,UNIX最早是商用的,后来人们嫌太贵,英雄们就模仿UNIX写了一个开源的Linux,所以Linux和UNIX命令几乎通用。其实一开始苹果用的Macintosh不兼容X86架构,所以应该算是独立的一种操作系统,我们可以把它称之为另一个门派,后来苹果也转移到了UNIX上,称之为Mac OS。

华为鸿蒙OS初探_第1张图片

我们就不细说操作系统间的差异了,总之从应用层来看,就是分这两派了,不管你是安卓阵营还是苹果OS, 本质上都是UNIX的分支。言归正传,我们看一下华为的鸿蒙有什么特性。

我们简单的解读一下这几个关键字吧, 微内核,全场景,分布式架构,方舟编译器

1. 微内核

从宣传资料看,华为的鸿蒙兼容Linux和UNIX, 所以推断可能是基于开源的Linux内核,但是Linux内核是个宏内核,简单的说,麻雀虽小五脏俱全,里面啥都有,什么文件系统,驱动,各种管理啥都全。但是鸿蒙是微内核,说明跟Linux还是不同。至于微内核和宏内核的区别,我认为概念上微内核是好的,各模块解藕,内核效率更高,可扩展性强,但是也会存在模块之间通信复杂度增加的问题。

2. 全场景

这个全场景是指鸿蒙可以应用在各种硬件平台上。什么手机,汽车,电脑,电视,可穿戴设备,各种场景都可以上。

3. 分布式架构

这个分布式架构也是从硬件那边来看,实现硬件层的资源共享,比如嫌手机,手表屏幕小,那就直接连接到旁边的华为电视上,暂且这么想象吧。下面是分布式架构的几点摘要。

  1. 分布式任务调度
  2. 分布式数据管理
  3. 硬件能力虚拟化
  4. 分布式软总线

4. 方舟编译器

比较有意思的是,鸿蒙系统发布会还提到了方舟编译器,搞程序开发的肯定明白什么是编译器,也理解它的重要性。C和C++是基于编译器的编译型语言,但是Java似乎介于编译型和解释型之间,因为它运行于虚拟机之上,通过编译器先编译成字节码。还记得当年谷歌推出Android的虚拟机叫什么Dalvik,虽说是完全兼容Java语言,但是人家不叫JVM了,所以Oracle跟Google也因为这个打了好久官司。当然方舟编译器是绕过了虚拟机这层了,直接编译出机器码,理论上效率应该比Java这种基于虚拟机的语言要高一些。但是目前还不知道鸿蒙系统支持哪种语言编程。

包括统一的IDE开发工具,对于开发者来说真是很方便,还记得苹果的Mac OS和IOS是两套API的问题吗, 后来苹果主推SWIFT语言也是为了解决这个问题。总体看华为的鸿蒙是集成各家之所长来设计的。 好了,你是否对华为的鸿蒙OS有所了解了呢,欢迎各位留言讨论。

你可能感兴趣的:(华为鸿蒙OS初探)