ReactOS

ReactOS (in precedenza conosciuto col nome FreeWin95) è un sistema operativo libero open source che si pone l'obiettivo di essere totalmente compatibile con il codice oggetto delle applicazioni e dei driver realizzati per Microsoft Windows NT 5 e versioni successive (Windows 2000, XP, 2003,…

ReactOS (in precedenza conosciuto col nome FreeWin95) è un sistema operativo libero open source che si pone l'obiettivo di essere totalmente compatibile con il codice oggetto delle applicazioni e dei driver realizzati per Microsoft Windows NT 5 e versioni successive (Windows 2000, XP, 2003, Vista, 7, 8, 10 e 11).

Il termine è stato coniato dal fondatore del progetto Jason Filby, uno sviluppatore di Oracle Database di Durban, in Sudafrica. "OS" sta per "sistema operativo" mentre "React" sta alla disapprovazione di massa verso Microsoft e la sua posizione monopolistica e quindi alla necessità di una "Reazione". Essendo il progetto tuttora nello stadio di sviluppo alpha, gli stessi sviluppatori ne consigliano l'uso esclusivamente per scopi di valutazione e test.

L'ideazione e le prime versioni

Intorno al 1996 un gruppo di sviluppatori open source avviò un progetto chiamato FreeWin95, con l'intento di implementare un sistema operativo compatibile con Windows 95. Il progetto si arrestò alle discussioni riguardanti la progettazione del sistema, perché Windows 95 appariva carente in molte delle caratteristiche richieste.

Pertanto alla fine del 1997 i membri del progetto cambiarono il "sistema obiettivo" in Windows NT e il nome stesso del progetto fu modificato in ReactOS; il progetto nacque ufficialmente nel febbraio 1998 con lo sviluppo del kernel e dei driver di base.

Il ramo 0.3 e il supporto USB

A partire dal ramo di sviluppo della versione 0.3 è stato introdotto il supporto per i temi e per l'USB, che nella versione 0.3.14 consentiva solo il funzionamento di tastiere e mouse, ancorché sotto forma di patch, mentre nella versione 0.3.15 supportava anche i dischi dotati di tale bus.

La versione 0.3.16 è stata precocemente distribuita, con lo scopo di implementare le ultime modifiche in concomitanza del progetto Thorium, un tentativo di guadagnare visibilità tramite una campagna di raccolta fondi sulla piattaforma Kickstarter. Nella versione 0.3.17 è stato incluso NTVDM, ancora in fase di progettazione, che fornisce il supporto a una vasta gamma di applicazioni a 16 bit. Lo sviluppo preliminare alla release 0.3.17 ha inoltre registrato un notevole impegno da parte della comunità nelle prove su hardware; diversi rollback e bugs scoperti nelle release candidate vennero prontamente risolti e inseriti nella versione finale. La ReactOS Foundation però ha voluto saltare appositamente il ramo di sviluppo 0.3.18 per passare direttamente a quello 0.4, in modo da sottolineare la crescita avuta dal codice in tutti questi anni di miglioramenti.

La revisione per presenza di codice non libero

Il 17 gennaio 2006 Harmut Birr contattò gli sviluppatori di ReactOS presenti nella mailing list ufficiale (ros-dev) affermando che in ReactOS risultava esserci qualche riga di codice identica a quelle di Windows NT, invalidando la sua licenza libera. Il risultato di queste affermazioni ha fatto chiudere per un periodo di tempo il server SVN dedicato al progetto e gli sviluppatori si sono preoccupati di contattare coloro che contribuivano a migliorare il software a utilizzare solo ed esclusivamente del codice ottenuto tramite il metodo Clean Room Reverse Engineering. Dato che ReactOS è distribuito come software open source questa azione ha causato una reazione negativa da parte della comunità del software libero. Non ci sono comunque state conseguenze a danno degli sviluppatori e l'accesso al programma di sviluppo è stato ripristinato quasi immediatamente.

Il codice che Birr ha contestato coinvolgeva la funzione BadStack presente in syscall.S, e altre voci non specificate. Confrontando questa funzione con il codice binario ottenuto dal reverse di Windows XP, Birr ha sostenuto che la funzione BadStack era semplicemente un mero copia-incolla, dato che erano identici. Alex Ionescu, l'autore del codice, ha affermato che mentre il binario di Windows XP è stato effettivamente studiato, il codice non era copiato, ma reimplementato; il motivo per cui le funzioni sono identiche, ha sostenuto Ionescu, è stato perché c'era solo un modo per implementare la funzione. Il fatto è analogo alla causa intentata da Sony Computer Entertainment contro Connectix relativa al reverse engineering fatto nel corso dello sviluppo di Virtual Game Station: Connectix ebbe successo nel ricorso contro la sentenza iniziale, sostenendo che il reverse e l'osservazione diretta del codice proprietario era resa necessaria perché non c'era altro modo per determinare il suo comportamento e quindi le fu riconosciuto l'"uso legittimo".

Come conseguenza dall'8 marzo 2006 fino a dicembre 2007 gli sviluppatori di ReactOS hanno iniziato un'analisi auto-imposta di tutto il codice che riguarda la compatibilità con Microsoft Windows. A settembre del 2007, quando il controllo del codice era quasi ultimato, lo stato dell'analisi venne rimosso dalla homepage di ReactOS. Quando l'analisi venne definitivamente completata, i dettagli nello specifico non furono resi pubblici e rimasero solo come dati interni per essere sicuri della completa legalità del prodotto.

Video: ReactOS printing for the first time — Colin Finck, ReactOS Community — CC BY 3.0 — Wikimedia Commons

Servizi correlati

Altre voci

React NativeR

React Native

React Native è un framework per applicazioni mobili open source creato da Meta. Viene utilizzato per sviluppare applicazioni per Android, Android TV, iOS, macOS, tvOS, Web, Windows e UWP consentendo agli sviluppatori di utilizzare React framework insieme alle funzionalità della piattaforma nativa.

Leggi la voce →
A

Android 15

Android 15 (nome in codice Vanilla Ice Cream) è la quindicesima versione del sistema operativo mobile Android, sviluppato dalla Open Handset Alliance, a sua volta guidata dall'azienda Google, pubblicato il 15 ottobre 2024.

Leggi la voce →
I

IOS 7

iOS 7 è la settima versione del sistema operativo per dispositivi mobili iOS, sviluppato dalla Apple Inc. e successore di iOS 6. È stato annunciato durante la WWDC il 10 giugno 2013 ed è stato pubblicato il 18 settembre dello stesso anno.

Leggi la voce →
Dispositivo mobileD

Dispositivo mobile

Un dispositivo mobile, in informatica e elettronica, indica tutti quei dispositivi elettronici che sono pienamente utilizzabili seguendo la mobilità dell'utente quali telefoni cellulari, palmari, smartphone, tablet, laptop, lettori MP3, ricevitori GPS ecc. Il termine designa dunque in modo…

Leggi la voce →
Sviluppo di applicazioni mobiliS

Sviluppo di applicazioni mobili

Lo sviluppo di applicazioni mobili (o più semplicemente sviluppo di app) è il processo di ideazione e creazione di applicazioni destinate ai dispositivi mobili, in particolare gli smartphone.

Leggi la voce →
M

Mother/Android

Mother/Android è un film del 2021 diretto da Mattson Tomlin.

Leggi la voce →