鸿蒙系统为什么需要一个新的内核?Linux Kernel不够用么? 通用但不够通用:Linux虽然是一个通用操作系统,但这些年主要市场在服务器和云端,演进主要面向这些场景,一些新兴的场景支持并不尽如人意。比如,Linux的抢占性实时补丁花费了10多年才部分合并,而且其发展仍在主流之外,很难满足高等级行业认证的要求。 定制化成本高:定制化Linux去适配新场景成本比较高,同步定制代码与上游版本需要大量努力,不同步则可能暴露系统于安全漏洞中。 宏内核的安全性问题:Linux是宏内核设计,设备驱动占了代码很大的比重,缺陷和漏洞大都来自这些模块。
鸿蒙系统需要一个新的内核,主要是因为Linux内核在某些方面存在局限性,无法完全满足新兴应用场景的需求。以下是几个主要原因:
-
通用性与专业性的矛盾:Linux虽然是一个通用操作系统,但其主要市场在服务器和云端,演进主要面向这些场景。对于一些新兴的应用场景,如智能手机、智能汽车等,Linux的支持并不尽如人意。例如,Linux的抢占性实时补丁花费了10多年才部分合并,而且其发展仍在主流之外,很难满足高等级行业认证的要求。3
-
定制化成本高:定制化Linux去适配新场景成本比较高,同步定制代码与上游版本需要大量努力,不同步则可能暴露系统于安全漏洞中。3
-
宏内核的安全性问题:Linux是宏内核设计,设备驱动占了代码很大的比重,缺陷和漏洞大都来自这些模块。模块化架构导致的安全漏洞是Linux安全漏洞的主要来源,占据了过去四年1000个CVE安全漏洞数量的90%。3
-
模块API的不稳定性和安全补丁:内核模块API的不稳定性和安全补丁的频繁更新,迫使系统需要频繁地升级。这给实际部署带来了很大的挑战,导致很多产品仍在运行过时的Linux版本,从而暴露在安全漏洞之下。3
-
微内核的优势:鸿蒙系统采用微内核设计,相比于宏内核,微内核更加安全,并且在微内核中可以自由加入各类模块,而宏内核中可以自由修改的范围很小。微内核的扩展性更好,能够更好地适应新兴应用场景的需求。5
-
兼容性和性能优化:鸿蒙内核通过多方面的性能优化,在部分场景上的性能可以接近或者超越宏内核(Linux),同时兼容Linux API/ABI,可以用鸿蒙内核来运行AOSP或OpenHarmony,实现对现有软件生态和设备驱动的兼容。3
综上所述,鸿蒙系统需要一个新的内核,主要是为了解决Linux内核在通用性、定制化成本、安全性等方面的局限性,同时提供更好的兼容性和性能优化,以适应新兴应用场景的需求。1345
鸿蒙系统在智能手机上的表现如何?
鸿蒙系统在智能手机上的表现主要体现在其微内核设计、分布式架构以及对多设备协同的支持。鸿蒙系统采用微内核设计,这使得其在资源占用和运行效率上具有明显优势,同时提高了系统的安全性和稳定性21。此外,鸿蒙系统的分布式架构允许不同设备之间实现无缝连接和协同工作,提升了用户体验27。鸿蒙系统还特别注重隐私和数据保护,提供了更加严格的权限控制机制,增强了系统的安全性10。然而,鸿蒙系统在应用生态和设备兼容性方面与安卓系统相比还有一定差距,但随着华为不断优化和扩展,这一差距正在逐渐缩小911。
与安卓系统相比有哪些优势和劣势?
鸿蒙系统与安卓系统相比,具有以下优势和劣势:
-
优势:
-
劣势:
鸿蒙系统在物联网设备上的应用有哪些特点?
鸿蒙系统在物联网设备上的应用具有以下特点:
- 全场景分布式:鸿蒙OS是一款面向万物互联新时代的、全场景、分布式的操作系统,实现OS与硬件解绑、生态共享、跨端共享19。
- 设备互通:鸿蒙系统采用分布式物联网架构,支持设备之间的无缝连接和互联,无论硬件能力强弱,均可统一在不同硬件平台上加载部署1936。
- 低功耗、高可靠:物联网操作系统需要满足设备互通、低功耗、高可靠、模块化等特性,鸿蒙系统在这些方面进行了优化19。
- 模块化解耦:通过鸿蒙OS实现模块化解耦,对应不同设备可以弹性部署,实现设备的互联互通19。
- 支持多种设备:鸿蒙系统支持从智能手机、平板电脑到智能穿戴、智慧屏、车机等多种终端设备3035。
鸿蒙系统的微内核设计在安全性方面有哪些具体的优势?
鸿蒙系统的微内核设计在安全性方面具有以下优势:
- 代码量减少:微内核的代码量大大减少,相较于宏内核,具有更高的安全性。有的微内核仅有1万行代码,可以实现形式化证明,从数学上保证其正确性2324。
- 模块化:微内核架构通过仅将最基本的服务置于核心层,大大提升了系统的可靠性和安全性,同时也赋予了系统更高的可扩展性和灵活性2025。
- 安全保护:微内核设计的基本思想是在内核之外的用户态尽可能多地实现系统服务,同时加入相互之间的安全保护,内核只提供最基础的服务,比如多进程调度、多进程通信(IPC)等2224。
- 减少安全漏洞:Linux的内核模块化架构导致文件系统、设备驱动等模块占据了其30%的代码,这些模块是Linux安全漏洞的主要来源。而鸿蒙系统的微内核设计减少了这种模块化带来的安全风险3。
鸿蒙系统在多场景应用中是如何实现不同设备间的协同工作的?
鸿蒙系统在多场景应用中实现不同设备间协同工作主要依赖于以下技术:
华为自研鸿蒙内核和操作系统1 | 鸿蒙内核研发 华为开始研发鸿蒙内核,面向物联网。 |
鸿蒙操作系统1.0发布1 | 多内核操作系统 鸿蒙1.0定义为多内核操作系统。 |
鸿蒙2.0操作系统发布1 | 加快智能手机搭载 鸿蒙2.0加快智能手机适配。 |
鸿蒙操作系统2.0正式版本发布1 | Linux宏内核为主 鸿蒙2.0以Linux宏内核为主。 |
鸿蒙商用微内核兼容性和性能解读3 | 微内核优化 鸿蒙微内核优化兼容性和性能。 |
鸿蒙系统告别传统Linux内核4 | Linux内核局限 鸿蒙系统不再依赖传统Linux内核。 |
鸿蒙内核1 | 华为自研 微内核设计,适配新兴应用场景。 |
Linux内核3 | 传统主导 宏内核设计,存在安全性和通用性问题。 |
陆首群1 | 华为鸿蒙内核分析者 深入分析华为鸿蒙内核与操作系统的发展历程。 |
陈海波3 | 鸿蒙内核研究者 上海交通大学教授,对鸿蒙内核的兼容性和性能进行深入研究。 |