2025年7月10日星期四

OpenHarmony开发漫谈1——鸿蒙是什么?

 半年前领导安排我参与OpenHarmony系统的开发,具体工作就是将其移植到RK3568和RK3588平台上。在这个过程中我遇到了无数的困难,心中无尽的痛苦,感觉整个人都要抑郁了。作为被华为末位淘汰的前员工,我本不想和华为再有任何瓜葛。考虑再三我还是打算写一些文章,给予其他像我一样被迫从事OpenHarmony开发的人一些帮助。

提起鸿蒙,相信生活在中国大陆的朋友并不陌生,它是华为研发的一款操作系统,主要运行于这些年华为自家的手机上。这里我要讲的第一个知识点是——华为自家产品用的鸿蒙系统和开源的鸿蒙系统并不是同一个系统,二者有一些联系,但也有很大区别。

华为自家的鸿蒙系统,全称叫HarmonyOS, 本身应该没什么问题,毕竟华为那么多产品都在用,而且很多都是高端产品。但这个系统,华为以外的人和公司是拿不到源代码的。

华为以外的人和公司,只能拿到一个叫做OpenHarmony的系统的源代码。这个系统的中文名叫“开源鸿蒙”,也有人叫“开放鸿蒙”。它名义上归属于开放原子基金会,但绝大多数代码都是华为贡献的。它的功能要比华为自用的HarmonyOS简单得多,BUG也多得多。

我只能接触到OpenHarmony,所以我这系列文章只谈OpenHarmony, 正如我的标题所写。我后面提到鸿蒙、Harmony, 均指OpenHarmony, 不涉及华为自用的HarmonyOS。

OpenHarmony又分为标准、LiteOS-A、LiteOS-M三套系统。标准系统对标HarmonyOS、Android、iOS, 可以在高性能的处理器上运行,例如前文提到的Rockchip RK3568. 它的内核基于Linux 5.10, 所以处理器至少要能运行Linux 5.10内核才能运行标准的OpenHarmony系统。LiteOS-M运行于类似于STM32、ESP32这样的低端处理器上,对标μcOS、FreeRTOS、RTThread这样的系统。LiteOS-A介于前述两个系统之间,对标VxWorks、SylixOS这样的系统,但不提供实时性保证。

综上所述,“鸿蒙”两个字涵盖了华为自用和开源的两套系统,开源的系统又分为三个不同的版本。相信华为自用的HarmonyOS也分为很多不同的版本。华为真是营销高手,这么多系统都叫鸿蒙,因此随便哪个系统的优点,都可以当作鸿蒙的优点。比如“开源”,你说鸿蒙不开源吧,人家有个OpenHarmony是开源的。你说它开源吧,你又拿不到好用的那套系统。

我相信华为也并不想把OpenHarmony弄得多好, 毕竟弄太好了自己的优势就不明显了。国内那么多手机厂商,也没人拿OpenHarmony当作自己手机的系统,除了竞争上的考量,OpenHarmony确实不能打也可见一斑。

没有评论:

发表评论