V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
seasona
V2EX  ›  华为

粗略解读一下 OSDI24 上华为鸿蒙内核的论文,抛砖引玉

  •  2
     
  •   seasona · 2024 年 7 月 14 日 · 1033 次点击
    这是一个创建于 646 天前的主题,其中的信息可能已经有所发展或是发生改变。

    论文地址: https://www.usenix.org/system/files/osdi24-chen-haibo.pdf

    对这篇论文我的一些浅见:

    • 鸿蒙内核总体来说是微内核架构,更偏向混合内核

    • 为了解决微内核的性能问题,做了很多优化,比如隔离层拆的更细,优化了分页机制等等,这块还没仔细研究

    • 我最关注的是鸿蒙如何兼容 Linux 生态:

      • 用户态程序:鸿蒙内核提供了一个 Linux ABI shim ,用户态照常使用 Linux 的 syscall ,会被 Linux ABI shim 转发为鸿蒙内核处理,这个跟微软的 WSL1 是很类似的,鸿蒙是微内核,处理这个很方便

      • 硬件驱动程序:提供了 Linux driver container 机制,我理解跟 linux 内核的 UML 机制差不多,在用户态运行 linux 内核 Runtime ,驱动运行在用户态 linux 内核 runtime 上,这样可以直接使用 Linux 生态的硬件驱动程序。当然相比于 Linux 硬件驱动直接运行在内核态,性能会比较差。鸿蒙提供的解决方案是:对于性能要求高的程序,在内核态重写一个 twin driver 用于处理中断等数据面,将控制面数据面分离。但这个就要求厂家针对鸿蒙适配驱动了,而且鸿蒙内核也没开源,所以只能说能发论文,用在华为自己的路由器手机或者车机上没问题,其他生态还是不好说

    总得来说,这篇论文还是有挺多干货的。能把鸿蒙这套内核架构商业化落地,华为在操作系统方向的技术还是很牛的,也有魄力投入👍,要是 PR 的时候少吹点牛逼就好了。

    9 条回复    2024-07-14 12:30:32 +08:00
    murmur
        1
    murmur  
       2024 年 7 月 14 日
    鸿蒙为啥兼容 linux 生态,他所有的应用都是定制化重写的,这就是行政的力量

    而且鸿蒙有 2 个版本,一个是基于 linux 内核的开放鸿蒙,上平板和电脑无条件支持 linux

    一个是封闭鸿蒙,所有的应用都是重新开发
    GrayXu
        2
    GrayXu  
       2024 年 7 月 14 日
    @murmur #1 你看了 paper 就知道了,不需要重写。
    yanghanlin
        3
    yanghanlin  
       2024 年 7 月 14 日 via Android
    好奇鸿蒙内核对 Linux 系统调用兼容到什么程度,比如支持 eBPF 吗?原来 eBPF 做 tracing 的一些工具估计不太适用了
    yanghanlin
        4
    yanghanlin  
       2024 年 7 月 14 日 via Android
    @murmur 我理解目标不局限于国内的话,兼容性还是挺重要的,毕竟
    yanghanlin
        5
    yanghanlin  
       2024 年 7 月 14 日 via Android
    @murmur (抱歉点错发出去了)我理解目标不局限于国内的话,兼容性还是挺重要的,毕竟在国外华为也没什么特殊地位
    murmur
        6
    murmur  
       2024 年 7 月 14 日
    @yanghanlin 兼容是苹果 m4 要考虑的事情,现在我们的信创台式机都是麒麟 990 ,开先系列据说因为 x86 很多地方都不能采购,那玩意可是 i3 10 代的水平啊

    麒麟 990 兼容 linux 生态有什么意义么,不会你以为这玩意就算兼容 linux ,你可以开 idea 流畅写码,用达芬奇剪辑

    如果给我强力 cpu ,然后给腾讯敲打一顿让他别作恶,那我就用 uos 就可以了啊
    murmur
        7
    murmur  
       2024 年 7 月 14 日   ❤️ 1
    @yanghanlin 很多人对鸿蒙 pc 的期待错了,首先是因为采购吃回扣,你花几倍的价钱买了奔腾 D 赛扬的处理器,你才觉得电脑垃圾

    以为换了鸿蒙 PC 就能流畅,的确 990 的性能跑 linux 吃力点,跑个平板系统基本的流畅性没问题,肯定爆杀 linux 那套桌面

    但是流畅度不等于绝对性能啊,我们是在信创的前提下讨论鸿蒙才有意义

    没有信创同样的价格买苹果他不香码
    ranaanna
        8
    ranaanna  
       2024 年 7 月 14 日
    这种吹牛的论文会有人认真看?通篇看下来,就是再造(照抄?)的一个 linux 精简内核,然后号称可兼容、性能提升、商业化成功、经验教训总结等等。干货在哪里?看 section 2 简直全程直摇头,基本上每句话都有槽点,特别是 2.3 issues with linux 简直毫无逻辑可言。section 7 倒是值得一读,是一个内部开发总结,充分显示(暴露)其开发水平。不过这些倒是符合华为一贯的调性。
    zizon
        9
    zizon  
       2024 年 7 月 14 日
    看起来还不完全是一个传统意义的微内核.解决 IPC 性能那个看着还是属于折衷的.
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   5393 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 09:15 · PVG 17:15 · LAX 02:15 · JFK 05:15
    ♥ Do have faith in what you're doing.