# ReactOS

ReactOS é um sistema livre de 1996 com licença GNU GPL, da fundação ReactOS, para computadores pessoais (prt: sistema operativo; bra: sistema operacional), com o objetivo de, compatibilidade de código binário com programas e controladores de dispositivos feitos para o sistema Microsoft Windows Server 2003 e sucessores,  e em ser uma substituição de código livre do sistema comercial da Microsoft,  e ter informações sobre recursos não documentados da Interface de Programação de Aplicações da Microsoft (API).
O ReactOS iniciou seu desenvolvimento como um projeto clone do Windows 95 chamado FreeWin95; após um período inativo devido a divergências entre os programadores, ressurgiu como ReactOS em 1997 e mudou seu foco para ser um clone da versão Windows NT5.x (2000,XP e 2003).
Desde 14 de outubro de 2020 (2020 -10-14) ele ainda é considerado software alfa com recursos incompletos, portanto seus desenvolvedores só o recomendam para avaliação e testes. Entretanto, muitas aplicações do Windows funcionam, tais como: Abyss Web Server X1 2.12.1 (Build 190530), Audacity 2.2.2, Bochs 2.6.9, Code::Blocks (with compiler) 17.12, FreeBASIC 1.07.1, FreeMat 4.2, Ghostscript 9.23 e GSview 5.0, HxD 2.3.0.0, IrfanView 4.51, Java Runtime Environment (JRE) 8u11, KVIrc 4.2.0, etc.
O projeto do sistema é primariamente escrito em C, com alguns elementos, como o Explorador de Arquivos, escrito em C++, implementando parcialmente a Arquitetura do Windows NT, a Interface de Programação de Aplicações da Microsoft, portado para o conjunto de instruções AMD64. O ReactOS, como parte do ecossistema de software livre e de código aberto, reusa e colabora com muitos outros projetos livres, mais notavelmente o projeto Wine, o qual desenvolve uma camada de compatibilidade Windows para sistemas operativos tipo Unix.

## História
### Início do desenvolvimento

Em meados de 1996, um grupo de desenvolvedores de software livre e de código aberto iniciou um projeto chamado FreeWin95 para implementar um clone do Windows 95. O projeto parou nas discussões sobre a arquitetura do sistema.
Apesar de o FreeWin95 ter iniciado com grandes expectativas, ainda não havia nenhuma compilação liberada para o público até o final de 1997. Como resultado, os membros do projeto, liderados pelo coordenador Jason Filby, se reuniram para revivê-lo. O projeto renovado procurou duplicar a funcionalidade do Windows NT. Ao criar o novo projeto, um novo nome, ReactOS, foi escolhido. O projeto iniciou o desenvolvimento em fevereiro de 1998 ao criar a base para um novo núcleo compatível com o Windows NT e controladores de dispositivos básicos. O nome ReactOS foi cunhado durante uma conversa IRC. Enquanto o termo OS é de Sistema operativo, o termo React se referia à insatisfação do grupo — e reação à — atitude e posição monopolística$^{(eminglês)}$ da Microsoft.
Em 2002, a Fundação ReactOS (ReactOS Foundation) foi estabelecida em Moscou com Maxim Osowski e Aleksey Bragin como diretores executivos e Vladimir Bragin, Saveliy Tretiakov e Alexey Ivanov no conselho de administração. Em 2015, a fundação foi dissolvida.

### Bifurcação Ekush OS

Em 2004, uma violação de direito autoral e licença de uso de código GPL do ReactOS (e outros códigos de software livre) foi descoberta com a distribuição de uma bifurcação do ReactOS chamada Ekush OS. A página deste posteriormente foi retirada do ar.

### Auditoria interna

Para evitar um processo de indenização por direito autoral, o ReactOS precisa ser expressamente distinto e não derivado do Windows, um objetivo que precisa de trabalho muito cuidadoso. Uma alegação foi feita em 17 de janeiro de 2006, pelo agora ex-desenvolvedor Hartmut Birr, na lista de discussão ros-dev de que o ReactOS continha código derivado de desmonte do Microsoft Windows. O código que Birr contestou envolveu a função BadStack no arquivo syscall.S, bem como outros itens não especificados. Ao comparar essa função com binários desmontados do Windows XP, Birr argumentou que a função BadStack foi simplesmente copiada e colada do Windows XP, dado que elas eram idênticas. Alex Ionescu, o autor do código, afirmou que enquanto o binário em questão do Windows XP foi realmente desmontado e estudado, o código não foi meramente copiado, mas reimplementado; a razão pela qual as funções foram idênticas, Ionescu contestou, foi porque havia uma única possível maneira de implementar a função.
Em 27 de janeiro de 2006, os desenvolvedores responsáveis por manterem o repositório de código do ReactOS desativaram o acesso após uma reunião feita para discutir as alegações. Quando abordada por NewsForge, a Microsoft recusou-se a comentar sobre o incidente. Uma vez que o ReactOS é um projeto de desenvolvimento de software livre e de código aberto, a alegação desencadeou uma reação negativa pelo movimento software livre; em particular, o Wine barrou vários desenvolvedores inativos de fornecer contribuições e, cooperação formal de alto nível entre os dois projetos desde 2006. Contribuições de vários desenvolvedores ativos do ReactOS foram aceitos após a auditoria, e cooperação de baixo nível para correção de falhas ainda ocorre.
Em uma declaração em seu portal, o ReactOS citou diferentes definições legais sobre o que constitui engenharia reversa de sala limpa como uma causa para o conflito. Alguns países, incluindo os Estados Unidos da América, requerem que uma reimplementação baseada em código desmontado precise ser escrita por outra pessoa que não a que desmontou e examinou o código original, enquanto outros países permitem que ambas as tarefas sejam executadas pelo mesmo indivíduo. Consequentemente, o Projeto ReactOS clarificou em sua Declaração de Política de Propriedade Intelectual que os requerimentos de engenharia reversa de sala limpa obedecem à lei dos EUA. Uma auditoria interna foi conduzida para assegurar que apenas engenharia reversa de sala limpa fosse usada, e todos os desenvolvedores tiveram que assinar um acordo se comprometendo a cumprir com as políticas do projeto sobre engenharia reversa. Contribuidores do seu desenvolvimento não foram afetados por esses eventos e todo o acesso às ferramentas de desenvolvimento de software foi restaurado pouco depois. Em setembro de 2007, com a auditoria se aproximando da conclusão, o estado da auditoria foi removido da página inicial do ReactOS. Embora a auditoria tenha sido concluída, detalhes específicos não foram tornados públicos porque era apenas um esforço interno para assegurar conformidade com a política do próprio projeto.
Ainda, o vazamento em 2004 do código-fonte do Windows 2000 não foi visto como risco jurídico para o ReactOS, já que o segredo comercial foi considerado indefensável em julgamento devido à ampla propagação.

### Participação no Google Summer of Code

Com início em 2006, o Projeto ReactOS participou em alguns Google Summers of Code. Por exemplo, no GSoC 2011,. O Projeto ReactOS já participou seis vezes no GSoC: 2006, 2011, 2016, 2017, 2018 and 2019.

## Requisitos de sistema

* Processador x86 (x86-64 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 VirtualBox, Virtual PC, VMware, QEMU ou Bochs.