Linus新年首罵:和谷歌大佬大吵4天,“你的代碼就是垃圾”
風(fēng)風(fēng)火火的Linux之父,Linus Torvalds,他又躍入公眾的視線。
“打開方式”依舊是熟悉的配方——罵人。
我們先來看下Linus怒懟的名場面:
而這一次的“受害者”,是來自谷歌的一位程序員,Steven Rostedt。
而且他并非是隨隨便便的一位開發(fā)者,用網(wǎng)友的話來說“也算是大佬了”。
△圖源:“OSC開源社區(qū)”評論區(qū)
不僅如此,從時間線上來看,雙方已經(jīng)交鋒了足足有4天之久……
那么這到底是怎么一回事?
一個“inodes”,吵了四天
這場激辯是發(fā)生在Linux內(nèi)核郵件列表。
Steven起初是發(fā)了個帖子,主題是關(guān)于eventfs(事件文件系統(tǒng))的補丁。
具體而言,就是想探討一下inodes(索引節(jié)點)是否應(yīng)該保持唯一性的問題。
(注:inodes是Linux文件系統(tǒng)中的一個核心概念。它是一個數(shù)據(jù)結(jié)構(gòu),用于存儲文件或目錄的元數(shù)據(jù),而不是文件的實際內(nèi)容。)
Steven認為:
在Steven看來,由于tar命令依賴于inode來確定文件的唯一性,這種做法會破壞tar命令的功能:
除此之外,Steven也給出了自己想到的解決辦法——建議將VFS層的get_next_ino()函數(shù)復(fù)制到tracefs的tracefs_get_next_ino()函數(shù)中,并添加一個“files”參數(shù)。
這樣,當(dāng)創(chuàng)建eventfs目錄時,就可以預(yù)先知道所需的inode數(shù)量。tracefs_get_next_ino()將返回一個新的inode,并預(yù)留下一個“files”個inode供調(diào)用者使用。
當(dāng)創(chuàng)建文件的inode時,其inode將是其父目錄的inode加上在該目錄文件數(shù)組中的索引,從而為每個文件提供一個唯一的inode。
然而,如此提案卻被Linus強烈反對。
Linus的核心觀點是“inode已經(jīng)不再是唯一的描述符,我們不應(yīng)該繼續(xù)依賴于這種舊有的機制”。
不過對于Linus的回復(fù),Steven并沒有買賬,他堅持認為:
然而在幾輪探討過后,Linus就坐不住了,隨即就出現(xiàn)了剛才怒懟的名場面:
雙方似乎都是各執(zhí)己見,來來回回博弈了良久,從1月26日一直battle到了1月29日……
不過戲劇性的一點是,Linus在爭吵之余,后來還發(fā)布了Linux內(nèi)核6.8-rc2版本。
他希望這個版本能夠解決之前版本中發(fā)現(xiàn)的問題,并鼓勵用戶進行測試。
并非第一次公開“交鋒”
其實在此之前,Steven也曾在2020年初之際,在一場活動演講中,公開與Linus“交鋒”過。
他甚至直接將演講的主題定位“Arguing with Linus Torvalds”,內(nèi)容依舊是圍繞著如何讓Linux效率得到改善而做出的建議。
不過對于這次最新的battle,網(wǎng)友們也是各抒己見。
有認為應(yīng)該拋棄歷史包袱的,有認為只是二人設(shè)計理念的差距:
△圖源:“OSC開源社區(qū)”評論區(qū)
你覺得呢?
- 免責(zé)聲明
- 本文所包含的觀點僅代表作者個人看法,不代表新火種的觀點。在新火種上獲取的所有信息均不應(yīng)被視為投資建議。新火種對本文可能提及或鏈接的任何項目不表示認可。 交易和投資涉及高風(fēng)險,讀者在采取與本文內(nèi)容相關(guān)的任何行動之前,請務(wù)必進行充分的盡職調(diào)查。最終的決策應(yīng)該基于您自己的獨立判斷。新火種不對因依賴本文觀點而產(chǎn)生的任何金錢損失負任何責(zé)任。