ReactOS

Origem: Wikipédia, a enciclopédia livre.
Saltar para a navegação Saltar para a pesquisa
Question book-4.svg
Esta página ou secção cita fontes confiáveis e independentes, mas que não cobrem todo o conteúdo, o que compromete a verificabilidade (desde dezembro de 2013). Por favor, insira mais referências no texto. Material sem fontes poderá ser removido.
Encontre fontes: Google (notícias, livros e acadêmico)
ReactOS
Versão do sistema operativo Compatível com Windows
ReactOS logo.svg
ReactOS 0.4.7.png
Área de trabalho do ReactOS 0.4.7
Produção ReactOS Foundation
Linguagem C
Modelo Software Livre
Versão estável 0.4.8/14 de abril de 2018; há 0 dia[1]
Núcleo Núcleo Híbrido - Compatível com Windows NT
Licença GNU GPL, LGPL e licença BSD
Página oficial www.reactos.org
Estado de desenvolvimento
Alfa

ReactOS é um sistema operativo em software livre, licenciado sob a GNU GPL, para computadores x86/x64, com o objetivo de compatibilidade de código binário com programas e controladores de dispositivos feitos para o Windows Server 2003 e sucessores.[2]

O desenvolvimento começou em 1996, como um projeto clone do Windows 95, e continuou como ReactOS em 1998, com a adição incremental de recursos de versões posteriores do Windows. O ReactOS foi observado como um potencial substituto espontâneo de código aberto para Windows[3][4][5] por sua informação sobre a API do Windows não documentada.[6] Como já afirmado no sítio oficial,

A julho de 2018, o ReactOS é considerado software alfa, com recursos incompletos, mas com muitos aplicativos Windows já funcionando (ex. Adobe Reader 7.1.0 e XI, Apache OpenOffice 2 e 4.1.2, etc.),[8][9] e por isso é recomendado pelos desenvolvedores apenas para propósitos de avaliação e testes.[10][11]

O ReactOS é primariamente escrito em C, com alguns elementos, como o Explorador de Arquivos, escrito em C++. O projeto implementa parcialmente a interface de programação de aplicações do Microsoft Windows e foi portado para o conjunto de instruções AMD64.[12] O ReactOS, como parte do ecossistema de software livre e de código aberto, reusa e colabora com muitos outros projetos livres,[13] mais notavelmente o projeto Wine o qual desenvolve uma camada de compatibilidade Windows para sistemas operativos tipo Unix.[14]

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 mais e estará 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 coordenador do projeto 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; além disso o projeto 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
  • Restauração do Sistema
  • 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]

  • Processador x86 (x86-64 [15] ou mais atual)
  • 64MB de memória RAM (256 MB recomendado)
  • Disco rígido IDE/SATA pelo menos 350 MB na partição principal
  • Partição de sistema FAT16/FAT32 na partição de boot primário
  • Placa de vídeo 2 MB compatível com VGA (VESA BIOS versão 2.0 ou posterior)
  • Teclado
  • Unidade de CD-ROM
  • Rato compatível com porta PS/2 e USB ou serial

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]

Portal A Wikipédia tem o portal:
  • FreeDOS, sistema operacional aberto com o objetivo de ser compatível com o DOS

Referências

  1. vicmarcal (14 de abril de 2018). «ReactOS 0.4.8 released!!». ReactOS Foundation. Consultado em 15 de abril de 2018. 
  2. vicmarcal (14 de abril de 2018). «ReactOS 0.4.8 released!!» [ReactOS 0.4.8 lançado!!]. ReactOS.org Project News (Blog corporativo) (em inglês). Consultado em 8 de julho de 2018.. Cópia arquivada em 8 de julho de 2018. With software specifically leaving NT5 behind, ReactOS is expanding its target to support NT6+ (Vista, Windows 8, Windows 10) software. 
  3. Stahl, Louis-F. (23 de junho de 2015). «Russland erklaert ReactOS zu favorisierter Windows-Alternative». www.heise.de (em alemão). Consultado em 8 de julho de 2018.. Cópia arquivada em 18 de outubro de 2017 
  4. Sixtus, Von Mario (20 de fevereiro de 2004). «ReactOS: Das Nicht-Windows». Spiegel Online (em alemão). Consultado em 11 de dezembro de 2009.. Cópia arquivada em 4 de setembro de 2017 
  5. Dvorak, John C. (4 de abril de 2008). «What A New OS Needs» [O Que Um Novo SO Necessita] (em inglês). PC Magazine. Consultado em 11 de dezembro de 2009.. Cópia arquivada em 18 de outubro de 2017 
  6. Sugar, David (31 de janeiro de 2006). «A reaction to ReactOS» [Uma reação ao ReactOS] (em inglês). Free Software Magazine. Consultado em 11 de dezembro de 2009.. Arquivado do original em 22 de fevereiro de 2012. For those who wish to write such software, or to create portable applications that they may wish to later migrate to other platforms, it is essential to be able to target a clean and generic reference implementation of the Microsoft framework, freed from secret and undocumented behaviors.
    Microsoft offers no such thing today—besides the lack of proper interface documentation, many of their own development tools depend on and offer libraries which use undocumented or secret API calls that are then built into applications. This is well illustrated in the difficulty Wine has with running applications, even those that were created purely within “standard” Microsoft development tools and not using odd behaviors or undocumented functions on their own.
    We can think of ReactOS, then, as the “Microsoft Windows documentation project”.
     
  7. «Frontpage» [Página inicial] (em inglês). ReactOS Foundation. Consultado em 23 de junho de 2013.. Arquivado do original em 20 de setembro de 2012 
  8. Holwerda, Thom (14 de novembro de 2007). «ReactOS Gets OpenOffice.org 2 Support; New Release Plans» [ReactOS Ganha Suporte ao OpenOffice.org 2; Planos de Novos Lançamentos]. www.OSNews.org (em inglês). Consultado em 14 de julho de 2018.. Cópia arquivada em 18 de outubro de 2017 
  9. «Tests for 0.4.4» [Testes para 0.4.4]. www.ReactOS.org (em inglês). 14 de julho de 2018 
  10. Kupfer, Matthias; Bragin, Aleksey (14 de março de 2010). ReactOS – Das zu Windows binärkompatible Open-Source-Betriebssystem. Chemnitzer Linux-Tage (em alemão). Chemnitz, Alemanha. Consultado em 15 de março de 2010.. Cópia arquivada em 8 de julho de 2018 
  11. Royal, Simon (16 de fevereiro de 2014). «ReactOS: A Windows Compatible Alternative OS» [ReactOS: Um SO Alternativo Compatível com Windows]. www.LowEndMac.com (em inglês). Consultado em 10 de janeiro de 2016.. Cópia arquivada em 23 de outubro de 2017. While the main core of ReactOS is built from scratch, it has some dependencies on existing software and protocols. It uses parts of Wine, networking in the form of lwIP, USB from Haiku, as well as FreeType, Mesa3D, and UniATA. 
  12. Holwerda, Thom (17 de janeiro de 2009). «ReactOS: Looking Back Upon 2008» [ReactOS: Olhando Para Trás em 2008]. www.OSNews.com (em inglês). Consultado em 10 de dezembro de 2009.. Efforts to port ReactOS to the ARM anc x64 architectures are also under way, with both projects being able to initialise the first few parts of the operating system. 
  13. «ReactOS gets USB Stack, with Help from Us» [ReactOS recebe Pilha USB, com ajuda de nós] (em inglês). Haiku (sistema operacional). 20 de fevereiro de 2012. Consultado em 2 de janeiro de 2016.. The ReactOS and Haiku projects have had a friendly working relationship for several years now, with each group helping the other whenever possible. 
  14. Vincent, Brian (15 de maio de 2004). «Interview with Steven Edwards» [Entrevista com Steven Edwards]. winehq.com (em inglês). Consultado em 6 de janeiro de 2016.. Cópia arquivada em 12 de julho de 2018. BV: Wine and ReactOS have had a mutually beneficial relationship. Is there anything Wine could do different that would help ReactOS development?[...] BV: You guys have certainly contributed a lot of your work back to Wine, including some of the utilities you've written. For instance, the task manager was recently ported from ReactOS. Do you guys have any plans in the works for developing more tools? Steven: I really want to see a solitaire clone make it in to Wine and ReactOS.[...] At some point we are going to have to develop replacement components for everything in Windows so if there is a program that Wine needs and ReactOS implements it then I will try to make sure it's released under a compatible license. 
  15. «Installing». ReactOS. 20 de janeiro de 2014. Consultado em 10 de fevereiro de 2014. 

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