Harminc éves lett a ReactOS, a nyílt forráskódú Windows NT klón, amely talán sosem fog elkészülni teljesen a mi életünkben. A projekt történetének első commitja, 1996. január 23-án került beküldésre a fejlesztőcsapat részére, mely archívumként ma már a Githubon tekinthető meg – Ekkor a Github még nem létezett – A kerek évforduló apropóján a ReactOS blogján Carl Bialorucki foglalta össze a projekt elmúlt három évtizedét, de ebben a cikkben mi is megemlékezünk erről az egyedülálló kísérletről.
Tartalomjegyzék

Fájdalmas kezdetek, avagy hogyan jutottunk el a mai rendszerig?
A ReactOS története a halva született FreeWin95 projektből eredeztethető, mely eredetileg egy Windows9x klón létrehozását kívánta megvalósítani, a fókusz azonban áthelyeződött a Windows NT vonal felé, miután Jason Filby átvette a projekt vezetését. A rendszer irányvonalának újratervezésével született meg gyakorlatilag a ma ismert ReactOS projekt. A korai években a haladás rendkívül fájdalmas és lassú volt, mert előbb egy minimalista NT-szerű környezetet kellett felépíteni, és csak erre lehetett érdemben illesztőprogramokat és további rendszerkomponenseket felhúzni.
A ReactOS 0.1.0-ás verziója 2003. február 1-jén jelent meg, és bár még nem volt a normál értelemben vett grafikus asztali környezete, áttörésnek számított a projekt történetében: ez volt az első olyan kiadás, amely már CD-ről is el tudott indulni, és már rendelkezett parancssoros felületettel. A 0.1.0 kiadás 2003 novemberéig kapott kisebb frissítéseket, azonban ez a kiadás főleg az építkezésről szólt. A cél egy működő boot, és egy minimális alaprendszer létrehozása volt, amelyre lehet további komponenseket felépíteni.
A 2003 és 2006 közötti 0.2.x időszakban fellendült a ReactOS fejlesztése: folyamatosan készültek új driverek, kialakult egy alap grafikus felület, a rendszer pedig egyre használhatóbbá, stabilabbá vált, ami kiváltotta a nyílt forráskódú közösség figyelmét is. Ekkor történt egy fontos szervezeti váltás is: 2005 októberében Jason Filby lemondott a projektkoordinátori szerepről, helyét pedig Steven Edwards vette át a projekt élén.

A korszak vége viszont nem volt felhőtlen, mivel 2006 elején felerősödtek azok az aggályok, hogy egyes közreműködők esetleg kiszivárgott Windows-forráskódhoz férhettek hozzá, ami a projekt részéről szigorúbb szellemi tulajdonvédelmi szabályok bevezetését, forráskód-auditot és egy időre a hozzájárulások befagyasztását hozta magával. A későbbi auditok feltárták, hogy a rendszer nem tartalmazott Windowsból származó kódrészeket.
A 0.3.x korszakban mely 2006 és 2016 közé tehető, a fejlesztés lendülete érezhetően visszaesett, és a koordinátori szerepben ismét változás történt, ugyanis 2006 augusztusában Aleksey Bragin vette át a projekt vezetését. Ennek ellenére a 0.3.0 verziószámú kiadás 2006. augusztus 28-án már hálózati támogatást hozott, és bemutatott egy „Download!” nevű csomagkezelőt, amely később a mai ReactOS-be épített RAPPS alapjává vált.

2008-ban elindult az x86_64 port fejlesztése, majd 2009-ben a 0.3.10 átvette az UniATA tárolódrivert, ami nagyot dobott a rendszer hardvertámogatásán: lehetővé tette a SATA eszközök kezelését és a 8 GB-nál nagyobb partíciók támogatását. 2012-re a 0.3.14 már MSVC-vel is fordítható volt, és megjelent a vizuális stílusok támogatása is.
A 0.4.0 2016. február 16-án érkezett, és a blog szerint itt már egy új, több Windows-komponenst használó, felépítésében a Windows Explorerhez közelebb álló grafikus shell volt a főbb újdonság, emellett MSVC-s fordítás mellett WinDbg-s kernelhibakeresést is bevezettek.

A szabványos Windowsos hibakereső eszközök használhatósága sokat segített az előrehaladásban. A 0.4.x ág ezután hosszú ideig inkrementális frissítésekkel élt tovább, a 0.4.14 és 0.4.15 pedig már több évnyi fejlesztést összegző kiadásként jelenik meg. A 64 bites port ma nagyjából hasonló képességű, mint a 32 bites, de a WoW64 alrendszer hiánya miatt a 32 bites alkalmazások futtatása továbbra is korlátozza a gyakorlati használhatóságát.
Hogyan tovább? Avagy a ReactOS távlati tervei
Ami a projekt jövőbeli terveit illeti, a csapat új fejlesztői buildkörnyezeten (RosBE), új NTFS fájlrendszer-meghajtón és új ATA tárolómeghajtón dolgozik, de a főbb célkitűzések közé tartozik a többprocesszoros támogatás (SMP) erősítése, a „class 3” UEFI rendszerek kezelése, valamint a címterület-rendezés véletlenszerűsítése a kernelben és a felhasználói térben is. Emellett a távlati tervek között szerepel a modernebb GPU-meghajtók bevezetése, a Microsoft WDDM modelljére építve. Bár a születésnapi bejegyzésben erről nem esik szó, de ahhoz hogy eljussunk egy teljesen stabil és binárisan kompatibilis 1.0 verzióhoz, talán további évtizedeket kell várnunk, mindenesetre minden tiszteletem azok felé a fejlesztők és közreműködők felé, akik három évtizede hatalmas lelkesedéssel életben tartják a fejlesztést, és szorítok hogy minél hamarabb sikerüljön elérni céljaikat!
A fejlesztők a kerek évfordulóhoz statisztikát is közöltek: Az elmúlt 30 évben 88 198 commit érkezett, 301 közreműködőtől, mely 31 025 fájlból és 14 929 578 sornyi kódból áll össze.

