A ReactOS jelentős hálózati teljesítménynövekedést ért el az aszinkron TCP támogatás bevezetésével

Segítséget kaptál? Szívesen töltöd itt az idődet? Visszajársz hozzánk? Támogasd a munkákat: Ko-fi és Paypal!

kami911 képe

A „nyílt forráskódú Windowsként” ismert ReactOS fejlesztése az utóbbi hetekben látványosan felgyorsult. A Windows NT 6 kompatibilitás javítása és egy régóta bosszantó használhatósági hiba megszüntetése után most egy technikailag kiemelkedően fontos fejlesztés érkezett: az aszinkron TCP kapcsolatok teljes körű támogatása. Ez az újítás érezhető hálózati teljesítménynövekedést hozhat számos alkalmazás esetében.

Végre megérkezett az aszinkron TCP támogatás

A ReactOS fejlesztői a hét elején egy régóta várt változtatást olvasztottak be a forráskódba: a rendszer immár helyesen támogatja az aszinkron (nem blokkoló) TCP kapcsolatokat (asynchronous TCP connections). A bejelentés a fejlesztők X-en közzétett üzenete szerint mérföldkőnek számít:

BREAKING NEWS:
10 év után az aszinkron TCP támogatását megvalósító javítás végre bekerült a ReactOS-be. Jelentős teljesítménynövekedésre lehet számítani a hálózati alkalmazásoknál (például böngészők, FTP kliensek, letöltéskezelők esetén).”

A probléma gyökere egészen 2016-ig nyúlik vissza, amikor egy hibajegy (Jira ticket) készült arról, hogy a nem blokkoló módú socket kapcsolatok nem működnek megfelelően a rendszerben. Ez különösen érzékenyen érintette azokat az alkalmazásokat, amelyek párhuzamos hálózati műveletekre építenek.

Hosszú út a megoldásig

Az elmúlt évek során több javítási kísérlet és átdolgozott pull request született, mire a megoldás elérte azt az állapotot, amely már elfogadható volt a fő fejlesztési ágba történő beolvasztáshoz. A most egyesített kód végül a legfrissebb ReactOS fejlesztői verzióban vált elérhetővé.

A fejlesztők szerint az új aszinkron TCP megvalósítás széles körű hálózati teljesítményjavulást eredményez, különösen azoknál az alkalmazásoknál, amelyek sok egyidejű kapcsolatot kezelnek vagy nagy mennyiségű adatot mozgatnak hálózaton keresztül.

Mit jelent ez a gyakorlatban?

A változtatás hatása leginkább az alábbi területeken lehet érezhető:

  • webböngészők gyorsabb adatletöltése és reszponzívabb működése,
  • FTP kliensek és letöltéskezelők hatékonyabb párhuzamos adatátvitele,
  • általánosan jobb hálózati skálázhatóság a ReactOS alatt futó Windows-kompatibilis alkalmazások esetében.

Ez a fejlesztés különösen fontos abból a szempontból, hogy a ReactOS célja nem pusztán a Windows API-k formális támogatása, hanem azok gyakorlati, teljesítményben is versenyképes megvalósítása.

 

Lépés a mindennapi használhatóság felé

Bár a ReactOS továbbra is fejlesztés alatt áll, az aszinkron TCP támogatás bevezetése egyértelműen azt mutatja, hogy a projekt egyre közelebb kerül ahhoz, hogy valós környezetben is használható alternatívát kínáljon a klasszikus Windows rendszerekhez – legalábbis bizonyos feladatkörökben.

A fejlesztők által „jelentősnek” nevezett teljesítménynövekedés a következő tesztkiadásokban és napi build-ekben már kézzelfogható formában is megmutatkozhat, különösen hálózatintenzív alkalmazások futtatása során.

Mi az a ReactOS?

A ReactOS egy szabad és nyílt forráskódú operációs rendszer, amelynek elsődleges célja a Microsoft Windows NT-alapú rendszerekkel való bináris kompatibilitás megvalósítása. Ez azt jelenti, hogy a fejlesztők olyan rendszert kívánnak létrehozni, amely képes Windowsra készült alkalmazások és illesztőprogramok futtatására anélkül, hogy a Microsoft eredeti forráskódját felhasználná. A projekt teljes egészében úgynevezett „clean room” módszerrel készül, vagyis a Windows működését kizárólag dokumentációk, megfigyelések és visszafejtés alapján valósítják meg.

Fontos hangsúlyozni, hogy a ReactOS nem Linux-alapú rendszer, és nem is emulátor. Saját kernellel rendelkezik, amely felépítésében és működésében a Windows NT kerneléhez hasonlít. Bár a felhasználói térben több komponens a Wine projektből származik, a ReactOS nem egyszerűen egy Wine-ra épülő környezet, hanem egy teljes értékű, önálló operációs rendszer, amely saját memóriakezelést, folyamatkezelést és eszközmeghajtó-modellt használ.

A ReactOS fejlesztési állapota jelenleg alfa szintű, ami azt jelenti, hogy mindennapi, éles használatra nem alkalmas. A rendszer stabilitása még nem kiforrott, előfordulhatnak összeomlások, és a hardvertámogatás is meglehetősen korlátozott. Ennek ellenére bizonyos régebbi, főként Windows XP korszakából származó alkalmazások már most is futtathatók rajta, különösen az egyszerűbb segédprogramok és klasszikus szoftverek.

A projekt jelentősége elsősorban technológiai és oktatási szempontból kiemelkedő. A ReactOS kiváló lehetőséget nyújt az operációs rendszerek belső működésének tanulmányozására, valamint arra, hogy a Windows architektúráját egy nyílt forráskódú megvalósításon keresztül lehessen megérteni. Emellett hosszabb távon szerepet kaphat régi Windows-szoftverek archiválásában, ipari rendszerek fenntartásában vagy olyan környezetekben, ahol a zárt forráskódú megoldások nem kívánatosak.