非专业 理解错了轻喷。
首先大家最关心的兼容性方面是linux api+abi兼容。为了复用linux驱动和避免了gpl传染,设计了一个linux驱动的容器层,它是是一个用户态服务,提供了kernel api的runtime。
微内核设计部分,鸿蒙区分了不同的os service的隔离层级,分别是core kernel(直接硬件通信,以及一个特殊的abi兼容层服务),内核服务(例如文件系统,内存管理等),用户态程序。
之前存在的ipc性能问题主要是round trip的开销,例如访问文件要读cache(内存service)如果没有再ipc到文件系统eservice这种round trip。鸿蒙有功能可以将几个内核服务层service配置(合并)为一个整体部分,然后他们之间的ipc开销就大大降低了(这里没看懂,也许是通过共享内存?)
最后性能评估部分,鸿蒙得益于大大简化的代码,以及更短的执行流程(linux为了通用有很多妥协),在手机一些常见应用场景性能比linux要好(例如冷启动),但是由于微内核ipc的开销,在一些场景例如fork,性能还是会比Linux低不少。
最后甚至有geekbench5的比较,在CPU密集场景,鸿蒙和linux差不多。

首先大家最关心的兼容性方面是linux api+abi兼容。为了复用linux驱动和避免了gpl传染,设计了一个linux驱动的容器层,它是是一个用户态服务,提供了kernel api的runtime。
微内核设计部分,鸿蒙区分了不同的os service的隔离层级,分别是core kernel(直接硬件通信,以及一个特殊的abi兼容层服务),内核服务(例如文件系统,内存管理等),用户态程序。
之前存在的ipc性能问题主要是round trip的开销,例如访问文件要读cache(内存service)如果没有再ipc到文件系统eservice这种round trip。鸿蒙有功能可以将几个内核服务层service配置(合并)为一个整体部分,然后他们之间的ipc开销就大大降低了(这里没看懂,也许是通过共享内存?)
最后性能评估部分,鸿蒙得益于大大简化的代码,以及更短的执行流程(linux为了通用有很多妥协),在手机一些常见应用场景性能比linux要好(例如冷启动),但是由于微内核ipc的开销,在一些场景例如fork,性能还是会比Linux低不少。
最后甚至有geekbench5的比较,在CPU密集场景,鸿蒙和linux差不多。
