Windows 10 中的包含 Linux 子系統是否違反了 GPL?

新聞鏈接:什麼鬼 Windows 10暗藏Linux子系統

在 Windows 10 中包含 Linux 子系統,是否違反了 GPL 許可證?


我來公布一下答案吧,那個不是linux,是完全clean room版本的實現。所以不違反GPL。

至於具體功能、如何實現這些事情,恕我不能在這裡說。但開發過程是,一個pm看linux文檔,寫出介面的spec。一幫完全沒有看過任何linux代碼的人作為dev,根據spec猜測實現。經過這樣的clean room之後,已經和GPL沒關係了。


放心吧,養了這麼多法務不是吃白飯的。再說就看一個文件名就能扯到GPL,這也太標題黨了。


安卓自己的代碼都是Apache授權,扯什麼GPL?

https://source.android.com/source/licenses.html

The issues discussed above are our reasons for preferring ASL2.0 for our own code. They aren"t criticisms of LGPL or other licenses. We are passionate about this topic, even to the point where we"ve gone out of our way to make sure as much code as possible is ASL2.0 licensed. However, we love all free and open source licenses, and respect others" opinions and preferences. We"ve simply decided ASL2.0 is the right license for our goals.

AOSP不是沒有從別處授權來的代碼,但是做ROM的人只要不做改動直接把AOSP的版本拿來用,那麼沒有義務公開代碼。--Embedded Android: Porting, Extending, and Customizing By Karim Yaghmour p12


提問者你需要搞清楚,GPL協議雖然「傳染力」強大,但是也沒有強到一碰就那啥的地步。比如說syscall的介面就不傳播GPL,內核開個文件系統(procfs什麼的)一類的方式進行交互也不傳播GPL。

考慮正常的GNU/Linux系統,其實是GNU的userland,加上Linux內核,兩者通過syscall共同工作。

Android是Linux內核,apache協議的userland(bionic的libc,一些其他的非GPL程序),這沒問題。

微軟這樣,自己重新在NT內核的什麼地方架一層兼容層,下面跑GNU的userland,顯然也沒問題。

高票回答提到了clean room,是為了確保兼容層不會被linux kernel實現沾染到。其實你要不要clean room,只要足夠自覺都是沒問題的,但是不這麼做會留下競爭對手可以攻擊的弱點,畢竟有的東西很容易寫成一樣的……一不小心就演變成麻煩的官司。


先例:Android除Linux內核以外的代碼並非GPL許可。

內核方面的法律問題早有解決之道:《微軟承認多年一直使用Linux內核 未來加大貢獻》。並且微軟過去有Xenix、SUA(SFU)、Linux的開發經驗。

在微軟 (Microsoft) 公司從事 iOS / OS X 開發是怎樣一番工作體驗? - 陳甫鵃的回答

微軟公司Linux貢獻者名單:

Abhishek Gupta

Alex Ng

Andrew Schwartzmeyer

Brian Robbins

Christopher Oo

Dexuan Cui

Fuzhou Chen

Haiyang Zhang

Hank Janssen

Jake Oshins

Keith Mange

Ky Srinivasan

Long Li

Mike Sterling

Nick Meier

Orest Zborowski

Raymond Chen

Simon Xiao

Thomas Shao

Tom Talpey

Yue Zhang

看起來大部分是做Hyper-V驅動的?


年輕人!

windows從NT4時代就包含了一個POSIX子系統,到今天已經有20多年了

應美國政府要求,windows nt4完整了移植了POSIX子系統

並且當年NT4是一堆BSD大牛們的作品

看我UNIX家族人丁興旺!


其實很早之前Windows就有一個Unix子系統, 把那個Unix子系統改吧改吧改成Linux子系統應該不難


推薦閱讀:

Windows Phone 應用會在 2015 年下半年迎來爆發么?
Windows 10 下有什麼能夠方便輸入直角引號的中文輸入法?
為什麼win10電腦藍屏後依然可以顯示中文?
已經接受win10預訂,重裝系統之後如何能夠顯示win10推送?
為什麼直到 Windows 10 微軟才解決了一些體驗上相當致命的問題?

TAG:微軟Microsoft | Linux | 開源 | GPL | Windows10 |