SlideShare uma empresa Scribd logo
1 de 3
Baixar para ler offline
Plan 9 from Bell Labs
Uma visão geral
Introdução
O Plan 9 from Bell Labs é um sistema de pesquisa desenvolvido no Bell Labs a partir do final da
década de 1980. Seus projetistas e autores originais eram Ken Thompson, Rob Pike, Dave Presotto
e Phil Winterbottom. A eles se juntaram diversos outros que, como desenvolvedores, continuaram o
trabalho de 1990 até os dias atuais.
O Plan 9 mostrou-se uma maneira nova e frequentemente mais limpa de resolver a maioria dos
problemas encontrados em sistemas. O sistema, no seu todo, deve soar muito semelhante e familiar
aos usuários do Unix, parecendo, contudo, ao mesmo tempo um pouco estranho.
No Plan 9 cada processo possui o seu próprio name space modificável. Um processo pode ser
rearranjado, pode sofrer acréscimos ou remoções no seu name space, sem com isso afetar os name
spaces de processos não relacionados. Incluída nas modificações de name space está a possibilidade
de se “montar” (mount) uma conexão a um servidor de arquivos que se comunique via 9P, um
simplório protocolo baseado em arquivo. A conexão pode ser uma conexão de rede, um pipe ou
qualquer descritor de arquivo aberto para a leitura e escrita tendo na outra ponta um servidor do
protocolo 9P. Name spaces personalizáveis são largamente usados por todo o sistema, na
apresentação de novos recursos (por exemplo, o sistema de janelas), para importar recursos de uma
outra máquina (por exemplo, a pilha de rede) ou para navegar pelo histórico no tempo (por
exemplo, o sistema de arquivos de dump).
O Plan 9 é um núcleo (kernel) de sistema operacional bem como uma coleção de softwares
disponibilizada em conjunto. O grosso do software é majoritariamente novo, escrito
especificamente para o Plan 9, e não software transportado do Unix ou de outros sistemas. O
sistema de janelas, compiladores, servidores de arquivo e serviços de rede foram escritos
especificamente para o Plan 9. Todavia, programas clássicos do Unix como dc(1), ed(1) e mesmo o
troff(1) estão disponibilizados, frequentemente numa forma adaptada. Por exemplo, o troff aceita
documentos Unicode codificados com UTF-8, assim como ocorre em todo o sistema.
O artigo Plan 9 from Bell Labs fornece uma introdução ao sistema mais aprofundada.
Lançamentos
O Plan 9 teve quatro grandes lançamentos ao longo de sua história.
A primeira edição, lançada em 1992, foi disponibilizada apenas para universidades. A primeira
edição tinha a maioria das partes identificáveis no Plan 9, incluindo o kernel, ndb, sam, upas, alef e
o suporte completo ao UTF-8. O acme foi apresentado numa forma anterior como ajuda. Os
servidores de CPU eram estações SPARC da Sun, SGI Power e SGI Magnum, com estações NEXT
e PCs como terminais. As estações Gnot e Hobbit, construídas localmente, eram também utilizadas
como terminais.
A segunda edição, lançada em 1995 na forma de livro e CD, adicionava o acme e uns poucos
outros utilitários. Na época do lançamento da segunda edição, a equipe do Plan 9 trabalhava numa
reimplementação do sistema chamada Brazil. Em 1999, na preparação para o lançamento da terceira
edição, o nome Brazil foi abandonado e o sistema voltou a se chamar Plan 9.
A terceira edição antecipada foi lançada em junho de 2000 e disponibilizada livremente na
Internet. Introduzia um novo operador gráfico de cores chamado draw e um novo mecanismo de
comunicação entre processos chamado plumbing. A distribuição introduzia também um simplório
gerenciador de atualizações chamado wrap para instalar atualizações de sistema empacotadas.
Logo após o lançamento da terceira edição, a equipe do Bell Labs começou uma revisão do
protocolo 9P dando-lhe o nome de 9P2000. Comparado ao 9P usado nos lançamentos anteriores, o
9P2000 remove algumas restrições, consideradas inadequadas nesta altura, com relação a
comprimentos de nomes, acrescenta um campo “último modificador” (last modifier) aos metadados
de diretório, permite o encaminhamento de mensagens em lotes, e introduz arquivos de autenticação
como mecanismo para mover os detalhes dos protocolos de autenticação para fora do protocolo 9P
propriamente.
O lançamento da quarta edição, em 2002, introduzia o 9P2000 juntamente com o agente de
segurança associado factotum(4) e o repositório de chaves secstore(8). Introduzia também o
servidor de armazenamento em blocos venti(8). O servidor de arquivos baseado no venti, o fossil(4),
veio a baila no início de 2003.
Adicionalmente a esses programas, a quarta edição introduzia um novo mecanismo para distribuir
as atualizações do sistema. Um servidor de arquivos fossil público, sources.cs.bell-labs.com,
contendo uma árvore de arquivos atuais que são servidos para qualquer sistema Plan 9 conectado a
Internet. Alterações na árvore dessa quarta edição são feitas com frequência, geralmente todos os
dias. Os clientes rodam as ferramentas do replica(1) para manter os seus sistemas sincronizados
com os sources (fontes). Snapshots dos sources, acessados por meio do sistema de arquivos de
dump, fornecem um conveniente histórico dos lançamentos.
Licenciamento
A primeira edição foi disponibilizada apenas para uso nas universidades.
A segunda edição foi disponibilizada para o público geral a um custo de $350 por distribuição, o
que incluía uma licença para usar o software em toda a organização.
Na terceira edição, a Lucent concordou em lançar o Plan 9 de graça pela Internet, sob uma nova
licença, a Licença do Plan 9.
A quarta edição (a atual) foi disponibilizada sob a Licença Pública da Lucent versão 1.02. Adotada
para corrigir lacunas que existiam na Licença do Plan 9, a Licença Pública da Lucent 1.02 é idêntica
a Licença Pública da IBM 1.0, exceto que não requer que o código-fonte seja distribuído com
trabalhos derivados; é não-viral.
Estado atual
O Plan 9 continua mudando diariamente. Essas alterações são distribuídas pelos muitos usuários do
Plan 9 via sources.cs.bell-labs.com como descrito acima. Ainda assim, o Plan 9 tem-se mantido fiel
a sua concepção original, e um usuário da primeira versão do sistema, de 1992, não precisaria de
muita ajuda para se adaptar ao sistema atual.
Devagar, as ideias do Plan 9 tem sido adotadas por outros sistemas. O Plan 9 foi o primeiro sistema
com suporte completo a codificação de conjunto de caracteres Unicode UTF-8. O sistema de
arquivos de dump tem sido imitado nos diretórios do Athena's Old Files ou nos diretórios de
snapshots da Network Appliance. A flexível chamada de sistema rfork(2), base de threads leves
(threads = linhas/trilhas/fluxos de execução), foi adotada por vários derivados do BSD, tal como é,
e reencarnada no Linux como clone(2). O simplório protocolo baseado em arquivo 9P tem sido
implementado, desde muito, em versões do FreeBSD e em versões recentes do Linux.
Uma porção de companhias tem tido sucesso na comercialização de produtos baseados no Plan 9. A
mais notável é a Vita Nuova que continua a manter e comercializar o Inferno, um derivado do Plan
9 concebido para set-top boxes e outros dispositivos embarcados.
Uma vez que o Plan 9 possui um modelo de sistema bastante diferente dos demais sistemas
operacionais modernos, é por vezes complicado transportar softwares externos para o Plan 9. Em
particular, não há ainda para o Plan 9 um navegador web cheio de recursos; webfs(4) e html(2)
foram pensados justamente como passos na direção de uma solução.
A página principal contém ligames para documentação adicional e informações de download.
Aproveite!

Mais conteúdo relacionado

Destaque

PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...DevGAMM Conference
 

Destaque (20)

Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 

Plan 9 from Bell Labs: Uma visão geral

  • 1. Plan 9 from Bell Labs Uma visão geral Introdução O Plan 9 from Bell Labs é um sistema de pesquisa desenvolvido no Bell Labs a partir do final da década de 1980. Seus projetistas e autores originais eram Ken Thompson, Rob Pike, Dave Presotto e Phil Winterbottom. A eles se juntaram diversos outros que, como desenvolvedores, continuaram o trabalho de 1990 até os dias atuais. O Plan 9 mostrou-se uma maneira nova e frequentemente mais limpa de resolver a maioria dos problemas encontrados em sistemas. O sistema, no seu todo, deve soar muito semelhante e familiar aos usuários do Unix, parecendo, contudo, ao mesmo tempo um pouco estranho. No Plan 9 cada processo possui o seu próprio name space modificável. Um processo pode ser rearranjado, pode sofrer acréscimos ou remoções no seu name space, sem com isso afetar os name spaces de processos não relacionados. Incluída nas modificações de name space está a possibilidade de se “montar” (mount) uma conexão a um servidor de arquivos que se comunique via 9P, um simplório protocolo baseado em arquivo. A conexão pode ser uma conexão de rede, um pipe ou qualquer descritor de arquivo aberto para a leitura e escrita tendo na outra ponta um servidor do protocolo 9P. Name spaces personalizáveis são largamente usados por todo o sistema, na apresentação de novos recursos (por exemplo, o sistema de janelas), para importar recursos de uma outra máquina (por exemplo, a pilha de rede) ou para navegar pelo histórico no tempo (por exemplo, o sistema de arquivos de dump). O Plan 9 é um núcleo (kernel) de sistema operacional bem como uma coleção de softwares disponibilizada em conjunto. O grosso do software é majoritariamente novo, escrito especificamente para o Plan 9, e não software transportado do Unix ou de outros sistemas. O sistema de janelas, compiladores, servidores de arquivo e serviços de rede foram escritos especificamente para o Plan 9. Todavia, programas clássicos do Unix como dc(1), ed(1) e mesmo o troff(1) estão disponibilizados, frequentemente numa forma adaptada. Por exemplo, o troff aceita documentos Unicode codificados com UTF-8, assim como ocorre em todo o sistema. O artigo Plan 9 from Bell Labs fornece uma introdução ao sistema mais aprofundada. Lançamentos O Plan 9 teve quatro grandes lançamentos ao longo de sua história. A primeira edição, lançada em 1992, foi disponibilizada apenas para universidades. A primeira edição tinha a maioria das partes identificáveis no Plan 9, incluindo o kernel, ndb, sam, upas, alef e o suporte completo ao UTF-8. O acme foi apresentado numa forma anterior como ajuda. Os servidores de CPU eram estações SPARC da Sun, SGI Power e SGI Magnum, com estações NEXT e PCs como terminais. As estações Gnot e Hobbit, construídas localmente, eram também utilizadas como terminais.
  • 2. A segunda edição, lançada em 1995 na forma de livro e CD, adicionava o acme e uns poucos outros utilitários. Na época do lançamento da segunda edição, a equipe do Plan 9 trabalhava numa reimplementação do sistema chamada Brazil. Em 1999, na preparação para o lançamento da terceira edição, o nome Brazil foi abandonado e o sistema voltou a se chamar Plan 9. A terceira edição antecipada foi lançada em junho de 2000 e disponibilizada livremente na Internet. Introduzia um novo operador gráfico de cores chamado draw e um novo mecanismo de comunicação entre processos chamado plumbing. A distribuição introduzia também um simplório gerenciador de atualizações chamado wrap para instalar atualizações de sistema empacotadas. Logo após o lançamento da terceira edição, a equipe do Bell Labs começou uma revisão do protocolo 9P dando-lhe o nome de 9P2000. Comparado ao 9P usado nos lançamentos anteriores, o 9P2000 remove algumas restrições, consideradas inadequadas nesta altura, com relação a comprimentos de nomes, acrescenta um campo “último modificador” (last modifier) aos metadados de diretório, permite o encaminhamento de mensagens em lotes, e introduz arquivos de autenticação como mecanismo para mover os detalhes dos protocolos de autenticação para fora do protocolo 9P propriamente. O lançamento da quarta edição, em 2002, introduzia o 9P2000 juntamente com o agente de segurança associado factotum(4) e o repositório de chaves secstore(8). Introduzia também o servidor de armazenamento em blocos venti(8). O servidor de arquivos baseado no venti, o fossil(4), veio a baila no início de 2003. Adicionalmente a esses programas, a quarta edição introduzia um novo mecanismo para distribuir as atualizações do sistema. Um servidor de arquivos fossil público, sources.cs.bell-labs.com, contendo uma árvore de arquivos atuais que são servidos para qualquer sistema Plan 9 conectado a Internet. Alterações na árvore dessa quarta edição são feitas com frequência, geralmente todos os dias. Os clientes rodam as ferramentas do replica(1) para manter os seus sistemas sincronizados com os sources (fontes). Snapshots dos sources, acessados por meio do sistema de arquivos de dump, fornecem um conveniente histórico dos lançamentos. Licenciamento A primeira edição foi disponibilizada apenas para uso nas universidades. A segunda edição foi disponibilizada para o público geral a um custo de $350 por distribuição, o que incluía uma licença para usar o software em toda a organização. Na terceira edição, a Lucent concordou em lançar o Plan 9 de graça pela Internet, sob uma nova licença, a Licença do Plan 9. A quarta edição (a atual) foi disponibilizada sob a Licença Pública da Lucent versão 1.02. Adotada para corrigir lacunas que existiam na Licença do Plan 9, a Licença Pública da Lucent 1.02 é idêntica a Licença Pública da IBM 1.0, exceto que não requer que o código-fonte seja distribuído com trabalhos derivados; é não-viral. Estado atual O Plan 9 continua mudando diariamente. Essas alterações são distribuídas pelos muitos usuários do Plan 9 via sources.cs.bell-labs.com como descrito acima. Ainda assim, o Plan 9 tem-se mantido fiel
  • 3. a sua concepção original, e um usuário da primeira versão do sistema, de 1992, não precisaria de muita ajuda para se adaptar ao sistema atual. Devagar, as ideias do Plan 9 tem sido adotadas por outros sistemas. O Plan 9 foi o primeiro sistema com suporte completo a codificação de conjunto de caracteres Unicode UTF-8. O sistema de arquivos de dump tem sido imitado nos diretórios do Athena's Old Files ou nos diretórios de snapshots da Network Appliance. A flexível chamada de sistema rfork(2), base de threads leves (threads = linhas/trilhas/fluxos de execução), foi adotada por vários derivados do BSD, tal como é, e reencarnada no Linux como clone(2). O simplório protocolo baseado em arquivo 9P tem sido implementado, desde muito, em versões do FreeBSD e em versões recentes do Linux. Uma porção de companhias tem tido sucesso na comercialização de produtos baseados no Plan 9. A mais notável é a Vita Nuova que continua a manter e comercializar o Inferno, um derivado do Plan 9 concebido para set-top boxes e outros dispositivos embarcados. Uma vez que o Plan 9 possui um modelo de sistema bastante diferente dos demais sistemas operacionais modernos, é por vezes complicado transportar softwares externos para o Plan 9. Em particular, não há ainda para o Plan 9 um navegador web cheio de recursos; webfs(4) e html(2) foram pensados justamente como passos na direção de uma solução. A página principal contém ligames para documentação adicional e informações de download. Aproveite!