UNIX 與 Linux:它們有何不同?
UNIX 是一個功能強大的多用戶操作系統 (OS),40 多年來它定義了我們的計算方式。它提供了許多我們今天認為理所當然的功能和抽象。這包括文件是未解釋的字節序列的概念以及分層文件系統的概念。
本文將向您展示原始 UNIX 操作系統與其現代精神繼承者 Linux 之間的一些差異。此外,它還將向您展示每個系統的歷史和顯著功能的簡要概述。
什麼是 UNIX?
自 20 世紀 70 年代末以來,UNIX 已經為現代、強大的操作系統設定了標準。它由貝爾實驗室開發,成為推動計算機科學領域一些最聰明的人進行操作系統研究的工具。
最初研究的UNIX操作系統可以分為七個獨立的版本。其中每一個都在 UNIX 系統及其實用程序的工作方式方面引入了許多創新。例如, 和awk
程序sed
首先出現在第 7 版 Research UNIX 中。
在 20 世紀 80 年代,AT&T 重新包裝了最初的研究 UNIX 以及其他內部變體,為企業和機構創建了一個商業系統。這被稱為 System III 和 System V UNIX。它包括 uname 命令和 Korn Shell 等功能。最終,這兩個版本成為現代 UNIX 衍生產品(例如illumos、OmniOS和IBM AIX)的基礎。
什麼是Linux?
Linux 是針對現代系統架構的 POSIX 兼容類 UNIX 內核的潔淨室實現。Linus Torvalds 於 1991 年創建了它作為一個小項目,為閉源 System V UNIX 提供了替代的開源內核。
大多數人認為 Linux 本身就是一個操作系統。然而,它僅對應於系統的內核二進製文件。Linux 機器通常是社區主導的軟件項目的集合,維護人員將其捆綁為單個“發行版”。每個發行版都提供自己獨特的構建過程以及一組基本程序。
例如,Red Hat Enterprise Linux 和Devuan Linux都使用 Linux 內核,但用戶空間實用程序卻截然不同。
如今,Linux 在幾乎所有計算層面都是家喻戶曉的名字。除了作為互聯網的支柱之外,您還可以在 SoC 板上找到 Linux,以及在超級計算機集群上運行的高性能發行版。
UNIX 與 Linux 命令
雖然 UNIX 和 Linux 共享共同的計算範例,但這兩種操作系統在可在其中使用的命令和選項上有所不同。
基本 UNIX 命令概述
一般來說,UNIX 命令通常很簡潔,幾乎不包含任何附加選項。這符合操作系統以研究為中心的起源,它希望用戶可以對他們想要的機器功能進行編程。
例如,cat
UNIX中的命令只有一個標誌,並且ls
只包含11。此外,原始UNIX系統的命令沒有任何長選項。這可能會讓系統一開始不直觀,但一旦您熟悉了它的簡短選項,系統就會很快。
由於 UNIX 派生系統嘗試維護遺留代碼和程序,因此其大多數較低級別的命令現在與常規 Linux 發行版略有不同。例如,OmniOS 使用 BSD 引導加載程序和 System V Init,而不是 GNU GRUB 和 systemd。
基本 Linux 命令概述
與 UNIX 不同,Linux 中的每個命令都包含各種選項,這些選項擴展了原始命令的功能。這使得非程序員也可以訪問該系統,因為默認情況下您需要的大部分內容已經在程序中。
除此之外,Linux 內核還提供了其他功能,例如 KVM,它可以將其作為命令公開給用戶。例如,Red Hat 的 libvirtd 允許您將操作系統用作 Type 1 Hypervisor。
最後,Linux 還為其一些核心實用程序提供了長格式選項。這些是令人難忘且冗長的標誌,允許用戶快速指定他們想要的功能,而無需記住晦澀的單字母選項。
UNIX 和 Linux 之間的差異
考慮到這一點,UNIX 和 Linux 在某些實現和特定於系統的細節上也有所不同。其中包括每個操作系統的版權狀態及其總體性能和可用性。下表突出顯示了兩個操作系統之間的一些主要差異:
UNIX系統 | Linux | |
---|---|---|
版權狀況 | 大多數變體都是閉源的。除了古老的 UNIX 之外,只有少數是開源的。 | 大多數發行版都是開源的並且可以免費使用。 |
社區支持 | 獲得適當的社區支持可能很困難。 | 大多數 Linux 發行版都有活躍的用戶群來提供基於社區的支持。 |
問題解決 | 開源 UNIX 解決系統中的非關鍵問題的速度可能很慢。 | 流行的發行版甚至可以快速解決非關鍵問題。 |
內核開發 | 內核和用戶區由同一團隊開發。這可能會導致更新速度變慢,但代碼更可靠。 | 內核和用戶區是由不同人領導的不同項目。這可能會導致問題和不兼容。 |
一般表現 | 內核代碼的性能改進可能需要一段時間才能開發和發布。 | Linux 內核通常比其他替代內核更快。 |
安全 | 開源 UNIX 對於正常的計算任務來說相對安全。 | SELinux是關鍵任務的金條,也是標準合規性的要求。 |
使用方便 | UNIX 命令選項可能不直觀,因為它不使用長格式名稱。 | Linux 對於新手來說更容易使用,因為它具有直觀的命令。 |
二進制支持 | 在默認存儲庫之外很難找到軟件。 | Linux 發行版提供了多種安裝軟件包的方法。 |
硬件支持 | 支持通常集中於當前和傳統的企業級硬件。 | Linux 支持消費級和企業級硬件。 |
可用的文件系統 | 系統通常帶有 ZFS、UFS、JFS 和 FFS。 | Linux 附帶了 EXT2、3 和 4,以及 XFS、BTRFS 和 JFS。 |
可用的圖形界面 | 如今大多數係統都使用 GNOME 或 Openbox。 | 大多數發行版使用 GNOME、KDE 或 XFCE,但還有許多其他桌面環境可供選擇。 |
默認外殼 | 如今,UNIX 系統使用來自第 7 版 Research UNIX 的原始 Bourne shell (Bsh)。 | 如今大多數係統都使用 Bourne shell 的免費實現:Bourne Again Shell (Bash)。 |
經常問的問題
Windows是UNIX系統嗎?
不。Windows 是一個與 UNIX 和 Linux 完全不同的操作系統。Microsoft 最初將 Windows 開發為 MS-DOS 操作系統的圖形外殼,但隨著 Windows NT 內核的引入,Windows 成為了自己的系統。
macOS 是 UNIX 嗎?
是的。當前版本的 macOS 使用在 XNU 內核上運行的 Darwin 操作系統。這是 Apple 與 Darwin 一起開發的類 UNIX 內核。XNU 主要使用 FreeBSD 代碼庫作為其文件系統、網絡堆棧和系統庫。
Linux 和 UNIX 哪個更快?
在大多數情況下,Linux 是比 UNIX 更快的操作系統。然而,在某些情況下,UNIX 更快、更高效,尤其是在 SPARC 等企業級架構上。
圖片來源:Maksym Zakharyak,來自 Unsplash。所有修改和屏幕截圖均由 Ramces Red 進行。
發佈留言