ReactOS (anglická výslovnost [riˈæktəuˌes], česká [reaktos]; React Operating System) je open-source operační systém, který má za cíl kompletní binární kompatibilitu s aplikacemi a ovladači pro Windows NT 5.x a novější (Windows 2000 a jeho nástupci), přičemž je postaven na designu Windows XP/2003. V současné době je ReactOS ve stavu alfa verze. ReactOS je zveřejněn pod licencí GNU General Public License. Momentálně je ReactOS k dispozici pro platformu IA-32, nicméně je vyvíjeno úsilí k portaci na architektury AMD64 a ARM, nejnověji také pro MIPS.
ReactOS je znám pro své informace o nezdokumentovaném Windows API a obecněji jako open-source náhrada za Windows. Cílem projektu je umožnit uživatelům Windows se zcela zříci použití proprietárního komerčního software, aniž by museli přejít na jiný operační systém, jako např. Linux. Žel, nedostatek firemních sponzorů a zkušených vývojářů omezuje uskutečnění těchto cílů.
Kolem roku 1996 začala skupina vývojářů vyvíjet software s názvem FreeWin95, který měl být klonem operačního systému Windows 95. Projekt uvízl ve stadiu diskusí o tom, jak má vypadat design systému.
Na konci roku 1997 nebyly žádné viditelné výsledky. Vývojáři se rozhodli projekt opět vzkřísit s tím, že půjde o alternativu k Windows NT (namísto 95) a jméno bylo změněno na ReactOS; stejnojmenný projekt započal v únoru 1998 vývojem jádra a základních ovladačů na základě NT modelu.[2]
V roce 2004 měl ReactOS již poměrně stabilní jádro, mnoho aplikací API bylo před dokončením a existovalo i základní GUI. ReactOS obsahoval explorer shell se základními funkcemi, podobný Průzkumníku z Windows.
ReactOS je primárně napsán v C, s některými prvky, jako například ReactOS Explorer, napsanými v C++. Projekt se opírá o MinGW pro kompilaci a přispívá k jeho rozvoji prostřednictvím předkládání záplat (patches [pæčiz]) pro jeho součásti.
ReactOS spolupracuje s projektem Wine, aby mohl čerpat z jeho pokroku v implementaci API Win32. Toto úsilí se týká převážně knihoven Wine, z nichž většinu mohou ReactOS a Wine sdílet. Oba projekty pracují na otázkách křížové kompatibility, aby se zbývajících několik DLL dalo v ReactOSu používat.
Důležité oblasti, v nichž je třeba pracovat, jsou podpora Javy a .NET (prostřednictvím Mono). Práce na podpoře DOS, OS/2 a POSIX byla zastavena, jelikož tyto subsystémy byly shledány nevýznamnými.
Některé komponenty Wine, jako NTDLL, USER32, KERNEL32 a GDI32 nelze použít pro korektní implementaci kvůli architektonickým rozdílům.[6] Nicméně v nedávné době byla vytvořena experimentální větev Arwinss jako alternativa ke stávající implementaci Win32 API, která trpí nedostatkem vývojářů a špatně dostupnou dokumentací. Zatímco původní Win32 subsystém v ReactOSu byl navržen co nejpodobněji tomu v systému Windows, Arwinss je hybrid tohoto subsystému s architekturou Wine. K tomuto účelu využívá Arwinss knihovny GDI32 a USER32 s několika změnami za účelem lepšího využití softwarové kompatibility Wine. Arwinss rovněž umožňuje uživateli případné použití vzdáleného X serveru namísto lokálního displeje. Celkově Arwinss klade za cíl zlepšit podporu USER32 a GDI32.[7]
Vývojáři se zaměřují hlavně na podporu sítí, multimédií, podporu Plug and Play hardwaru, vylepšení GUI systému, funkčnost DirectX a zlepšení podpory pro ovladače Windows. Současným cílem vývojářů je jádro více kompatibilní se systémem Windows NT 5.2 (Windows Server 2003), s usermode API Windows NT 6 (Windows Vista)[8] a větší funkčnost aplikací.
Vývoj je v současné době omezen nedostatkem lidí s odpovídajícími zkušenostmi. Záznam ReactOSu v seznamu Ohlohu uvádí celkový součet 99 uživatelů, kteří přispěli kódem do projektu přes SVN od jeho počátků až do dnešních dnů.[9] Oproti tomu na Windows 7 pracovalo zhruba 1 000 vývojářů, kteří byli organizováni do 25 týmů (každý o 40 vývojářích).[10] Navíc vývojář ReactOSu Michele C ve své prezentaci na konferenci Hackmeeting 2009 v Miláně poznamenal, že většina vývojářů se učila o architektuře systému Windows při práci na ReactOSu a neměli předchozí znalosti.
NetBSD • FreeBSD • OpenBSD • DragonFly BSD — Minix 3
Debian (1993) • Knoppix (2000) • Ubuntu (2004)
Red Hat (1994) • Fedora (2003) • Mandriva (2005)
Gentoo (2002)
Arch Linux (2002) • Manjaro (2011)
Slackware (1993) • SUSE (1996) • Slax (2002) • další…
GNU Hurd • Linux-libre — seL4
Fuchsia — Haiku — Redox
10.6 (Snow Leopard) • 10.7 (Lion) • 10.8 (Mountain Lion) • 10.9 (Mavericks) • OS X 10.10 Yosemite • OS X 10.11 El Capitan • macOS 10.12 Sierra • macOS 10.13 High Sierra • macOS 10.14 Mojave • macOS 10.15 Catalina • macOS 11 Big Sur • macOS 12 Monterey
MS-DOS • DR DOS • FreeDOS • PTS-DOS
Windows 1.0 (1985) → Windows 2.0 (1987) → Windows 3.0 (1990) → Windows 3.1x (1992) → Windows 95 (1995) → Windows 98 (1998) → Windows ME (2000)
Windows NT 3.1 (1993) → Windows NT 3.5 (1994) → Windows NT 3.51 (1995) → Windows NT 4.0 (1996) → Windows 2000 (2000) → Windows XP (2001) → Windows Server 2003 (2003) → Windows Vista (2007) → Windows Server 2008 (2008) → Windows 7 (2009) → Windows Server 2008 R2 (2009) → Windows 8 (2012) → Windows Server 2012 (2012) → Windows 8.1 (2013) → Windows Server 2012 R2 (2013) → Windows 10 (2015) → Windows Server 2016 (2016) → Windows 11 (2021) → Windows Server 2025 (2024) → Windows 12 (ve vývoji)
Windows CE → Windows Mobile → Windows Phone (2010) → Windows 10 Mobile (2016)
Cairo • Nashville • Neptune • Odyssey
Android • Bada • BlackBerry OS • Firefox OS • iOS • Maemo • Palm OS • Symbian OS • Tizen • Ubuntu Touch • webOS • Windows Phone
QNX • Solaris • BeOS • OpenVMS • Mac OS • NeXTSTEP • Syllable • ReactOS • Chrome OS • AmigaOS
Mac OS (Classic) • Multics • OS/2 • Plan 9 from Bell Labs • UNIX • XENIX