PTLin 最近的时间轴更新
PTLin

PTLin

V2EX 第 271968 号会员,加入于 2017-12-03 11:14:57 +08:00
今日活跃度排名 2115
根据 PTLin 的设置,主题列表被隐藏
二手交易 相关的信息,包括已关闭的交易,不会被隐藏
PTLin 最近回复了
6 小时 34 分钟前
回复了 zzz22333 创建的主题 电影 昨晚看了哪吒 2,说下感想
哪吒这种面向院线的合家欢电影,画面 >>> 人物 > 爆点 > 剧情。
2 天前
回复了 TOM2333 创建的主题 Linux Rust 替代 C? 除非 Rust 写进指令集。
关键点就错了,问题说到底还是软件工程和政治问题,是一个超大型项目怎么引入第二语言或者一个重大变更并且协调开发者的问题,就更不用说 Linux 这种非中心化分布式开发的大型项目了。
除非一个大功能你能一个人搞定开发,调试,后续 breaking change 追踪更改。不然一但一堆人协调起来,一个人不接受就能让你一直卡在那。
uu 远程真的行
@hxndg 你说的对呀,本来就是所谓内存安全的语言也未必开发出整体逻辑安全的软件呀,这个不是共识吗,rust 又不是你用了就没 bug 了,只是通过语法消除一点内存方面的问题。
@hxndg 不是取代,是一直都有加入第二门稍微现代一点的语言到内核里建议,c++ for linux 的设想都十多年了,并且都有人写出 patchset 了,最后没被接受,最后不了了之了。
rust 所谓的内存安全其实不包含内存泄漏,而且现在的”内存泄漏“很大可能是是 glibc 分配器的问题,很多 rust 用 tokio 的程序换成 mimalloc 会好很多。并且所谓的安全其实反倒不是太重要,开发体验的提升才重要,毕竟 c 这个老古董,懂得都懂了,内核里现在都开始引入类似 go 里面 defer 的机制了。
并且这次吵起来中的人里就有维护 macbook 的那个 linux 发行版的人,因为那个内核里图形驱动就是 rust 写的,这个项目虽然不完善,现代的开发体验本身就是收益。
最后 rust 现在只是 kernel api 的抽象,最多只能用来写内核模块,短期内都不会出现 rust 写核心部件的情况。
每次都是想留点胡子,觉得更男人点,然后几天过去看着镜子感觉好邋遢,就又挂掉了
说实话,想要了解这次的冲突,起码要大概会点内核,明白大概的子系统,要很熟悉 rust ,并且看过 rust for linux 是怎么做抽象的和现在的项目进程才能说出点正常的评论。
不然就会犯以为现在 rust 重写了 Linux ,或者核心部分由 rust 编写了的错误。
实际上现在 rust 也就能写写驱动,做对 c 语言 api 的抽象,并且只抽象出来了非常小的一部分内核功能,这次的焦点 dma 的抽象都没有,离什么 rust 重写内核还差了十几年,而且 Linux 现在本身根本没有哪个部分是 rust 开发的。
@VchentozV 那只是你是这么觉得,事实上之所以进入内核的是 rust 而不是 cpp 就是因为 cpp 实在太复杂了,而且很多特性没法禁用,会给 review 造成问题。并且会 cpp 的群体和 c 很重合,主力军都不小了,需要一点更新的东西和更年轻的人来参与到 Linux 中。
大概意思就是,我是个前端,要加个页面,需要使用后端的一个接口。
然后通知了后端一声,说我要用这个东西了。
然后后端来了一句,我不允许你来更改我的代码,我也不想我改这个接口的时候还要通知你。
https://www.zhihu.com/question/11940762516/answer/99152469629
你可以看看这个回答,这次事件根本不用绕到 c 和 rust ,单纯就是因为人的原因和技术政治原因。
本质上就是假如 Linux 要引入一门新的语言诞生的问题,因为 c 实在太老了,真正会的人只会越来越少,所以 rust 被合并进去了,可以当成是一种现代化尝试。并且你把 rust 换成任何一个语言照样会爆发类似这次的争吵。
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2662 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 16ms · UTC 11:15 · PVG 19:15 · LAX 03:15 · JFK 06:15
Developed with CodeLauncher
♥ Do have faith in what you're doing.