Unix系統樹と系譜(BSD・System V・Linux派生図)
なぜBSDとLinuxはライセンスもカーネルも違うのか。1969年の一本のUnixから現代OSへ枝分かれした系譜を年代と表で一枚に俯瞰し、設計思想の根を整理します。
- 1.現代の主要OSは、1969年にベル研で生まれた一本のUnixから枝分かれした子孫です。
- 2.大きく BSD系・System V系・Linux の三系統があり、ライセンスとカーネル構造が系統ごとに違います。
- 3.macOS は BSD系とMachの合流、Linux はUnix非派生でAPI互換、という出自の違いが今の生態系を決めています。
一本の木から始まった
今あなたが触れているサーバー、Mac、Android、家庭用ルーターの多くは、たどると 1969年にベル研究所(AT&T)で Ken Thompson と Dennis Ritchie が作った1本の Unix に行き着きます。半世紀のあいだに、この木は BSD系・System V系・Linux という大きな三系統へ枝分かれしました。
枝分かれを生んだ動力は、技術だけでなく ライセンス(権利) です。「ソースをどう配ってよいか」が、各系統のカーネル構造や思想までも方向づけました。本稿では系統を年代順にたどり、各枝が何を残したかを整理します。
商標としての UNIX は The Open Group が管理し、SUS(Single UNIX Specification)に適合し認証を受けた OS だけが名乗れます。一方で「Unix系(Unix-like)」は、設計思想や API を継ぐが認証は受けていないものを指します。Linux は後者の代表で、コードとしては Unix の子孫ではなく、API を再実装した別系統 です。
三系統の分岐:年代で追う
最初の分岐は 学術と商用 の間で起きました。AT&T は規制上ソフトを商売にできず、Unix を大学に安価で配ったため、研究の場でソースが改変されていきます。その中心が カリフォルニア大学バークレー校(UCB) でした。
- 1969–1971:ベル研で Unix 誕生。1973年に C言語で書き直され、移植性を獲得。
- 1977–1980:UCB が BSD(Berkeley Software Distribution) を配布開始。vi、C シェル、後に仮想メモリ(3BSD)などを実装。
- 1983:4.2BSD が TCP/IP スタックとソケット API を搭載。これがインターネット実装の事実上の標準になる。
- 1983:AT&T が商用版 System V を正式リリース。SysV init や IPC(共有メモリ・セマフォ)の様式を確立。
- 1991:Linus Torvalds が Linux カーネル を公開(MINIX に触発されつつ独自実装)。GNU プロジェクトのユーザー空間と合流。
- 1993–1995:BSD から FreeBSD・NetBSD、さらに NetBSD から OpenBSD が派生。
- 2001:Apple が macOS(Darwin) を公開。Mach + BSD の合流系。
1969 Unix (Bell Labs / AT&T)
│
├─ AT&T 商用系 ── System III → System V (1983) → 各社UNIX (Solaris/AIX/HP-UX)
│
├─ Berkeley系 ── 1BSD..4.4BSD-Lite → FreeBSD / NetBSD → OpenBSD
│ └→ (4.3BSD系コードが) → Darwin / macOS
│
└─(非派生・API互換)── Linux (1991) + GNU → 各ディストリビューション / Android
図の実線はコードの直接の子孫を表します。Linux はどの枝からもコードを受け継いでおらず、点線(API・思想の互換)でつながる別の幹です。「Unix系統樹」を読むときは、血統(コード)と文化(思想)を混同しないことが正確さの要です。
BSD系が残したもの:寛容ライセンス
BSD の決定打は技術と ライセンス の両面にあります。技術面では TCP/IP スタックとソケット API を実装し、これが事実上のインターネット標準になりました。今でも多くの OS のネットワーク用語(socket, bind, listen)は BSD 由来です。
ライセンス面では、BSD ライセンス(寛容型=permissive) を採用しました。「著作権表示さえ残せば、改変版をソース非公開のまま商用配布してよい」という緩さです。これにより BSD コードは Sun の SunOS、後述の macOS、各種組み込み機器へ自由に取り込まれました。
ただし出自には法的な影が落ちます。初期 BSD は AT&T のコードを含んでいたため、1992年に USL(AT&T子会社)が BSDi/UCB を提訴。1994年の和解を経て、AT&T コードを除いた 4.4BSD-Lite が「自由に使える清浄な基盤」として確定し、ここから現代の *BSD 群が出発しました。
- FreeBSD:性能・サーバー用途重視。Netflix の配信基盤や多くの ISP が採用。
- NetBSD:移植性が信条。「とにかく動く」を掲げ対応アーキテクチャが極めて広い。
- OpenBSD:セキュリティ最優先。監査文化から OpenSSH を生み、世界中で使われている。
System V系が残したもの:商用Unixの標準様式
AT&T の System V は、商用 Unix の インターフェース標準 を定めた枝です。SysV init(ランレベルと /etc/rc.d による起動管理)、System V IPC(メッセージキュー・共有メモリ・セマフォ)、SVR4 のバイナリ形式 ELF など、現在の Linux にも残る様式の多くが SysV 起源です。
ライセンスは 商用(クローズド) で、ソースは有償ライセンス契約者のみが扱えました。この枝から Solaris(Sun)、AIX(IBM)、HP-UX(HP) といったベンダー独自 UNIX が育ちます。各社が SUS 認証を取り「本物の UNIX」を名乗った一方、囲い込みが進み、移植性の低い方言の乱立(いわゆる Unix 戦争)を招いた面もあります。
「BSD と System V の違い」は次の3点で押さえます。(1) 出自=UCB(学術)か AT&T(商用)か。(2) ライセンス=寛容型か商用クローズドか。(3) 代表機能=TCP/IP・ソケットか、SysV init・IPC か。Linux はこの二系統の どちらのコードも継いでいない 別系統である点も頻出です。
Linux と macOS:合流と再実装
Linux は系統樹の中で特異です。1991年に Torvalds が ゼロから書いたモノリシックカーネルで、Unix のコードは一行も継いでいません。継いだのは POSIX という API の規格(思想)です。ライセンスは GPLv2(コピーレフト) で、「改変版を配るならソースも同じ条件で公開せよ」と義務づけます。BSD の寛容型とは正反対の哲学で、これがコミュニティへの還元を強制し、巨大な共同開発を成立させました。ユーザー空間は GNU プロジェクトが提供し、合わせて GNU/Linux と呼ばれます。
macOS は逆に 合流(マージ) で生まれました。NeXT 由来の XNU カーネルは、Mach マイクロカーネルを土台に BSD 層(プロセス・ファイル・ネットワークの API は FreeBSD 由来)を載せた ハイブリッド構造 です。ユーザーが触れる ls や ps、ソケットの作法は BSD の血を引きます。BSD ライセンスの寛容さが、この商用クローズド OS への取り込みを可能にしました。
| 観点 | BSD系 | System V系 | Linux | macOS (Darwin) |
|---|---|---|---|---|
| コードの出自 | Unix直系(4.4BSD-Lite) | Unix直系(AT&T) | 非派生・API互換の再実装 | Mach+BSD系の合流 |
| カーネル構造 | モノリシック | モノリシック | モノリシック(モジュール式) | ハイブリッド(Mach+BSD) |
| ライセンス | BSD(寛容型) | 商用クローズド | GPLv2(コピーレフト) | 商用(BSD系コードを内包) |
| 代表的遺産 | TCP/IP・ソケット・OpenSSH | SysV init・IPC・ELF | 巨大OSS生態系・Android | NeXT由来UI+BSDユーザー空間 |
| UNIX商標認証 | 通常なし(Unix系) | あり(Solaris等) | なし(Unix系) | あり(認証取得済み) |
カーネル構造に注目すると、BSD・System V・Linux はいずれも モノリシック(OS の主要機能を1つの大きなカーネル空間に置く)です。一方 macOS の XNU は Mach 由来の ハイブリッド で、ここだけ設計の系譜が異なります。ライセンスとカーネル構造は独立した軸であり、「寛容=マイクロ」「コピーレフト=モノリシック」のような対応関係はない点に注意してください。
まとめ
- 主要OSは 1969年の一本の Unix に発し、BSD系・System V系・Linux の三系統へ分岐した。
- BSD系 は寛容ライセンスと TCP/IP・ソケットを残し、FreeBSD/NetBSD/OpenBSD と macOS の基盤になった。
- System V系 は商用クローズドで、SysV init・IPC・ELF など標準様式と各社 UNIX を生んだ。
- Linux は Unix 非派生の再実装で、GPLv2 のコピーレフトが巨大な OSS 生態系を育てた。
- 系統を読むときは コードの継承(血統)とライセンス・思想(文化) を分けて捉える。
カーネルの権限境界は カーネルモードとユーザーモード、各系統が共有する API の入口は システムコール と ファイルシステム を、BSD 由来の効率化技法は コピーオンライト も合わせてどうぞ。
OS Article
Unix系統樹と系譜(BSD・System V・Linux派生図)を実務で読む
TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。
解決すること
Unix
比較で見る軸
難易度: advanced / カテゴリ: OS / タグ数: 5
導入後に効く点
大きく BSD系・System V系・Linux の三系統があり、ライセンスとカーネル構造が系統ごとに違います。
先に潰すリスク
用語だけ覚えても、設計・実装・運用でどこに効くかを確認しないと判断を誤る。
- 難易度
- advanced
- カテゴリ
- OS
- タグ数
- 5
判断チェックリスト
- 自社の用途が「Unix / BSD」に近いか確認する。
- 強みである「現代の主要OSは、1969年にベル研で生まれた一本のUnixから枝分かれした子孫です。」が本当に評価軸になるか確認する。
- 注意点の「用語だけ覚えても、設計・実装・運用でどこに効くかを確認しないと判断を誤る。」を運用で吸収できるか確認する。
- 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
- 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
- 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。