EROS

Origem: Wikipédia, a enciclopédia livre.

 EROS
{{{screenshot}}}
{{{legenda}}}
Desenvolvedor: Universidade de Johns Hopkins
Família do SO: Compatível com Unix
Modelo do desenvolvimento: Código Aberto
Última versão: 0.6
Data da última versão: {{{data_ultima_versao}}}
Kernel: {{{kernel}}}
Interface: {{{ui}}}
Interface: {{{iu}}}
Licença: derivada da MPL
Estado do desenvolvimento: Descontinuado
Website: www.eros-os.org

O EROS (The Extremely Reliable Operating System) é um sistema operacional desenvolvido pelo The EROS Group, pelo LLC, pela Universidade de Johns Hopkins, e pela Universidade da Pensilvânia. Recursos interessantes desse sistema incluem persistência automática de dados e processos, algum suporte preliminar para tempo-real, e segurança baseada em capacidades. O EROS é um sistema operacional para pesquisa, e nunca foi empregado em aplicações reais. Em 2005 seu desenvolvimento foi interrompido em favor de dois sistemas, CapROS e Coyotos, seus sucessores.

Índice

[editar] Os conceitos chaves

O objetivo do sistema EROS (e de seus parentes) é fornecer a sustentação forte no nível de sistema operando-se para restruturação eficiente de aplicações críticas em componentes comunicação pequenos. Cada componente pode comunicar-se com o outro somente através das relações protegidas, e é isolado do descanso do sistema. "uma relação protegida", neste contexto, é um que é reforçado pela peça do nível o mais baixo do sistema se operando ( o Kernel). O Kernel é a única parcela do sistema que pode mover a informação de um processo para outro. Tem também o controle completo da máquina e (se construído corretamente) não pode ser contornado. No EROS, Kernel-forneceu o mecanismo por que os nomes um componentes e invocam os serviços de outro são potencialidades usando uma comunicação inter-process (IPC). Reforçando relações potencialidade-protegidas, o Kernel assegura-se de que todas as comunicações a um processo cheguem através de uma relação intencionalmente exportada. Assegura-se de também que nenhum invocação seja possível a menos que o componente invocando prender uma potencialidade válida ao invokee. A proteção em sistemas da potencialidade é conseguida restringindo a propagação das potencialidades de um componente a outro, frequentemente com uma política da segurança como o confinamento.

Os sistemas da potencialidade promovem naturalmente a estrutura componente-baseada do software. Esta aproximação organização é similar ao conceito da línguagem de programação de programação orientada a objeto, mas ocorre no granularity maior e não inclui o conceito do inheritance. Quando o software restruturado nesta maneira, diversos benefícios emergem:

  • Os componentes individuais são estruturados o mais naturalmente como laços do evento. Os exemplos dos sistemas que são estruturados geralmente esta maneira incluem sistemas de controle do vôo (veja também DO-178B Software Considerations in Airborne Systems and Equipment Certification, e sistemas de switching de telefonia (veja o 5ESS switch). A programação event loops é escolhida para estes sistemas primeiramente por causa do simplicidade e da robustes, que são atributos essenciais em sistemas vida-crítica e missão-crítica.
  • Os componentes tornam-se menores e individualmente testable, que ajuda ao implementar a mais prontamente identificar falhas e erros.
  • A isolação de cada componente do outro limita o espaço dos danos que podem ocorrer quando algo vai erradamente ou o software misbehaves.

Coletivamente, estes benefícios conduzem aos sistemas measurably mais robustes e seguros. O SDS Sigma 7 era um sistema baseado em ferramentas de potencialidade projetado originalmente para o uso em switches de telefonia. Um projeto baseado em potencialidade foi escolhido especificamente para razões do robustes.

No contraste a muitos sistemas mais adiantados, as potencialidades são o único mecanismo para nomear e usar recursos no EROS. Tal sistema é consultado às vezes como a um sistema puro de potencialidade. A IBM AS/400 é um exemplo de um sistema comercialmente bem sucedido de potencialidade, mas não é um sistema puro de potencialidade.

As arquiteturas puras de potencialidade são bem suportadas e amadurecem modelos matemáticos da segurança. Estes foram usados demonstrar formalmente que os sistemas baseados em potencialidade podem ser feitos seguros se executados corretamente. De "a propriedade so-called segurança" foi mostrada para ser decidable para sistemas puros de potencialidade (veja Lipton). O confinamento, que é o bloco de edifício fundamental de isolamento, foi verificado formalmente para ser enforceable por sistemas puros de potencialidade (veja Verifying the EROS Confinement Mechanism), e é reduzido à execução prática pelo EROS "construtor" e o KeyKOS "fábrica". Nenhuma verificação comparável existe para todo o outro mecanismo primitivo da proteção. Há um resultado fundamental na exibição da literatura que a "segurança" é matematicamente undecidable no caso geral (veja HRU). De uma importância prática mais grande, a segurança foi mostrada para ser falsa para todos os mecanismos primitivos da proteção que envíam em sistemas operando-se do produto atual (veja HRU). A segurança é um precaução necessária ao enforcement bem sucedido de toda a política da segurança. Em termos práticos, este resultado significa que não é possível no princípio fixar sistemas atuais do produto, mas é potencial possível fixar sistemas potencialidade-baseados forneceu-os é executado com cuidado suficiente. Nenhum sistema foi ivadido com sucesso, e seus mecanismos da isolação foram derrotados nunca com sucesso por alguns atacante do internos, mas não se sabe se o EROS ou as execuções de KeyKOS tinham cuidado bastante. Um objetivo do projeto de Coyotos é demonstrar que a isolação e a segurança componentes estiveram conseguidas definitively perto aplicam técnicas da verificação do software.

O sistema de L4.sec, que é um sucessor da família microkernel L4, é um sistema baseado em potencialidade, e foi influenciado significativamente pelos resultados do projeto do EROS. A influência é mútua, desde que o trabalho do EROS no invocation high-performance motivated fortemente sucessos de Jochen Liedtke ' com a família microkernel L4.

[editar] História

O colaborador preliminar do EROS era Jonathan Shapiro. É também dirigindo o Coyotos, que é "uma etapa evolucionária"[1] além do sistema se operando em EROS.

O projeto do EROS começou em 1991 como um clean-room reconstituindo como um sistema mais avançado, KeyKOS[2]. KeyKOS era um sistema operando-se desenvolvido por Key Logic, Inc., e era uma continuação direta do trabalho no sistema criado por Tymshare, Inc do GNOSIS (Great New Operating System In the Sky). O sistema de KeyKOS ofereceu um grau de segurança e a confiabilidade que remanesce unduplicated hoje (2006). As circunstâncias Key Logic's em 1991 fizeram KeyKOS licenciamento pouco prático. Desde que KeyKOS não funcionou em processadores populares em nenhum caso, a decisão foi feita para reconstruturara documentação publicamente disponível.

Por 1992 atrasado, tinha-se tornado desobstruído que a arquitetura do processador tinha mudado significativamente desde a introdução da idéia da potencialidade, e era um óbvio não mais longo que os sistemas componente-estruturados eram práticos. Microkernel- os sistemas baseados, que favorecem similarmente um grande número processos e IPC, enfrentavam-no desafios severos do desempenho, e eram incertos se estes poderiam com sucesso ser resolvidos. A arquitetura x86 estava emergindo claramente como a arquitetura dominante mas a latência cara da transição de user/supervisor nos 386 e 486 apresentou desafios sérios para a isolação baseada em processo. O projeto do EROS estava girando em um esforço da pesquisa, e movido para a Universidade da Pensilvânia para transformar-se o foco da pesquisa do dissertation de Shapiro. Por 1999, uma execução do desempenho elevado para o processador Pentium tinha sido demonstrada que era diretamente desempenho d competir com a família microkernel L4, que sua velocidade excepcional no IPC. O mecanismo do confinamento do EROS tinha sido verificado formalmente, no processo que cría um modelo formal geral para sistemas seguros da potencialidade.

Em 2000, Shapiro juntou a faculdade da ciência da computação[3] da Universidade de Johns Hopkins. Em Hopkins, o objetivo era mostrar como usar as facilidades fornecidas pela semente do EROS para construir usuários seguros e defensible no nível da aplicação. Financiado pelo Defense Advanced Research Projects Agency e pelo laboratório de pesquisa da força aérea, o EROS foi usado como a base [4], uma high-performance, defensible network stack, e os começos de um web browser seguro. Foi usado também explorar a eficácia lightweight static checking. Em 2003, algumas edições de segurança muito challenging foram [http://www.eros-os.org/papers/IPC-Assurance.ps discovered que toda a arquitetura do sistema baseada em primitivos synchronous do IPC (notàvelmente including o EROS e o L4). O trabalho no EROS parou no favor do Coyotos, que resolve estas edições.

Como de 2006, o EROS e seus sucessores são os únicos extensamente sistemas disponíveis da potencialidade que funcionam como ferramenta de segurança.

[editar] Status

O trabalho no EROS pelo grupo original parou, mas há dois. Seus sucessores sistema CapROS está construindo diretamente da base do código do EROS, o sistema Coyotos um sistema sucessor que se dirija a algumas das deficiências da arquitetura do EROS, e está explorando (como a pesquisa) a possibilidade de um sistema operando-se inteiramente verificado. CapROS e Coyotos esperam-se ser liberados em várias distribuições comerciais.

[editar] Veja Também

Nano-kernel

[editar] Ligações externas

Ferramentas pessoais