对于大部分差友们来说,“开发者大会”这个词一定显得陌生而又遥远,跟普通的产品发布会不一样,他们面向的对象并不是普通的消费者,而是各种程序猿和攻城狮。
话又说回来,能开“ 开发者大会”,也说明这个企业已经牛逼到了一定程度。。
譬如每年的谷歌开发者大会,苹果的WWDC 都受到超多人关注,因为千千万万开发者就是依靠着安卓和iOS 生态创造价值,它们的任何更新和变动都引领着未来互联网的走向。
这种会议完全是企业秀肌肉的时刻,家业稍微小点都搞不来这种。。
在参加华为开发者大会之前,说实在差评君心里也很没有底,因为这是华为第一次举办这种活动,我很怕它沦落成产品发布会抑或是和消费者完全不搭边的纯技术交流会。
其实是差评君多虑了。。
因为华为正式公布了“ 鸿蒙OS ”和EMUI10。。
当初美国把华为放到实体清单,谷歌差点要断了华为的安卓供应,眼瞅着未来的华为手机没有安卓操作系统后都要变板砖,华为紧急祭出一个鸿蒙。。
当时谁也没报多大希望,只是觉得“ 行吧,有一个歪瓜裂枣总比没有强,只要有,就有活下去的希望,不至于被人饿死”。
再加上后面关于鸿蒙消息左右打脸,说法一天一变,弄得大家心里更没有底了,权当鸿蒙是为了吓唬谷歌的无奈之举。
但今天,余承东正式宣布,鸿蒙OS 要上了!不仅要上,还要做的比安卓、iOS 更牛逼!
鸿蒙OS 这次主要的两个特点,分别是分布式和微内核。
啥是分布式?
说白了就是,鸿蒙OS 一个操作系统能够给所有设备使用。
例如同样是苹果生态的设备,手机用iOS ,电脑用MacOS ,平板用iPad OS ,手表用Watch OS 。。。
而华为的分布式系统思路,则打算让所有的设备都用同一个操作系统,同时再用「 分布式软总线技术」,让他们真正意义上“ 互联” ,从数据到服务。
从开发角度来说,可能程序员只要写好软件的基本功能和逻辑,就可以轻松地在手表、手机、电视、电脑等平台同时部署。
从使用角度,想象一下这个场景:
你正在汽车上语音通话,熄火后把通话转移到手机上一边往家里走,走到家门口时把通话转接到你的智能手表上继续,空出手来翻包找钥匙进门,进门以后,打开电视机和摄像头,往沙发上一趟,就开始用电视继续视频通话。
差评君觉得这可能就是华为在鸿蒙OS 的「 分布式」上的野心展现开以后,能呈现出来的效果,听起来是不是很赛博朋克。
鸿蒙OS 的另一个特点,就是「 微内核」。
与「 微内核」相对的概念,是「 宏内核」,这是两套不同的操作系统设计思路。
一套操作系统的工作内容,说白了就是管好计算机的工作分配,例如调用处理器啦,分配内存空间啦,调用磁盘啦,点亮显示器啦。。。
「 宏内核」操作系统,有一个庞大的核心,管到计算机的方方面面,大到给程序分配CPU ,小到给显示器渲染一个像素,都是归核心管。
举个例子,「 宏内核」下的操作系统就是个老大,一个程序要干点儿啥都问这个老大请示一下,这个老大再给你把事情办了。
这个思路的代表性系统,就是Linux。
这么做有一个好处,就是系统执行效率很高,因为它从内核直接下达指令。
但这么做也有弊端。
首先功能强大的内核往往很大,对应下来就是代码数量很多,而代码一多就容易出错。。。只要代码错了其中一两块儿,都有可能导致内核崩溃,然后计算机就宕机了。。。
其次,一旦内核权限( root )被获取,就意味着对整个系统有绝对控制权,因此安全性也有待商榷。
如果你看懂了差评君说的「 宏内核」,以对立角度去看「 微内核」,就很好理解了。
「 微内核」系统也有核心,但是它很小,只管好最最基本的工作,例如CPU 调度,内存管理等。
其他功能,如声音,图形显示等等,被做成了服务。
「 微内核」操作系统就好比是个服务联盟,当一个程序要干点儿啥,就去找对应服务商,例如有「 声卡服务商」、「 显卡服务商」 。。。
现有的「 微内核」操作系统里,我们比较常见的Windows 算半个,以及今天万众瞩目的鸿蒙OS 。
「 微内核」相对「 宏内核」来说,主要缺点就是执行效率没那么高,同时因为内核本身功能很少,得装一堆服务。。。大家新装Windows 的时候,想必就被成吨的驱动给搞烦过。
但好处很明显:因为内核小( Windows 发布过一个10 MB 的超小内核),功能也是后来添加的,非常容易移植。
尤其是那种手表、音响,明显用不了安卓所有功能的这种,只需要把鸿蒙的一部分微内核移植过来就好了。光这一点,鸿蒙就比安卓和iOS 好太多,直接解决了不同平台的移植问题。
同时,「 微内核」系统里的某个服务崩溃了,大不了就关掉重启,不至于整个设备都宕机;某个服务被入侵了,也不至于全部都遭殃。
宏内核好比是全能手,微内核好比是分工合作,也许前期功能简单时全能手是直接有效的,但是随着功能越加细化细分,明显分工合作会让整体更加便携轻快机动性高。
另外安卓因为底层编译的原理问题,用JAVA 开发的程序和用C 的没整合好,还得在运行安卓系统的设备上嵌套一个JAVA 虚拟机才能跑程序,这虚拟机会随着程序安装会越来越消耗内存。
在这点上iOS 就不一样,因为人家是编译好直接运行在操作系统上,运行起来就很流畅。
所以,鸿蒙也学着iOS,在开发的时候就把不同的程序语言做统一处理( 对,说的就是JAVA 和C ),手机不用装什么烂七八糟的虚拟机,直接就能运行。
还有,安卓的内存垃圾回收机制也非常蛋疼。。
在安卓系统下,一个程序不能随随便便释放内存,除非把整个应用关停以后,才能回收内存。
从这次的华为开发者大会上来看,鸿蒙OS 绝对是华为的一大利器。
并且围绕着鸿蒙OS,华为还推出了一系列开发者利器:将程序更快的转成机器码的方舟编译器(开源)、凝结着华为十几年编程经验的编程开发环境HUAWEI DevEeo Studio(开源)、解决智能终端之间互联互通的HiLink、为开发者提供一站式开发平台和云服务的APPGallery Connect……
每一个对于开发者来说都如获至宝,减轻了不少程序猿的工作。
尤其是方舟编译器和HUAWEI DevEeo Studio,更是全中国独一家,这种科技生产力工具攥到自己手里面,才让华为乃至国家有底气去面对更大的风浪。
不过,开发者大会上说的再漂亮,在没有真正使用到实物之前,我们还是不能完全的乐观,安卓和iOS 十几年的积累绝不可能毫无优势。
前两个月美国企业受政策影响,对华为的各种禁令想必让大家明白了技术独立自主的重要性。
只要华为和鸿蒙OS 能在自主研发这条路上继续刚下去,那受益的不仅仅是华为,而是我国的整个科技产业。
“ 希望我们能在自主创新的路上越走越远!”