O plano 9 foi desenvolvido pelo Bell Labs como sucessor do Unix. Embora, por várias razões, nunca tenha se materializado como tal, uma boa quantidade de desenvolvimento ainda entrou no Plano 9.
Minha pergunta é: o que - se alguma coisa - do Plano 9 chegou ao Unix moderno?
Respostas:
A
clone
chamada de sistema (2) em linux é dito ter sido modelado após Plano 9 dorfork()
. (Eu pessoalmente não vejo como o tempo funciona.)Este documento afirma que o Plano 9 inspirou o "namespace mount / sistema de arquivos".
O
/proc
sistema de arquivos parece ter chegado ao Plan 9 do 8th Edition Unix, e não o contrário.fonte
O óbvio é provavelmente o UTF-8. Mas isso é provavelmente muito óbvio.
A grande re-arquitetura do Al Viro do Linux VFS é fortemente inspirada no Plan9. Especialmente a mudança de "Tudo é um arquivo" para "... E todo arquivo é um ponto de montagem".
fonte
cd /tmp; echo a > a; echo b > b; sudo mount --bind a b; cat b # => a
O sistema de arquivos / proc no Linux é uma ideia do Plano 9.
fonte
Os sistemas de arquivos da união, como unionfs e aufs , foram inspirados nas montagens de diretório de união do Plan9 .
Por exemplo, eles são usados em CDs ao vivo para mesclar
/usr/bin
o CD com um sistema de arquivos gravável, para que você possa fazer alterações/usr/bin
, mesmo que o CD seja somente leitura.Sistemas de arquivos Union: implementações, parte I em lwn.net
Por exemplo, se eu entendo os documentos corretamente, no Plan9, você pode:
E todos os arquivos nos três diretórios apareceriam
/bin
(no caso de nomes duplicados, o arquivo do último diretório especificado vence, devido à-b
opção).Não tenho certeza se é isso que Bruce quer dizer com "espaço para nome mount / filesystem" ou se é algo diferente.
Você também pode dizer que o sshfs foi inspirado nos ftpfs do Plan9 .
fonte
No Plano 9, todo "sistema de arquivos" é implementado por um daemon do espaço do usuário. (Pense no FUSE.) Todos esses daemons falam de 9P (especificamente 9P2000, a segunda revisão do protocolo). 9P é essencialmente o que mantém as diferentes partes do sistema unidas.
O projeto v9fs implementa um driver de kernel Linux para o protocolo 9P. De acordo com a página wiki do Plan 9 , ele está no kernel da linha principal a partir do kernel 2.6.14.
fonte