6 月 6 日消息 據(jù)外媒報(bào)道,一位來自澳大利亞的開發(fā)者 Brendan Gregg 在最近的一篇博客中表示,他的開源項(xiàng)目「DTraceToolkit」代碼 被 IT 巨頭 Sun Microsystems 竊取,而對方只是刪掉了代碼中的注釋,無可奈何。
IT之家了解到,Sun Microsystems 是一家 IT 及互聯(lián)網(wǎng)技術(shù)服務(wù)公司(已于 2009 年被甲骨文收購),創(chuàng)建于 1982 年,主要產(chǎn)品包括工作站、服務(wù)器和 UNIX 操作系統(tǒng)等,內(nèi)地多譯為太陽計(jì)算機(jī)系統(tǒng),曾被認(rèn)為是最具創(chuàng)造性的企業(yè)之一,也是引領(lǐng)過一個時代的巨頭,例如 Java、MySQL 等。
(小插曲:甲骨文收購后利用該專利狀告谷歌的 Android 項(xiàng)目使用了大量 Java 代碼(閉源),雙方扯皮十多年,最終由美國最高法院在 2021 年 4 月判處谷歌勝訴)
說回 Brendan Gregg,這個故事要從 2005 年講起,當(dāng)時他作為一名個人性能顧問,而恰逢 Sun Microsystems 剛發(fā)布了 DTrace 工具,迅速在他這類性能分析師 中爆火起來。
而他發(fā)現(xiàn),他開發(fā)出的 DTrace 工具比 Sun 本身生產(chǎn)的還要多,包括 DTrace 開源項(xiàng)目 DTraceToolkit 和其他 DTrace 工具(也就是腳本) 編寫和發(fā)布的高級性能工具。
(科普:DTrace 全稱 Dynamic Tracing,即動態(tài)跟蹤,是由 Sun Microsystems 開發(fā)的一個用來在生產(chǎn)和試驗(yàn)性生產(chǎn)系統(tǒng)上找出系統(tǒng)瓶頸的工具,可以對內(nèi)核和用戶應(yīng)用程序進(jìn)行動態(tài)跟蹤并且對系統(tǒng)運(yùn)行不構(gòu)成任何危險的技術(shù))
之后他還附上了一張 DTraceToolkit v0.96 tools (2006) 的截圖佐證。
在那之后,一位官方專家從美國到訪,并交給他了一個內(nèi)部項(xiàng)目,其中包括來自 Sun 的一些高端技術(shù)。他們見面之后,對方向他演示了一些 DTrace 功能,例如雙擊圖標(biāo)來運(yùn)行多個 DTrace 工具,并將原始數(shù)據(jù)輸出到單獨(dú)的窗口中,或者將結(jié)果顯示為折線圖,原主認(rèn)為似乎相當(dāng)平庸,而且對方還向他炫耀。
此時,為了避免尷尬,原主決定順對方的意思看一下其演示內(nèi)容的套接字 I/O 腳本。
之后,當(dāng)他找到這些工具的目錄后發(fā)現(xiàn),它們名字都顯得十分很熟悉,例如其中一個叫做「socketsnoop.d」的程序,他嘗試了一下,結(jié)果證實(shí)了心中的猜想:是他在那一年前的嘗試性內(nèi)容,當(dāng)時已作為開源項(xiàng)目發(fā)布。
再然后,他嘗試了更多工具,編碼風(fēng)格完全一致,最后發(fā)現(xiàn)這些工具基本都是他早期編寫的腳本,而他注釋中的署名、開源許可證等也完完全全地被替換掉,也就是說這些人推銷抄襲的工具竟然可笑地推銷到了原主頭上。
他并沒有當(dāng)場發(fā)作,只是建議他們更新一下代碼,因?yàn)橛行?bug 已經(jīng)修復(fù)很久了,而且他還開發(fā)出了比「socketsnoop.d」更好用的新版本。
值得一提的是,他也只是講述了這個十多年前的故事,而沒有帶公眾節(jié)奏或試圖去拿到賠償,也僅僅只是以第一人稱講了一個故事罷了。
此外,他還特意表揚(yáng)了蘋果,因?yàn)樘O果在那之后也將其數(shù)十種工具添加到 OS X 中,不過這次完整地保留了原作者的姓名、版權(quán)和完整的 CDDL 開源許可證等信息。
關(guān)鍵詞: 開發(fā)者 開源項(xiàng)目