This page looks best with JavaScript enabled

UNIX, BSD and Linux

UNIX 的前身

1964 年麻省理工學院及美國奇異公司研發 Multics (MULTiplexed Information and Computing System)
1965 貝爾實驗室加入
1969 年因為開發速度太慢, 貝爾實驗室決定退出這個計劃

UNIX 的起源

1969 年 AT&T 貝爾實驗室的 Kenneth Lane Thompson (B 語言 & C 語言的作者, 討厭 C++, 也是 go 語言作者之一) 在 DEC 公司的 PDP-7 迷你電腦上使用組語開發自己的系統
1971 年 v1 UNIX 出版, Kenneth Lane Thompson 與同事發明 C 語言, 與 UNIX 同時發展, 因此成為系統程式設計的首選

BSD 的起源

1973 年 UC Berkeley 取得 AT&T 的 UNIX 授權
1974 年 UC Berkeley 成立 CSRG (Computer Systems Research Group)
1975 年 Kenneth Lane Thompson 自貝爾實驗室休長假, 回母校 UC Berkeley 開課, 把 V6 UNIX 裝到 DEC PDP-11
1977 年 UC Berkeley 學生 Bill Joy (Sun Microsystems 創辦人之一 ) 與同學改進 UNIX 與其他東西像是優化 Kenneth Lane Thompson 的 pascal compiler, ex editor 打包成 BSD. Bill Joy 也開發了 csh, vi, 參與 TCP/IP, SPARC 處理器 等

BSD 的崛起

1978 年 發布 2BSD
1979 年 3BSD 誕生 實現虛擬記憶體支援
1980 年 CSRG 接了 DARPA (Defense Advanced Research Projects Agency) 開發網路功能, 包含 TCP/IP
1981 年 4.1BSD 發布
1982 年 比爾·喬伊離開 CSRG
1983 年 4.2BSD 正式發布
1986 年 4.3BSD 提高效能
1988 年 4.3BSD-Tahoe 將依賴於機器跟不依賴於機器的代碼分離

BSD 授權訴訟

1989 年 4.3BSD Net/1 發布 沒有 AT&T 授權也能使用, 可遵照 BSD 授權條款進行自由再發布
1991 年 Net/2 發布
CSRG 核心成員成立公司 BSDi, 將 Net/2 移除 AT&T 所屬的程式與檔案, 包裝成 BSD/OS 販售, 但 AT&T 認為 Net/2 違反 USL 和 Berkeley 的軟體授權協議及侵害 UNIX 著作權, 透過子公司 USL (UNIX System Laboratories) 提告 BSDi
1993 年 雙方和解
1994 年 4.4BSD 發布, 分兩個版本 Lite (公開版本) & Encumbered (AT&T UNIX 授權者才可使用)
1995 年 4.4BSD-Lite Release 2, CSRG 解散

Linux 的起源

1991 年 Linus Benedict Torvalds 接觸 MINIX 後, 因為當時沒 GNU kernel 可用, 發布自己的 Unix-like OS kernel
1994 年 Linux1.0 發布


UNIX based OS

  • UNIX
    • Solaris
    • BSD
      • SunOS
      • AIX
      • FreeBSD
        • DragonFlyBSD
      • NetBSD
        • OpenBSD

MacOSX is based on 4.3BSD, FreeBSD3, NetBSD1.3

我認識的 Linux Distribution

  • Debian
    • MX Linux
    • Raspberry Pi OS
    • Kali
    • Parrot
    • Ubuntu
      • Linux Mint
      • Pop OS
  • Red Hat
    • Red Hat Enterprise
      • CentOS
    • Fedora Core
      • Fedora
  • Arch Linux
    • Manjaro
  • slackware linux
    • SUSE
      • OpenSUSE
    • Gentoo
      • ChromiumOS
        • ChromeOS
  • Android
    • CyanogenMod
      • Cyanogen OS
      • LineageOS
    • Wear OS

未整理

各種版本都有些許差異不相容,IEEE 定義在 UNIX 上的軟體所使用的 API 標準,包括 system call, c 語言介面,shell, thread, 網路, 編號 IEEE1003, Richard Matthew Stallman 提議取名為 POSIX (Portable Operating System Interface)

遵循 POSIX 標準的系統知名的有 LINUX MAC OS X win10 但不一定有 POSIX 認證