ReactOS

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa
Question book.svg
Esta página ou secção não cita nenhuma fonte ou referência, o que compromete sua credibilidade (desde dezembro de 2013).
Por favor, melhore este artigo providenciando fontes fiáveis e independentes, inserindo-as no corpo do texto por meio de notas de rodapé. Encontre fontes: Googlenotícias, livros, acadêmicoYahoo!Bing. Veja como referenciar e citar as fontes.
ReactOS
ReactOS logo.svg
ReactOS0314.png
Implementação do ReactOS 0.3.14 do menu de inicialização do Windows
Produção ReactOS Foundacion
Família do SO Compatível com Windows
Modelo Software Livre
Estado Alpha
Versão estável 0.3.16 / 6 de fevereiro de 2014; há 32 semanas e 3 dias
Núcleo Núcleo Híbrido - Compatível com Windows NT
Licença GNU GPL
Página oficial www.reactos.org

ReactOS é um sistema operativo em software livre, licenciado sob a GNU GPL. O objetivo de seus programadores é desenvolver um sistema operacional 100% compatível em modo binário com os programas e controladores de dispositivos para a família de sistemas Windows NT. Deste modo, o ReactOS pretende seguir toda a arquitectura do Windows, implementando um verdadeiro "Windows Livre", ao contrário de outros projectos, como o Linux Unified Kernel.

História[editar | editar código-fonte]

Antes de ReactOS[editar | editar código-fonte]

Em meados de 1996 algumas pessoas formaram um grupo chamado FreeWin95, cujo objetivo era implementar um sistema operacional que seria um clone do Windows 95. Infelizmente, como vários novos projetos Open Source ambiciosos, acabou em uma discussão sem fim sobre o desenho do sistema, sem resultados.

O início do ReactOS[editar | editar código-fonte]

No fim de 1997, o projeto tinha parado sem resultados. Jason Filby entrou como coordenador do projeto e chamou todos ainda escritos na lista para reiniciar o projeto. Ficou decidido que a base seria o Windows NT e que a ênfase seria nos resultados - em código escrito em vez de discussões sem fim. O projeto foi renomeado para ReactOS, já que as raízes do sistema operacional surgiram de uma insatisfação geral sobre o monopólio da Microsoft no mercado de sistemas operacionais. Em fevereiro de 1998, iniciou o ReactOS.

Escalada íngreme[editar | editar código-fonte]

Os primeiros anos do ReactOS foram dolorosamente lentos, apesar das grandes quantidades de código que estavam sendo escritos. Apenas alguns desenvolvedores sabiam como escrever código de núcleo. Foi uma época em que apenas algumas pessoas escreviam o difícil início do núcleo. Mais tarde, quando o núcleo estava mais completo e estável, e foram escritos drivers básicos como os de IDE e teclado, mais pessoas foram capazes de se envolver no desenvolvimento.

Hoje[editar | editar código-fonte]

O núcleo percorreu um longo caminho, está mais estável e muitas APIs estão completas o suficiente para realizar trabalhos mais avançados. Foi realizado um trabalho substancial em várias bibliotecas. O código de rede inicial tem problemas suficientes que evitam que funcione corretamente, mas não por muito tempo. Uma implementação básica do Dispositivo de Interface Gráfica (Graphics Device Interface - GDI) e drivers de gráficos VGA estão preparando o caminho para a GUI. O número de desenvolvedores vem aumentando.

Futuro próximo[editar | editar código-fonte]

Logo se iniciarão subsistemas para outras plataformas. O código da GUI e shell gráfico padrão, com a ajuda do projeto Wine, está funcionando agora e continuará crescendo mais e está mais completa a cada dia. O ReactOS está pronto para experimentar um crescimento massivo em um futuro próximo.

Breve cronologia[editar | editar código-fonte]

1996 - Um grupo de pessoas resolveu juntar-se com o objetivo de criar um novo Sistema Operativo Livre, que iria ser um clone do Windows 95, saído havia um ano. O grupo foi denominado FreeWin95.

Final de 1997 - Como o grupo caiu em discussões acerca do funcionamento do futuro núcleo, o projeto não tinha produzido nada, entretanto. Jason Filby torna-se cordenador do projecto e consegue fazer renascer o projeto das cinzas, depois de contactar as pessoas que ainda estavam subscritas nas mailing-lists.

1998 - Começa o trabalho. Depois de algum diálogo, ficou decidido que o objetivo seria o Windows NT, em vez do Windows 95 como tinha ficado decidido um ano antes; alem disso o projecto mudou de nome e passou a chamar-se ReactOS, nome que ainda hoje conserva.

2003-2004 - Hoje em dia o ReactOS já está bastante estável e inclusive roda algumas aplicações nativas do Microsoft Windows. Devido ao maior número de pessoas envolvidas no projeto, as partes de mais baixo nível já estão escritas e o desenvolvimento tornou-se mais fácil.

Arquitetura[editar | editar código-fonte]

Firefox rodando no ReactOS e exibindo a página do projeto
Gerenciador de arquivos do ReactOS 0.3.0

A arquitetura do ReactOS é em tudo semelhante à do Windows NT. Existem os mesmos conceitos (Registro, Subsistemas, Executivo, Controladores IFS, etc), que estão organizados da mesma maneira que no NT. As partes do núcleo do ReactOS são as seguintes:

Executivo[editar | editar código-fonte]

Executivo é o nome que se dá a todo código que roda em modo de núcleo. Está organizado em três camadas essenciais.

Camada de abstracção de hardware[editar | editar código-fonte]

É a parte de mais baixo nível no ReactOS. Fornece ao resto do executivo as primitivas necessárias para que todas as arquitecturas, placas-mãe, CPUs e chipsets possam ser controlados de uma maneira uniforme pelo núcleo e pelos controladores.

Teoricamente, para portar o NT (ou o ReactOS), o único código que seria necessário modificar seria o desta camada.

Núcleo[editar | editar código-fonte]

Aqui, o núcleo aparece como a camada do Executivo que desempenha as funções tradicionalmente desempenhadas pelos núcleos dos sistemas operativos.

O ReactOS não é um micronúcleo, uma vez que os serviços classicamente desempenhados pelo núcleo, bem como todos os drivers, rodam em modo privilegiado e são chamados pelas aplicações directamente (em oposição ao que acontece num micronúcleo, em que os serviços são requisitados por intermédio de um serviço de comunicação entre processos).

A arquitetura do núcleo é inspirada na do núcleo do Microsoft Windows NT 4.0. Existem as Chamadas de Procedimento Assíncronas e Diferidas, os processos, as tarefas paralelas (multi-threading), semáforos, código de temporização, etc.

O gerenciador de serviço
Serviços[editar | editar código-fonte]

É constituído pelo resto da base do Sistema Operativo.

  • Gestor de Entrada e Saída
  • Gestor de Configurações
  • Plug and Play
  • Gestor de Alimentação
  • Gestão de Memória
  • Suporte ao Executivo
  • Gestor de Objectos NT
  • Monitor de Referência da Segurança
  • Gestão de processos
  • Chamada de procedimentos locais e outras modalidades de IPC
  • Subsistema Win32

Controladores de dispositivo[editar | editar código-fonte]

Os Controladores de dispositivo são extensões ao Executivo que este carrega para poder interagir com os diversos dispositivos de Hardware.

Subsistemas protegidos[editar | editar código-fonte]

Permitem que software de diversos Sistemas Operativos possa rodar no topo do Executivo. O objectivo principal é, por enquanto, o Subsistema Win32, mas este corre em modo de núcleo por isso não é incluído neste grupo. Outros subsistemas em desenvolvimento em 2009 incluem o Subsistema de POSIX (Unix e derivados) e o de OS/2.

Arquitectura de APIs nativas[editar | editar código-fonte]

A arquitetura de APIs nativas permite ao código em modo de utilizador chamar serviços de modo núcleo de uma forma padronizada e é equivalente à interface de "Chamadas de Sistema" (system calls) utilizada em numerosos UNIXes. As APIs utilizadas no Windows não estão documentadas pela Microsoft, mas a arquitetura utilizada no ReactOS é aberta a quem a quiser saber. Ela está implementada em NTDLL.DLL.

Requisitos de sistema[editar | editar código-fonte]

O ReactOS pode ser executado também em programas que emulam os dispositivos listados como Virtual PC, VMware, QEMU ou Bochs.

Ver também[editar | editar código-fonte]

  • FreeDOS, sistema operacional aberto com o objetivo de ser compatível com o DOS

Ligações externas[editar | editar código-fonte]

Outros projetos Wikimedia também contêm material sobre este tema:
Commons Imagens e media no Commons