这是一件令人好奇的事情,但我想知道目前 Linux 内核有多少是用 Rust 编写的?我的意思是百分比,如果你知道是哪一部分?是只有驱动程序还是纯 Rust 内核的真正部分?
注意:在 github.com/torvalds/linux 页面上有一个统计数据表明没有生锈。
C 98.3%
Assembly 0.7%
Shell 0.4%
Makefile 0.2%
Python 0.2%
Perl 0.1%
Other 0.1%
答案1
跑步scc
当前内核树上显示:
───────────────────────────────────────────────────────────────────────────────
Language Files Lines Blanks Comments Code Complexity
───────────────────────────────────────────────────────────────────────────────
C 33535 23766166 3418052 2665352 17682762 2350608
C Header 24532 9561797 730157 1434776 7396864 51421
[…]
Rust 64 20887 1538 9857 9492 877
[…]
───────────────────────────────────────────────────────────────────────────────
Total 79107 37438114 4702768 4249053 28486293 2424920
───────────────────────────────────────────────────────────────────────────────
所以 0.03% 的代码(忽略注释)是用 Rust 编写的。目前来说主要是支持代码; 6.8 可能会有1 个 phy 驱动程序用 Rust 写的。