回答:
clone
Linux の(2)システムコールは、プラン9をモデルにしたと言われていrfork()
ます。(個人的には、タイミングがどのように機能するかわかりません。)
このペーパーは、プラン9が「マウント/ファイルシステム名前空間」に影響を与えたと主張しています。
/proc
ファイルシステムは、第8版のUnixではなく、他の方法で回避からプラン9に来ているように見えます。
明らかなものはおそらくUTF-8です。しかし、それはおそらくあまりにも明白です。
Al ViroによるLinux VFSの壮大な再構築は、Plan9に大きな影響を受けています。特に、「すべてがファイル」から「…そしてすべてのファイルがマウントポイント」への移行。
cd /tmp; echo a > a; echo b > b; sudo mount --bind a b; cat b # => a
Linuxの/ procファイルシステムは、Plan 9のアイデアです。
unionfsやaufsなどのユニオンファイルシステムは、Plan9 ユニオンディレクトリマウントに触発されました。
たとえば/usr/bin
、CDから書き込み可能なファイルシステムにマージするためにライブCDで使用され/usr/bin
、CDが読み取り専用であっても、に変更を加えることができます。
たとえば、Plan9でドキュメントを正しく理解していれば、次のことができます。
bind -b /usr/bin /bin
bind -b /usr/local/bin /bin
bind -b /home/username/bin /bin
そして、3つすべてのディレクトリ内のすべてのファイルが表示されます/bin
(名前が重複している場合、-b
オプションにより、最後に指定したディレクトリ内のファイルが優先されます)。
これがブルースが「マウント/ファイルシステム名前空間」によって意味するものなのか、それとも何か違うのかはわかりません。
プラン9では、すべての「ファイルシステム」はユーザースペースデーモンによって実装されます。(FUSEを考えてください。)これらのデーモンはすべて9P(特に、プロトコルの2番目のリビジョンである9P2000)を話します。9Pは、基本的にシステムのさまざまな部分をまとめたものです。
v9fsは実装9PプロトコルのためのLinuxカーネルドライバを投影します。Plan 9のwikiページによると、カーネル2.6.14の時点ではメインラインカーネルにあります。