Linux 算不算是 UNIX 的一個分支?
01-06
基於Linux內核的桌面操作系統能做到像MAC那樣嗎?
疑問來自這個問題,作者認為 linux 應該算是 unix 的一個分支,這種說法正確嗎?
Unix-like from http://en.wikipedia.org/wiki/Unix-like
Linux is not UNIX ,for short linux
嚴格來說,不算.linux最多算類nix系統,連POSIX兼容都做得不情不願(其實就是懶得鳥).
何況Linus自己都說過,如果當年不是BSD一堆的版權官司,也許他就直接基於BSD開發,而不是自己從頭搞一個Linux了.所以從最開始,Linux就是和Unix能有多遠就有多遠,惹不起這幫律師.
根據linus的說法,linus是因為看unix不順眼,自己山寨了個操作體驗差不多的系統,叫linux。因此不是分支,是山寨。
算是Unix的一個變體、
Linux只能算Posix兼容,不是由傳統Unix分支出來的。
Linux 兼容posix,linux 從零開始把posix 對應的介面重新實現了一遍,所以雖然Linux和unix 有相同的系統調用,但實現系統調用的源代碼不一樣,這樣避免了當年unix 面臨的版權糾紛。
linus是在minix基礎上開發的linux 0.0.2,minix是仿Unix系統,是一個高校老師基於教育目的開發的。這個minix是因為att想要收回Unix版權,禁止開放代碼給學生,他沒法讓上課了。在開發時候為了避免版權問題,並沒有看過unix的代碼。雖然是Unix-like,類unix,但是「血統「不純潔。而像BSD這種看過att unix源碼,在此基礎上開發的才是Unix「正統「繼承者。所以linux不能算unix繼承者。
Linux = like Unix
推薦閱讀:
※Atom, Vim, Visual Studio Code, Emacs 哪個好?
※C的結構體成員變數的命名有必要加前綴嗎?
※dos與unix區別?
※為什麼好多人說大牛都玩Unix/Linux?
※為什麼 Python(或 Ruby、Perl 等)沒有取代 Bash 成為系統 Shell?