鸿蒙系统用什么语言?如何评价?

互联网科技爱好人


Android一直诟病多多,最为显著的缺点是随着使用时间的增长系统流畅性会下降。相比苹果的iOS系统,Android给人的感觉是用一段时间就卡到不行。人们在想,难道就没有可以取代Android的操作系统吗?为什么各大手机厂商不去自己研发适配自家机型的操作系统呢?

想开发一套操作系统门槛太多了:


首先,开发一个独立操作系统的成本很高;其次,Android的生态已经很完善,随便去挑战结果很可能是死路一条;最后,研发操作系统这件事,虽然不是件“不可能完成的任务”,但也得靠有这方面实力的公司去做。

鸿蒙OS发布时,余承东亮出了四张牌:分布式架构、天生流畅、内核安全、生态共享。就这四点,实际上已经“吊打”Android系统,弥补了后者很多的缺陷。

分布式架构

能让鸿蒙OS跨越很多终端,从手机到电视,到平板电脑,甚至到车载系统。Android不是也可以吗?不一样。鸿蒙OS的跨越性,意味着它可以同时兼容X86和ARM架构。而Android,通常会涉及一个“移植”的过程,比如放到车载端,就需要做个“大手术”。目前车载端的Android系统,本质上是把车机电脑当成一个平板电脑在用的。

天生流畅性

流畅性是鸿蒙OS碾压Android的最大亮点。从某个角度看,鸿蒙OS可以看做是第二代移动操作系统,相较于第一代的代表Android,鸿蒙OS从很多方面进行了优化,而且是对底层的架构和整个操作系统运行规则的二次定义。

内核安全

余承东所说的微内核。在操作系统领域,微内核的安全性被公认高于宏内核,因为在微内核架构中,内核空间与用户空间是区分开来的。

生态共享

主要是针对开发者而言的。在鸿蒙OS的生态中,集成开发环境(IDE)支持一次开发多端部署,大大减少了开发者的开发难度和工作量。


stormsha


上干货,我写过OS,编程语言一开始需要汇编语言(Nasm,GAS等),我本人习惯GAS,用汇编完成引导后,就可以跳入用C写的内核,C和汇编其实是一回事,只是写法不一样,最后都是ELF格式的二进制文件。

启动过程很简单,一开始准备一个软盘,Linux dd命令可以生成,第一扇区的最后2个字节分别是0x55和0xaa,链接器把程序入口放在第一扇区的0x7c00处,一开机BIOS自检后就会跳入0x7c00处执行引导程序,至于为什么是0x7c00,因为它是工业规范。

2、如上截图是我用GAS +C写的一个简单的多任务操作系统(参考了tinix),引导过程用了Grub的multiloader协议,grub已经完成了A20地址线的初始化以及进入保护模式的GDT设置,而我们内核要干的事,就是初始化timer,文件系统(广义的文件,不仅仅是磁盘文件,所有的FD都是文件)、进程管理、系统调用、shell等等。 上图的九九乘法表就是我在自己OS上看开发的一个应用程序demo,它跟内核是分开的。

最后,开发操作系统,最基础的是汇编语言和C,其它的应用程序语言如java等还拍不上用场,而用C写程序,还不能乱调用API,因为此刻你的OS里可能都没有实现标准的C语言运行时库。 OS开发,最难的不是怎么编程,而是如何实现各种工业规范





M小哥哥


感谢阅读,很高兴为你解答。

鸿蒙系统到底用的什么语言编写的?



看到这种严谨的问题时,我告诉自己不能去瞎猜,瞎写,于是去网上查证了2个小时。找到了比较可靠的答案,分析如下。

张汝京博士是中芯国际的创始人,在中国半导体业界是绝对的权威人士。最近他接受采访明确表示:华为的鸿蒙系统是“微内核设计”,完全推到重来,基于5G平台,从新开发的系统。和以前安卓,IOS,完全不一样,也不基于传统的Linux宏内核和UNIX。(资料来源:微博.工信布)

这种“微内核设计”的鸿蒙系统,我认为很大可能是最基层的C和C++语言来编写,因为历史上目前出现的微内核系统基本都是这两种语言来编写。

这么看来华为从2012年上马的自主操作系统研发,确实是大招,非常用心,完全是从最底层的语言开发,谁也不能卡脖子。现在想想寓言“鸿蒙开天辟地”,简直就是量身定做的名字!

如何评价鸿蒙系统?

鸿蒙系统是华为秘密研发几年的操作系统,是战略试武器,防止竞争对手卡脖子,是迫于无奈,防守反击推出的。

但是我们根本不用担心鸿蒙系统国内适配问题,很明显它的特征网上已经说的非常清楚了,兼容安卓,而华为也是安卓底层的主要贡献者之一。这次鸿蒙系统会采用EMUI9.1上的方舟编译器升级版本,可以得到快速优化适配,第三方厂家无论优化安卓还是无成本用方舟编译器复制APP,都能迅速建立鸿蒙系统的生态。

鸿蒙系统最头疼的是国外与谷歌微软竞争,据悉谷歌新系统Fuchsia OS和华为鸿蒙系统一样采用“微内核设计”,一样打通手机,PC电脑,平板,等平台,是不是觉得有些熟悉?没错这就是未来5G万物互联时代的系统特征。而安卓系统以后会被抛弃。

如果未来某国不撤销禁令,华为鸿蒙系统就会是谷歌新系统Fuchsia的直接竞争对手。谷歌的优势是多年已经形成的各种生态优势,华为系统的优势是可以借载华为国外的5G硬件技术平台。

根据华为内部员工爆料,华为不得不惜一切代价在国外建立生态,积极和国外第三方互联网厂商合作。我感觉我是不是揭露了什么秘密哈哈,在华为主宰的5G时代对鸿蒙系统的推广是非常有利的。怪不得有国家着急了。

回答完毕,希望我的回答能帮助到你们。有不同看法的欢迎留言和关注。


解悟科技诸葛慕


中国人内战内行外战外行,一说到麒麟980就喷句架构是美国的,说得好象它们用的骁龙、联发科处理器是自己研制似的,实际是华为买下永久使用权,就象买下房子属私有财产,反观高通和苹果架构还是借用的。华为自己开发的达芬奇架构NpU麒麟810和鸿蒙操作系统,看它们又挖空心思发明什么新名词来喷,支持华为、京东方民族企业。

华为自研达芬奇架构的NPU!CPU(魔改)、GPU(公版)、NPU(自研)、ISP(自研)、DSP(自研)、基带芯片(自研)!也只有海思和高通能做到!苹果、三星、联发科也是公版CPU魔改,那么只剩GPU了,期待华为自研GPU早日到来!国内其手机厂商没制作半块芯片,只会撕裂喉咙犬吼:安兔兔跑分。

麒麟810是用来辗压骁龙730的并对外出售,除回应特朗普禁售骁芯片作出的强硬反制外,并打破麒麟处理器不外售的堡垒,第一批使用它的友商是360、中兴、努比亚、魅族、酷派等。看华为发布会是瞪大眼睛看新科技,小米是看性价比和安兔兔跑分吊打友商,蓝绿厂是看小鲜肉摆型给记者拍照,苹果是熟读老三编看革命样板戏。

美国向中国禁售芯片,如果华为不出手相救,友商全爬下。鸿蒙操作系统会兼容安卓系统,即现时安卓用什么语音它用什么






大公子影视特效制作


概念图,大家觉得怎么样阿 ?


用户145842987


    鸿蒙、安卓、IOS的共同祖先是UNIX,而UNIX是C语言开发的,“鸿蒙”操作系统必然是C语言编写的。“鸿蒙”操作系统提供给应用开发商的开发工具很可能是Java,下文具体说一说。


    “鸿蒙”操作系统的组成

    华为的“鸿蒙”操作系统由四部分部分组成:Linux内核+麒麟处理器的运行库+编译器+虚拟机。


    Linux内核:Linux内核是开源的,由linux内核团队维护,而linux的内核采用了C语言,而不是很多认为的C++,C语言的执行效率要远高于面向对象的编程语言C++。


    运行库:运行库在Linux基础上,针对不同的处理器,运行库需要进行适配。比如麒麟处理器指令集和高通处理器的指令集可能存在差异,不是完全相同,那么就存在一个适配的问题,而程序库通常情况下采用C语言编写。

    虚拟机:虚拟机用于沟通操作系统和硬件,是两者之间的桥梁,屏蔽了不同系统之间的差异性,可以实现跨平台,同时很大程度上降低了应用开发难度。目前,普遍使用的虚拟机是Java虚拟机。


    编译器:编译器将Java编写的代码转换成虚拟机机器码或者硬件可以直接认识的机器码。华为的方舟编译器实现了代码的静态编译,相比传统安卓应用流畅度提升了60%。


    “鸿蒙”和安卓的差异

    鸿蒙操作系统兼容安卓应用,那么“鸿蒙”操作系统和安卓有什么区别呢?

    1)架构不同

    鸿蒙操作系统是微内核设计,而安卓系统是基于linux的宏内核设计,相比来说,微内核开发难度大,但是系统稳定性高。

    宏内核,内核包含了操作系统绝大多数的功能,而且这些功能和模块具有最高的权限,好处是系统开发难度低,但是各模块具有最高权限,一个模块出错,整个系统崩溃,这也是安卓系统容易崩溃的原因。

    微内核,内核仅包括了操作系统必要的功能模块(任务管理、内存分配等),其他模块不具有最高权限,系统稳定性得到了提升。


    2)跨平台支持

    鸿蒙操作系统同时支持手机、电脑、智能穿戴设备、智能家居,形成一个无缝的、统一的操作系统,并且兼容所有的安卓应用。这个操作系统与谷歌正在研发的Fuchsia思路一致,是为5G和物联网时代准备的,华为的“鸿蒙”操作系统提前发布,可能给华为一个反客为主的机会,按照余承东的说法“塞翁失马,焉知非福”。


    总之,华为的“鸿蒙”操作系统,底层(Linux内核、运行库)是用C语言编写的,虚拟机可能采用了C或者C++语言;面向应用开发商的开发环境很可能是Java语言。


Geek视界


根据华为公布的方舟编译器资料 可以推测鸿蒙系统是用C、C++语言编写

先来看华为公布的方舟编译器原理图

从上面的华为方舟编译器资料可知:

1、鸿蒙系统和方舟编译器的思路应该是一样:直接使用机器语言编写app,取消安卓系统的ART虚拟机,直接编译为二进制机器码;

这样的好处是:不需要中转,执行速度快;劣势是:必须要有大量的静态方案、内存空间要求更高。

2、由于是用C、C++进行编写app,对软件开发人员要求高,提高了建设生态链的技术门槛。

3、由于华为目前有芯片、系统等软件和硬件基础,华为鸿蒙系统若走苹果IOS封闭系统模式,虽然路途漫长但前途可观。

但华为主业是通讯,并非手机,这和苹果主业是手机的特点不同。华为没有办法全身心投入开发封闭式的鸿蒙系统。

华为因为手机并非主业,只能走开源之路。但作为手机制造商的华为,如何让其他手机制造商使用的系统,将是一个巨大的难题。

毕竟没有一个手机制造商去帮助一个依是裁判员又是运动员的手机系统发展,导致自己的市场份额缩减。


可以预见的鸿蒙系统

1、除华为外其他国产手机公司不会安装或重视。由于google禁售的是华为,对于小米等其他国产手机公司不禁售,因此小米等其他国产公司不会安装鸿蒙系统,即便出于公共形象的压力而安装,也不会真正重视,最多就是做个样子。

反正,内斗内行吧——除非华为让渡鸿蒙系统的控制权!

2、鸿蒙系统即便能够兼容安卓应用,在过了新鲜期之后,如何提升用户体验度是关键。如果像阿里OS一样可以远程删除用户的app,就直接死翘翘吧。

保持软件开发商的利益和用户体验度的平衡,是鸿蒙系统能否生存的关键。开发商没有得到利益,不会开发鸿蒙系统的app;用户体验度差,用户就不会用鸿蒙系统。



每天原创,给你有价值的观点!
随手关注,你的支持才是动力!

历史哨声


首先做一个科普:

什么是计算机语言呢?

一般计算机语言分为机器语言和汇编语言还有高级语言!

1、机器语言就是二进制代码,就是只有0和1组成的代码!有时候你在电脑上面打开一些文件,里面只显示了0和1,这些文件就是电脑可以直接执行的文件,现在一般都没有什么人去写这个文件了,因为开发难度太大了!

2、汇编语言,这个语言就是把0与1的集合用特殊的字母或者符号来表示,比如01000001代表的是A,01100001代表a,所以人们就有字母和符号来表达一大堆的0与1,比如0100000101100001直接使用Aa来表示即可,所以汇编大大简化了二进制代码,给我们编写代码带来了极大的方便!但是计算机是不认识这些字母和符号的,所以需要一个专门的程序来把这些字母和符号来转换成0与1的代码,计算机才会执行,这个转换的程序就是编译器!

3、高级语言,由于汇编语言代码可读性非常差,比如ADD表示加法,MOV表示数据传输,人为的创造出一些指令符号,让人记忆起来非常的困难,虽然比0与1简单多了,但是复杂的程序依然无法通俗易懂!比如c语言中的代码段:int c=a+b;在汇编里面就是

00401036 mov eax,dword ptr [ebp-4]

00401039 add eax,dword ptr [ebp-8]

0040103C mov dword ptr [ebp-0Ch],eax

显然大型的项目开发起来效率就非常低了,所以高级语言就出现了,当然高级语言也还没有达到我们一看就懂的地步,但是int c=a+b要比后面那一大串要容易理解的太多了!

所以现在c语言,Java,c#,PHP之类的都是高级语言!

了解了语言,我们再说说电脑!

电脑就是在生活中帮助人处理一部分事情都计算机集合!

比如说,一台电脑可以帮我们处理文字,声音,视频,图像等,要处理这些事情电脑需要一个cpu,内存,硬盘,主板,声卡显卡来控制,而这些内存cpu又是由各个晶片来控制的,这些晶片是有一个一个电容控制的,对应上面的语言,二进制代码是控制各个电容,汇编控制着晶片,高级语言控制着这些设备!

这个时候操作系统就登场了,操作系统就是控制这些设备该什么时候运行的程序!

所以操作系统是用高级语言编写的!

操作系统大部分都是用c语言或者c++语言写的,由于c语言是执行效率最高的高级语言,所以操作系统的关键代码都是c语言写的,c++是继承了c语言的优点而发展出了的一个语言,运行速度不如标准的纯c语言,但是c++的类库比纯c的要丰富,所以c++开发程序的效率要比C的效率要高一点,但是关键的代码还是必须使用纯C编写,所以为了开发效率,一般都是C语言加上C++一起来结合起来开发的!

而华为这个系统也不能改变这个规律,所以就是用c语言来写的!

因为c语言是所以高级语言的鼻祖,不存在任何版权问题!

这个系统要想做起来就必须要有自己的生态,简单的说就是要有人在你的系统里面开发app,如果这个鸿蒙系统可以兼容安卓苹果微软的app,那么这个系统就可以飞起来了!但是难度很大!


小莫哥哥


  收到头条号推荐的问答,本人很高兴为大家回答这个问题,希望通过我的回答给大家带来帮助,这是我个人的见解与意见,如有不同意见,欢迎留言,我们共同探讨,我们一起成长一起学习。

  华为鸿蒙系统(HongmengOS或HomonOS,HMOS)是华为公司开发的专有操作系统。

  2019年5月24日,国家知识产权局商标局网站显示华为已申请“华为鸿蒙”商标。最重要的是,这个系统是中国取代美国在美国和中国的技术力量。

  Hongmeng OS是基于Linux内核源代码的开发。 OS实现代码主要是C语言,内核提供的本机系统调用接口肯定也是C语言接口。上层APP应用程序与现有的Android JAVA程序兼容,可能需要重新编译JAVA应用程序。程序代码将运行。至于应用程序编程SDK不支持JAVA以外的编程语言,还需要等待系统正式发布后才能发布,但是你可以先了解下面的编译器,据说这是一个业界开源编译器,用于编译APP程序。 。但是,我仍然希望鸿蒙操作系统的应用程序编程接口支持更多的编程语言(如CC等),这样程序可以有更多的选择。

  以上是本人的一结关于这个问题的回答,根据本人学识与经历写成的,如有不成熟的地方望指正。同时,喜欢我的回答请给我点个赞和加关注吧。我衷心希望通过解答能够帮助到朋友们。感谢头条号,提供平台,生活有您更精彩,还希望您好分享评论出来共同讨论这话题。最后,真诚的祝天下的朋友们每时每时每刻无论工作生活都健健康康快快乐乐,家和万事兴,年年发大财,恭喜发财,谢谢!


科技业界


华为鸿蒙操作系统如果与安卓一样,是基于Linux(开源)开发的,源码是C语言,鸿蒙系统的编程语言不可能是本土的易语言、易安卓,很有可能是C语言、JAVA等。但是早期已经有消息称,华为是基于谷歌的Fuchsia OS,谷歌也想以该系统取代问题频发的安卓系统。Fuchsia不再使用Linux内核,而是Magenta内核(谷歌已经改名为Zircon),使用的开发语言是谷歌Dart语言。据悉,华为麒麟970处理器一直在与Fuchsia OS测试兼容性。

操作系统这个事,中国企业早晚得开发出来,否则用别人的总是提心吊胆的,只有自己掌握核心技术的自己研发出来的操作系统,使用起来心里才踏实,虽然刚开始肯定不如成熟的苹果,安卓系统啦,但中国有十四亿的大市场啊,边使用边提高,逐步完善吗,前几年,微软操作系统升级,把中国所谓的不是直接购买微软系统软件的,升级后通通都给黑屏啦,这就是教训,看来确实是人家在后台能控制你啊。

华为的“鸿蒙”操作系统由四部分部分组成:Linux内核+麒麟处理器的运行库+编译器+虚拟机。

Linux内核:Linux内核是开源的,由linux内核团队维护,而linux的内核采用了C语言,而不是很多认为的C++,C语言的执行效率要远高于面向对象的编程语言C++。

运行库:运行库在Linux基础上,针对不同的处理器,运行库需要进行适配。比如麒麟处理器指令集和高通处理器的指令集可能存在差异,不是完全相同,那么就存在一个适配的问题,而程序库通常情况下采用C语言编写。

虚拟机:虚拟机用于沟通操作系统和硬件,是两者之间的桥梁,屏蔽了不同系统之间的差异性,可以实现跨平台,同时很大程度上降低了应用开发难度。目前,普遍使用的虚拟机是Java虚拟机。

编译器:编译器将Java编写的代码转换成虚拟机机器码或者硬件可以直接认识的机器码。华为的方舟编译器实现了代码的静态编译,相比传统安卓应用流畅度提升了60%。

“鸿蒙”和安卓的差异

鸿蒙操作系统兼容安卓应用,那么“鸿蒙”操作系统和安卓有什么区别呢?

1)架构不同

鸿蒙操作系统是微内核设计,而安卓系统是基于linux的宏内核设计,相比来说,微内核开发难度大,但是系统稳定性高。

宏内核,内核包含了操作系统绝大多数的功能,而且这些功能和模块具有最高的权限,好处是系统开发难度低,但是各模块具有最高权限,一个模块出错,整个系统崩溃,这也是安卓系统容易崩溃的原因。

微内核,内核仅包括了操作系统必要的功能模块(任务管理、内存分配等),其他模块不具有最高权限,系统稳定性得到了提升。

看到这种严谨的问题时,我告诉自己不能去瞎猜,瞎写,于是去网上查证了2个小时。找到了比较可靠的答案,分析如下。

张汝京博士是中芯国际的创始人,在中国半导体业界是绝对的权威人士。最近他接受采访明确表示:华为的鸿蒙系统是“微内核设计”,完全推到重来,基于5G平台,从新开发的系统。和以前安卓,IOS,完全不一样,也不基于传统的Linux宏内核和UNIX。(资料来源:微博.工信布)

这种“微内核设计”的鸿蒙系统,我认为很大可能是最基层的C和C++语言来编写,因为历史上目前出现的微内核系统基本都是这两种语言来编写。

这么看来华为从2012年上马的自主操作系统研发,确实是大招,非常用心,完全是从最底层的语言开发,谁也不能卡脖子。现在想想寓言“鸿蒙开天辟地”,简直就是量身定做的名字!

如何评价鸿蒙系统?

鸿蒙系统是华为秘密研发几年的操作系统,是战略试武器,防止竞争对手卡脖子,是迫于无奈,防守反击推出的。

但是我们根本不用担心鸿蒙系统国内适配问题,很明显它的特征网上已经说的非常清楚了,兼容安卓,而华为也是安卓底层的主要贡献者之一。这次鸿蒙系统会采用EMUI9.1上的方舟编译器升级版本,可以得到快速优化适配,第三方厂家无论优化安卓还是无成本用方舟编译器复制APP,都能迅速建立鸿蒙系统的生态。


分享到:


相關文章: