顺时代者,昌也。信息化时代让智能系统成为发展半导体行业的必要条件。在编程领域中表现优异的“Linux”成为目前世界上应用范围最广的操作系统。建立、推出Linux内核的芬兰科学家Linus Torvalds,因对编程领域做出的卓越贡献,被人们亲切地称为“Linux之父”。
我是柏柏说科技,90后科技爱好者。今天为大家了解的是:基于Linux操作系统,C语言、C++语言编译的鸿蒙操作系统和“Linux之父”Torvalds炮轰C++语言事件。
编程语言是构成PC端和智能手机生态的核心基础。如果没有编程语言,将不会有PC端与智能手机生态的出现。Linux作为一款免费使用、自由开源的操作系统,因其良好的开源性、兼容性获得了许多PC端、智能手机厂商的青睐。
近期,Torvalds在外媒的一次采访中被问道:“为何不使用C++语言对Linux系统进行内核更新”。面对媒体的疑问,Torvalds回道:“不会使用任何C++语言来对Linux系统进行内核更新”,并表示“C++语言是一门很烂的语言,会拖累性能、增加陷阱,给系统带来很多的危害”。
Torvalds的一番话,在编程领域中掀起了一股“舆论潮流”。好巧不巧,这股潮流漫向华为的鸿蒙系统。我们知道,华为的鸿蒙系统是将Linux作为根基,以微内核为基础的开源系统。在Linux操作系统的基础上,增添了C++语言。如果Torvalds提出的说法成立,那么鸿蒙采用C++语言改写的Linux系统,将会出现很多新问题、新陷阱。
针对Torvalds对C++语言做出的评价,一位网友私信笔者。问道:“鸿蒙采用C++语言改写的Linux系统,后续应用会碰到性能迟缓、高数据处理不稳定的状况吗?”。针对网友的提问,笔者做出的答复是:会。看到这样的回答,可能很多朋友按捺不住,想要反驳笔者。大伙先别着急吐槽,让我们往下看。
之所以说鸿蒙系统在实际运行中会出现卡顿、性能迟缓现象,是因为C++语言的复杂性。如同手机需要不断升级,系统语言也需要升级,C++语言便是C语言的升级版。C++语言能够处理很多C语言不能处理的问题,实际应用中具有高涵盖率的特点。但处理问题的高涵盖性带来的是语言复杂性的提高。
与C语言相比;C++十分消耗资源,开发效率也比较低。因此在开发系统的进程中,很多开发者都会有意避开C++。简单来说,在鸿蒙系统的运行过程中;采用C++语言编译的指令系统会出现分工不明确的问题。该管的管,不该管的也管,一定程度上会造成系统指令杂糅,进而出现性能变慢、系统不稳定的问题。
另外,对比C语言这边的“门庭若市”,C++还是比较清净的,开发者并不多。即便是苹果公司,对C++语言的应用也是少之又少。如iOS是以C语言和Java语言编成的Unix操作系统为基础的。在开发过程中,鸿蒙系统势必会遇到很多的“语言陷阱”。因此,Torvalds对C++语言做出的结论并不假。
有一点需要注意,鸿蒙系统在运行过程中是因为C++语言的复杂性,才会出现运行效率迟缓、数据代码错误等问题。并不是建立在微内核基础上的鸿蒙开源系统、以及华为采用C语言、C++语言编写的Linux导致的。
也就是说,系统性能迟缓并不是鸿蒙系统本身的问题,而是出自于C++语言本身。如何有效利用C++语言,避免C++语言的“语言陷阱”和指令代码冗杂问题,对于鸿蒙系统来说至关重要。
不过华为似乎预料到了这一点,在系统基础上采用“微内核”来代替“宏内核”。在这里简单为大家介绍一下“宏内核”、“微内核”的区别。在内部管理方面:宏内核通道单一,微内核通道多元。可以简单地将宏内核、微内核比作一座桥梁。宏内核是一条桥面宽阔、构造结实的桥梁。微内核则是面积较小,构造比较轻巧的桥梁。
在数据的传输过程中:由于宏内核桥面宽广,构造结实,传输大数据的能力要优于微内核。但在稳定性和效率性方面,宏内核是不如微内核的。这是因为所有的数据只能通过宏内核这一座桥梁来运输,很容易造成“堵车”进而引起系统卡顿。这也是安卓系统容易卡顿、死机的原因。
在互联性方面:宏内核只有一条通道,因此传输数据的方式比较单一,虽说大,但是不灵活。微内核有多条通道,数据传输方式多元。这也是鸿蒙系统的互联性高于安卓系统的原因。
在稳定性方面,微内核要优于宏内核。如同桥梁需要维修,内核构造也需要维修,长时间的数据传输很容易积累“多余的信息”。这时候宏内核的缺陷便暴露出来,长时间的数据传输,势必会造成桥梁的耗损,桥面垃圾增多,时间一长,便很容易引起桥面坍塌。这也是安卓机越用越卡的原因。
总的来说;比起谷歌公司的安卓系统,华为的鸿蒙系统还是十分优秀的。基于微内核打造的鸿蒙开源,在物联网方面具有低时延、高执行效率的特点。微内核与C语言的执行性和灵活性能够确保系统在运行过程中的流畅性、稳定性。
最后希望华为能够不断克服困难,将鸿蒙系统做大做强。祝愿国产半导体能够愈发强大,早日掌握核心技术,摆脱西方国家的技术限制。
你认为C++语言好用吗?面对基于Linux操作系统,采用C语言、C++语言编译的鸿蒙系统,大伙还有什么想说的吗?欢迎在下方留言评论。我是柏柏说科技,90后科技爱好者。关注我,带你了解更多资讯,学习更多知识。