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

linus 对 rust 进 kernel,到底啥态度呢?

  •  1
     
  •   zzz22333 · 1 天前 · 2462 次点击

    之前看帖子说,linus 反对 rust 进内核,今天早上看到一个新帖子:

    Christoph Hellwig 离开 Linux DMA 维护组自从 Linus 接受 Rust 语言编写 Linux 内核之后,一直是讨论甚至争吵的焦点。在 Linus Torvalds 表明会接受一组用于内核 DMA 映射层的 Rust 抽象代码合并后,相关讨论逐渐平息。但这一决定导致 Christoph Hellwig 悄然辞去 DMA 映射代码的维护工作,Marek Szyprowski 将接任 DMA 维护者。有人认为 Hellwig 离职是因为 Linus 的决定剥夺了他对关键子系统的维护权力,他不愿继续负责无法自主决策的部分;也有人认为他只是不喜欢 Rust 代码,离职行为近乎幼稚。但实际上,Linus 表示 Hellwig 无需处理 Rust 代码,但也不能对其使用自己维护的 C 接口进行限制。传统上,维护者需负责子系统中所有树内用户相关问题,若 API 变动需修复所有受影响的用户代码,并处理相关错误报告。但对于 Rust 代码有特殊规定,C 代码变动导致 Rust 代码问题时,由 Rust 维护者负责修复 。有人认为这打破了长期以来的 Linux 主线政策,也有人认为维护者不应拥有绝对否决权,应平衡各方利益。

    似乎又接受了 rust 进 kernel ,有没有大佬科普下呢?

    20 条回复    2025-03-06 10:49:45 +08:00
    xtreme1
        1
    xtreme1  
       1 天前
    "之前看帖子说" 谁在哪说的
    R4L 进主线是 Linus 拍板的
    zzz22333
        2
    zzz22333  
    OP
       1 天前
    @xtreme1 #1 我得找找了,上两周朋友圈转发的挺多。
    gucheen
        3
    gucheen  
       1 天前
    linus 的态度,最初是开放(中立),现在是支持,从来没有反对过
    zzz22333
        4
    zzz22333  
    OP
       1 天前
    之前的帖子,指的啥“Hector Martin 退出上游 Linux 内核开发” 这件事
    minami
        5
    minami  
       1 天前
    "C 代码变动导致 Rust 代码问题时,由 Rust 维护者负责修复"--》这句话实践中等同于放屁,如果 Linus 真的是这么想的话,只能祝 R4L 项目好运了
    zzz22333
        6
    zzz22333  
    OP
       1 天前
    @minami #5 哈哈哈,确实是。
    yolee599
        7
    yolee599  
       1 天前
    linus 从来就没有反对过 Rust 啊,linus 是不喜欢 C++,不是不喜欢 Rust 。
    qwertty01
        8
    qwertty01  
       1 天前
    肯定是要支持的 听说过 rust 信徒 可没谁是 c 信徒吧
    随着老一代 linux 内核者退位 新一代内核维护者怎么培养 现在还有多少学 c 的
    把 rust 引进 linux 内核 理论上此 c 好一点
    zzz22333
        9
    zzz22333  
    OP
       1 天前
    @qwertty01 #8 有道理啊,建议从大一就开始学习 rust 。
    sighforever
        10
    sighforever  
       1 天前   ❤️ 1
    @minami 详细讲讲呢,为什么实践中做不到呢?
    klesh
        11
    klesh  
       1 天前
    tootfsg
        12
    tootfsg  
       1 天前 via Android
    5 楼的发言算是不考虑事实的理论观点。

    当前时间下的 Rustacean 在整个编程语言中对比中,都是非常有活力的。
    当前时间下的实践是已经做到了的。

    c 开发者和 c 社区活力都在减少。

    linus 对 rust 的态度比较容易能看出来。
    rust 设计的不错,不说优点,起码在写操作系统上没有不能接受的缺点。
    rust 的一系列优点能降低对 Linux 开发者的要求。
    rust 开发者当前很有活力,预计未来一段时间也是如此。
    linus 不会强制原来的 c 开发者学习 rust 。
    linus 在公开 rust 能进主线的观点,又不明确规定 rust 只能做 Linux 的哪部分还是都能做,是希望 rust 开发者能主动多参与进 Linux ,在只有 c 和 c 加进来 rust 后,双方开发者能有一个不错的状态来推动 Linux 发展。
    显然这次事件,dma 的 c 维护者的做法,不符合 linus 的想法,于是有了一句更加明确的话:不参与 rust ,就没有 rust 的发言权。


    在参与项目中,应该多沟通,才能更加明确彼此的意见。
    lloovve
        13
    lloovve  
       1 天前 via iPhone
    Rust 自己从头完全整一个 linux 。
    minami
        14
    minami  
       1 天前
    @sighforever
    @klesh
    打了很多还是删了,说多了也没啥意义,归根到底就一句话,你凭什么觉得 Rust 维护者一定会配合?你可以把自己代入到 Rust 维护者的身份,想想如果你不想负责的话,能找出多少个理由来阻扰这次变动,这个是人性的问题
    zzz22333
        15
    zzz22333  
    OP
       1 天前
    还有一个点,站里面前后端开发者比较多,所以会有一种 C 语言落后,或者没看过 C 语言开发者的错觉。实际上,在嵌入式行业,C 语言是绝对主流的存在,以往很多高级语言尝试撬动 C 语言的定位,但是都失败了。
    zzz22333
        16
    zzz22333  
    OP
       1 天前
    @zzz22333 #15 C 语言开发者只是不上论坛,而不是死了...
    xpfd
        17
    xpfd  
       1 天前
    rust 那么喜欢重复发明轮子,直接开分支重新写一个 linux 内核多好
    zwy100e72
        18
    zwy100e72  
       1 天前
    “最新”进展是:DMA 子系统前 maintainer Christoph Hellwig 辞去 maintainer 职务 https://lwn.net/Articles/1011819/

    往前推一步,Linus Torvalds 明确表示会 DMA 子系统的 maintainer 不能阻止其他人使用 DMA 子系统的 api https://lwn.net/Articles/1011197/

    最开始时,Rust for Linux 社区计划给 DMA 子系统加一个 Rust 封装,CH 邮件表示拒绝 https://lwn.net/Articles/1006805/ ; R4L 成员 & Asahi Linux 发起人 Hector Martin 社交媒体上表示 CH 这是偏见和保守的态度,被 Linus 邮件批评

    整个流程中我认为 Linus 对 Rust 的态度基本上都是中立或稍微偏向积极一些的,没有明显的反对 R4L
    klesh
        19
    klesh  
       17 小时 39 分钟前
    @minami Oh, 原来如此。原本以为你说的是技术上不太可行。了解了,感谢回答。
    levelworm
        20
    levelworm  
       16 小时 17 分钟前 via Android
    其实我不太明白,现在人学第一门系统编程语言,不是 C 而是 Rust 吗?我觉得 C 语法上简单多了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1072 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 19:06 · PVG 03:06 · LAX 11:06 · JFK 14:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.