Plan 9 Unixの後継としてベル研究所によって開発されました。さまざまな理由で、それ自体が完全に実現することはありませんでしたが、それでもかなりの量の開発が計画9に入りました。
私の質問は、プラン9から現代のUnixにどのように進んだのでしょうか?
Linuxでのclone
(2)システムコールは 言われています はPlan9のrfork()
をモデルにしています。 (個人的にはタイミングがどうなるかわかりません。)
この論文 プラン9が「マウント/ファイルシステムの名前空間」に影響を与えたと主張しています。
/proc
filesystem は、第8版のUnixからではなく、プラン9に到達したようです。
明白なものはおそらくUTF-8です。しかし、それはおそらくあまりにも明らかです。
AlViroによるLinuxVFSの壮大な再構築は、Plan9に大きく影響を受けています。特に「すべてがファイルである」から「…そしてすべてがファイルである」への移行。
Linuxの/ procファイルシステムはPlan9のアイデアです。
nionfs や aufs などのユニオンファイルシステムは、Plan9 ユニオンディレクトリマウント に触発されました。
たとえば、ライブCDでこれらを使用して、CDの/usr/bin
を書き込み可能なファイルシステムにマージし、CDが読み取り専用であっても/usr/bin
を変更できるようにします。
たとえば、Plan9でドキュメントを正しく理解している場合は、次のようにできます。
bind -b /usr/bin /bin
bind -b /usr/local/bin /bin
bind -b /home/username/bin /bin
また、3つのディレクトリすべてのファイルはすべて/bin
に表示されます(名前が重複している場合は、-b
オプションにより、最後に指定されたディレクトリのファイルが優先されます)。
これがブルースが「マウント/ファイルシステム名前空間」によって意味するものなのか、それとも別のものなのかはわかりません。
プラン9では、すべての「ファイルシステム」はユーザースペースデーモンによって実装されます。 (ヒューズを考えてください。)これらのデーモンはすべて9P(具体的にはプロトコルの2番目のリビジョンである9P2000)を話します。 9Pは本質的にシステムのさまざまな部分を一緒に保持するものです。
v9fs プロジェクトは、9Pプロトコル用のLinuxカーネルドライバーを実装します。 Plan 9 wikiページ によると、カーネル2.6.14の時点でメインラインカーネルにあります。