教育培训 > 华为“鸿蒙”操作系统为啥用Linux开发?

华为“鸿蒙”操作系统为啥用Linux开发?

2020-08-10 08:36阅读(66)

华为“鸿蒙”操作系统为啥用Linux开发?:华为操作系统基于linux是关于鸿蒙的“传说”中最空穴来风的。但开发初始一代鸿蒙的平台是linux没什么奇怪的,毕竟li:-鸿

1

华为操作系统基于linux是关于鸿蒙的“传说”中最空穴来风的。但开发初始一代鸿蒙的平台是linux没什么奇怪的,毕竟linux提供的程序员友好的工具太多了。如果理解了交叉编译就知道:现有的windows、macos、linux、freebsd都可以做开发工具的运行平台。但必须选一个的话,我会选linux。而且,仅仅是在鸿蒙还不能替代linux之前的选择。一旦鸿蒙本身具备条件,会第一时间把开发平台切换到鸿蒙,这就是所谓的“吃狗粮”-让开发者自己使用自己开发的产品。

鸿蒙的核心,余承东透露的是“下一代微内核”。对操作系统技术稍有了解的人,都知道linus对微内核架构的态度。有余承东这句话,鸿蒙的核心就不可能是linux。微内核架构,即便华为去买苹果的操作系统核心也不可能在华为“工程师文化”下犯如此低级的错误。

而且,从华为操作系统对5g的时机卡位看,底层的实时性是肯定会考虑的,而linux的实时改造到现在都达不到5g毫秒级时延要求。再看看谷歌新系统和微软新系统的宣传,就知道了:5g对通用操作系统的实时性提出了挑战,要充分发挥5g网络性能,对操作系统底层必须做大调整。

再从备胎策略看,华为如果连标准组织的清除策略都考虑全了(例如,超级蓝牙),没有理由不考虑linux资源限制的情况。

那么整个备胎操作系统计划可能是什么样的呢?

在研究了操作系统历史的情况下,华为极力投入5g开发,不会不知道操作系统是个机会。因此,我们看到鸿蒙起始时间大约在2010年左右,正是5g纸面规格基本确定的时候。鸿蒙初始选型应该持续了两年。但可用的真的很有限,除了be操作系统号称有实时性,其他通用系统几乎都达不到备胎要求。那么,重新开发一个就成了重大选项。

第二个大难点是系统初始生态,新核心要继承安卓生态,微内核架构是最成熟选择,因为苹果干过一次,证明有效的。然后,看华为“操作系统”往事中,大规模整理安卓架构,就知道这是在就这新系统安卓兼容服务在转圈子。

做到这里,就是等一个时机了。显然余承东是等不及了:gpu turbo、编译器 、 link turbo 分分扔出来做预热了。就等一个时机了,恰好川普配合到位,顺理成章了。否则,余承东恐怕还得适配谷歌新系统来适应5g要求,但谷歌开什么价就不好说了。

但操作系统就是操作系统吗?除了适应顶层生态,还有适应底层一堆硬件,这个工作不做就是大麻烦。

我曾经说华为编译器的出现是剑指芯片的,那么操作系统就更是如此,如果底层解决方案是华为提供,其他手机厂扩展,那么就解决了当初谷歌必须依赖linux的多硬件平台适配资源解决硬件适应问题。这是最适合中国手机厂商路数的。

所以,鸿蒙大概率开源,开发系统大概率开源或至少象安卓和苹果一样免费。而完全从芯片解决方案(原联发科生态模式)和自己终端上赚钱(苹果模式)。这样5g时代华为大约每年在芯片解决方案上提供至少200亿营收,贴补软件,而反过来芯片供货规模扩大可降低芯片成本(现在是高中低都980解决量问题)。从而提高终端利润,进一步投入研发。

2

华为鸿蒙系统已经开过开发者大会了,从会上的官方公布的信息我们可以看出,华为并非是基于Linux开发,而是采用了全新自研的微内核(Linux是宏内核)开发。

1、微内核是什么?

或许有人第一知道微内核这个概念,这里我大致说一下这个内核。微内核不是华为新搞出来的新事物,而是已经经历了3代的发展,是学术界的宠儿,其最大特点就是底层架构简单,系统代码量很少(1万行左右即可),可以进行模块化的设计和应用,具有很强的扩展性,全球范围内已经有一些优秀的开源微内核系统,比如QNX(见下图)、seL4等等。从适用性而言,微内核比较适合用于嵌入式设备、智能家居、实时工控系统等。

2、鸿蒙为何采用微内核

就从目前透露出来的信息看,华为做鸿蒙系统是早已准备,但前期的目标并非是我们现在熟知的手机、电脑、电视等,更多的是考虑应用到嵌入式设备以及IoT等终端上,同时结合华为5G的技术,更多应用于物联网设备。

但由于美国的封堵,迫使华为将鸿蒙系统提前曝光,并且考虑开始向手机、平板、电脑等终端设备上迁移。而之所以能做出这样的调整,核心就在于微内核强大的可扩展性,以及鸿蒙提供的分布式架构,可以针对某些终端单独做适配研发,类似做插件一样一个个支持新终端,这也是鸿蒙能跨平台支持的原因之一。

3、鸿蒙现有的情况如何

从华为开发者大会公布的路线图来看,现在的鸿蒙1.0版本还不是纯净的微内核,而是基于安卓、Linux、LiteOS这样的多内核,只有到今年年末时才可能会进化到纯微内核上来。

这点我想原因也很简单,就是鸿蒙系统自身还不成熟,这点从开发者大会上也能看出。毕竟鸿蒙系统计划被整整提前了1年,很多研发内容没做完。同时,一个全新的系统想要快速建立起自己的生态也是不可能的,前期只能尽可能向下兼容其他系统的应用,需要有个过渡来逐步搭建发展自己的生态。

这2天任正非在冬季达沃斯论坛称鸿蒙系统已经上网,未来将应用于手机、电脑、平板等终端设备上。看来,鸿蒙系统的发展正在有条不紊的持续发展中,个人还是很希望我们自己的国产系统正式上线的。

Lscssh科技官观点:

最后就不要说鸿蒙系统是基于Linux开发的了,两者在内核上完全不同!知道Linux现在有多少代码量了吗?截止2018年时就已经超过2500万行代码了,相比微内核几万的代码,这可不是一点点的数量啊。


感谢阅读,给点个赞鼓励下呗,欢迎关注【Lscssh科技官】,谢谢~~

3

全世界就几个系统内核,Linux开源,其他不开源!自己研究一行一行的写得什么时候,等写出来手机都淘汰了!

都是基于内核修改所需功能!才能快速开发!开发软件的都知道用汇编语言开发操作系统最节省资源,运行速度快,占用内存小!但开发速度慢,难度大,不适合分工开发!要是能用汇编开发手机系统就现在手机性能至少快十倍,内存再小十倍都没问题!

4

    目前,主流的操作系统架构分为两类:宏内核和微内核。Linux属于宏内核,而鸿蒙系统属于微内核架构开发的。因此,华为的“鸿蒙”系统并不是基于Linux开发,难道鸿蒙是独创的微内核架构系统吗?非也。

    微内核系统

    微内核系统的核心是简化内核功能,内核只提供基础服务,比如进程调度、多进程通信等,其他的文件系统、网络协议等都放到了用户态。微内核经过几代的而发展,发展到了seL4,而且也是第一个完全通过形式化验证的内核,而Linux系统的内核过于复杂,是没办法证明的。

    Fuchsia是google正在开发的一套全新的操作系统,用于替代android,兼容android的app,并且可以覆盖手机、平板、电脑、智能设备的一系列领域。Funchsia采用了一个称为zircon的微内核。

    根据数据显示,android系统有1亿行的代码,其中内核超过了2000万,但是一般的用户用到的代码不到8%,整体比较冗余,越来越不堪重负。鸿蒙系统采用了“微内核”,核心代码不到1万行,采用同一套操作平台,针对不同硬件能力的产品部署,并且采用了分布式架构,提升了效率。

    鸿蒙系统什么时候正式上线?

    今年1月21日,任正非在公开场合表示“鸿蒙系统已经上线,未来将会应用到华为手机、平板、电视等产品”。余承东也表示,华为的P40可能会成为第一款搭载鸿蒙操作系统的手机。

    消息称,鸿蒙系统兼容android应用,所以,我们不用担心软件生态问题。随着,鸿蒙系统的普及,华为HMS的广泛应用,相信最终会成为android系统的一个替代品。


如果觉得对你有帮助,可以多多点赞哦,也可以随手点个关注哦,谢谢。

5

.

来来来,都让开,让科技吹水给大家吹一波科技水 。

用Linux开发系统的优越性

.目前世界有三大知名操作系统微软windows、苹果IOS和开源Linux,由于微软windows系统和苹果IOS系统都拥有版权,并且是属于封装系统想重新开发一个系统,难度是比较大的,除了使用开源Linux,并没有更好的选择。

.比如深度等国产的操作系统都是使用Linux深度定制开发而成,.甚至美国著名的安卓操作系统也是基于Linux内核深度定制开发的。

以华为的资金和软件能力重新开发一套系统并不是很困难,但难就难在重新开发一套系统所带来的开发成本会比较高。

安卓和Linux开发者

微软曾经试图推出自己的windows移动版WP,但是由于给wp配套的开发者较少,微软WP终没有形成自己的软件生态,用户没有足够的软件使用,导致搭载的WP系统的手机很难获得普通消费者的青睐,这也最终导致了wp夭折

因此单独开发一套系统并不难,难的是如何让消费者减少过渡到新系统所产生的成本。这个成本有两个,一是完善系统生态所需要的成本,二是改变用户使用习惯所需要的成本。对于很多操作系统来说,这是无法逾越的鸿沟。.华为的鸿蒙系统使用Linux内核开发也是基于这两个因素考虑的。

在使用习惯上,如果新的操作系统与安卓没有太大的差异,用户更容易接受。

用与安卓相同的内核开发系统会减少开发者把软件从安卓过渡到鸿蒙的难度。

从华为推出HMS(华为移动服务)就可以看出华为的操作系统战略,就是在不断的掏安卓的墙角。华为推出了方舟编译器,据说普通的开发者可以用两天的时间,两个人的团队就可以实现app从安卓到鸿蒙的编译。

这样一来,无论是用户的使用习惯,还是开发者开发系统软件的难度都会极大的降低,因此无论是从战略还是从成本的角度考虑,嗯华为选择Linux内核制作初代的鸿蒙操作系统都是很正确的选择。

总结

因此,我们就可以总结出华为选择Linux内核进行当前阶段鸿蒙系统的开发有三个原因:

  • 使用成熟开源系统,减少系统开发周期,加快产品面世。
  • 降低用户从安卓到鸿蒙系统过渡的成本。
  • 降低开发者为鸿蒙系统适配软件的难度,加快建设鸿蒙生态圈。

关注我,获得更多科技观点。

6

感谢您的阅读!

安卓手机其实使用的也是linux系统,你可能觉得鸿蒙系统不应该使用linux系统,这不是“邯郸学步”吗?这叫什么自己研发系统?

实际上,安卓系统使用Linux,是因为它的权限高度自由,源代码完全开放,是一种拓展性非常强的操作系统,而且它最关键的是免费开源。

而华为选择linux的原因是——

  1. Linux系统足够强大,甚至于,大多系统都是基于Linux内核开发的。
  2. 它能够更好的摆脱Windows可能存在的监控后门。
  3. Linux并不是由单一的个人开发,它是全世界的程序员共同开发的,开源性的系统。

其次,华为使用的是和安卓不同的微内核,相比宏内核需要将很多东西放在内核中,微内核的优势更明显,比如内核中因为只有最基本的调度,内存管理等等,反而更容易去使用,流畅性也更好。

鸿蒙系统目前的问题——系统的生态问题。鸿蒙系统现在最需要解决的就是生态问题,如果不能够解决生态问题,那么鸿蒙系统的发展已经是受到限制,虽然说任正非已经提出了鸿蒙系统已经上网,但是要完全的使用,在手机电脑方面,还是需要一定的时间。

我们其实应该给华为更多的时间,也需要更多的开发者加入的鸿蒙系统,开发出适合鸿蒙系统的生态!

7

不然用什么开发?直接用0和1写机器码吗?交叉编译是系统开发的最基础方法,不存在为啥不为啥的问题,这是一种最基本的方法。做一个不太恰当的比喻,小孩子还没满18岁,你就让他出去赚钱,这是不可以的,爹妈要给他钱花,让他健康生活长大。小朋友就是鸿蒙,爹妈就是linux或者windows。

8

分叉版安卓系统

9

是呀,很奇怪,为什么不在“算盘”上做二次开发?开发出一个“全真”机器人,使用“算盘”'解决一切it问题?

10

用这个字是不对的,操作系统不能用操作系统开发,可以用基于这个词