ReactOS
Origem: Wikipédia, a enciclopédia livre.
ReactOS | |
---|---|
Foto do sistema. |
|
Desenvolvedor: | ReactOS Foundacion |
Família do SO: | Compatível com Windows |
Modelo do desenvolvimento: | Código Aberto |
Última versão: | 0.3.1 |
Data da última versão: | 11 de março de 2007 |
Kernel: | Compatível com o Windows NT |
Interface: | {{{ui}}} |
Interface: | |
Licença: | GNU GPL |
Estado do desenvolvimento: | Alpha, instável |
Website: | www.reactos.org |
O ReactOS é um sistema operativo (no Brasil, sistema operacional) em Software Livre, licenciado sob a GNU GPL, cujo obje(c)tivo é desenvolver um sistema operacional 100% compatível com os aplicativos e drivers binários para Windows NT.
Índice |
[editar] História
[editar] Antes de ReactOS
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.
[editar] O início do ReactOS
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.
[editar] Escalada íngreme
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 kernel. Foi uma época em que apenas algumas pessoas escreviam o difícil início do kernel. Mais tarde, quando o kernel 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.
[editar] Hoje
O kernel 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.
[editar] Futuro próximo
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.
[editar] Breve cronologia
1996 - Um grupo de pessoas resolveu juntar-se com o obje(c)tivo de criar um novo Sistema Operativo Livre, que iria ser um clone do Windows 95, saído havia um ano. O grupo foi ba(p)tizado de FreeWin95.
Final de 1997 - Como o grupo caiu em discussões acerca do funcionamento do futuro kernel, o proje(c)to não tinha produzido nada, entretanto. Jason Filby torna-se cordenador do projecto e consegue fazer renascer o proje(c)to 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 obje(c)tivo 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.
[editar] Arquite(c)tura
A arquite(c)tura do ReactOS é em tudo semelhante à do Windows NT. Estão implementados os mesmos conceitos (Regist(r)o, Subsistemas, Executivo, Controladores IFS, etc), também é um microkernel tal como o kernel (núcleo) NT. As partes do kernel do ReactOS são as seguintes:
[editar] O executivo
Executivo é o nome que se dá a todo o código que roda em modo de kernel, este pode ser dividido nas várias partes infra-descritas.
[editar] Camada de abstracção de hardware
Esta é a parte de mais baixo nível no ReactOS, é ela que faz com que todas as motherboards, CPUs, Chipsets, etc pareçam iguais ao resto do Sistema Operativo.
[editar] Controladores de dispositivo
Os Controladores de dispositivo são extensões ao Executivo que este carrega para poder interagir com os diversos dispositivos de Hardware. O modelo de controladores que está a ser implementado a(c)tualmente no ReactOS é o Windows NT 4.0 device driver model, mas futuramente será também implementado o WDM (Windows Driver Model), que consiste num conjunto de regras para escrever drivers portáveis, para Windows.
[editar] Kernel
A arquite(c)tura do kernel é inspirada na do kernel do Microsoft Windows NT 4.0. Ele implementa Chamadas de Procedimento Assíncronas, Chamadas de Procedimento Diferidas, processos, tarefas paralelas (threading), semáforos, código de temporização, etc.
[editar] Serviços
É constituído pelo resto da base do Sistema Operativo, algumas coisas indispensáveis, outras nem tanto.
- 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, árvore de processos, chamadas de procedimentos locais
- Subsistema Win32
[editar] Subsistemas protegidos
Permitem que software de diversos Sistemas Operativos possa correr/rodar no topo do Executivo. O objectivo principal é, por enquanto, o Subsistema Win32, mas este corre em modo de kernel por isso ele não é incluído neste grupo. Outros subsistemas em desenvolvimento a(c)tualmente incluem o Subsistema de POSIX (Unix e derivados) e o de OS/2.
[editar] Arquitectura de APIs nativas
A Arquite(c)tura de APIs nativas permite ao código em modo de utilizador chamar serviços de modo kernel de uma forma padronizada e é equivalente a 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 arquite(c)tura utilizada no ReactOS é aberta a quem a quiser saber. Ela está implementada em NTDLL.DLL.
[editar] Requisitos de sistema
- Processador x86 (i486 ou mais atual)
- 32MB de memória RAM
- Disco rígido IDE
- Partição de sistema FAT16/FAT32
- Placa de vídeo compatível com VGA
- Teclado
- Mouse compatível com porta PS/2 ou serial
O ReactOS pode ser executado também em programas que emulam os dispositivos listados como Virtual PC, VMware, QEMU ou Bochs.