Novinky a zajímavosti

Moderators: preston, navaraf

turican
Posts: 18
Joined: Thu Jan 10, 2008 11:58 am

Zkouška 0.3.4

Post by turican »

Pro ty, kdo přemýšlí o vyzkoušení 0.3.4 popíšu své dojmy:
Nejdřív jsem ROS vyzkoušel v balíčku pro VMWARE.
Vše v pohodě a rychle najelo(akorád momentálně zmizel progres bar při startu, ale to je detail).
Pak jsem vyzkoušel stažení firefoxu 2.0 - systém se hned po stažení zaseknul.
Následovala tedy instalace firefoxu 1.5 - ta již proběhla bez problémů. Stránky se v něm v pořádku otevíraly, ale po několika stránkách se systém opět zasekl.
Řekl jsem si, že to bude již starším VMWARE, a zkusil to v QEMU, ale se stejným výsledkem.
Z hlediska uživatele mi tedy přijde, že se od verze 3.3, moc věcí k lepšímu nezměnilo.
Nelze se tomu však divit, protože stabilní verze těžko může být pro vývojáře prioritou v době, kdy se v jádře přepisuje spousta věcí.
Nicméně testování verze 0.3.4 dle mého nemá přílišný význam, neboť o těch velkých problémech vývojáři vědí, a ty méně významné nemá smysl v součásné době řešit.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Post by preston »

Od uvolnění verze 0.3.4 se událo opět mnoho zajímavých změn, a proto se je tento post pokusí shrnout.

Předně byl snad již definitivně opraven problém s nefunkční PS/2 klávesnicí/myší na opravdovém HW (ve VM se neprojevil). Přečtěte si zprávu z revize 32153 pokud chcete znát podrobnosti.

Vedoucí projektu Aleksey Bragin (Fireball) usilovně pracoval na novém Mm (Memory manager) pro freeloader (zavaděč systému) a i na freeloaderu samotném. Výsledkem je, že od revize 32051 je možné pomocí freeloaderu přímo nabootvat win2003. ReactOS tak má pravděpodobně vůbec první open source zavaděč, který je toho schopen (ostatní zavaděče sice umožňují bootování NT operačních systémů, ale využívají k tomu NTloader od MS).

Kdo sleduje commit log, mohl si všimnout nového užvatele ros-arm-bringup. Jedná se o úsilí portovat ReactOS na platformu ARM. Nicméně vedoucí projektu neposkytl žádné upřesňující informace, a tak ponechal příznivcům ReactOSu prostor pro nejrůznější doměnky a dohady viz např. současný topic na IRC - "ros-arm-bringup is a team of code ninjas, stop asking".
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Post by preston »

V posledních několika dnech dochází k výpadkům jednotlivých služeb. Vše souvisí s přesouváním serverů (SVN, web, buildmaster..). Od pátku fungují webové stránky, včera začal částečně pracovat i SVN server. Zatím stále nefungují mailové služby (mailing list, bugzilla) a není možné stáhnout svn buildy. Ke zprovoznění těchto služeb by mělo dojít během dneška a zítřka.
Pozitivní zprávou je, že nyní všechny servery projektu běží ve virtuálních strojích, takže případný příští přesun již bude velmi snadný a hlavně časově nenáročný.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Post by preston »

Pomalu se blíží duben, a tak již pozvolna začínají přípravy na vydání nové verze, a to již 0.3.5. K dispozici je připravený changelog (zatím prázdný) a i seznam tzv. "release blockers" tedy chyb, které je nutné odstranit, než bude moci nová verze spatřit světlo světa.
V současnosti jsou to:
  • při instalaci (1. stage) se o slovo hlásí ASSERT makro -
  • ResourceNeverExclusive
  • zamrznutí při startu 2. stage instalace
  • zamrznutí při instalci VMware tools
  • náhodné poškození tzv. red zones (část paměti vyhrazená při alokaci, která slouží k detekci přetečení)
Problémem je naprostá náhodnost, se kterou se tyto problémy vyskytují, takže jejich rešení bude velmi obtížné.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Post by preston »

Po delší odmlce je tu další krátký souhrn akutalit.

Krom obvyklé dávky patchů a vylepšení, které si našly cestu do SVN (opět zejména kernel a win32k) stojí za zmínku fakt, že poprvé v historii ReactOSu se podařilo načíst kernel mode ovladač pro directx od MS, a spolu s ddraw.dll a dciman32.dll taktéž od MS úspěšně spustit jednoduchou directdraw aplikaci (jednoduchá = vytvoření primary surface + blit). Více viz newsletter 40.

Co se týká vydání verze 0.3.5, tak věcy nabraly nečekaný směr. Vedoucí projektu Aleksey Bragin poslal na ros-dev mailing list mail s výzvou pro vývojáře.
Ve zkratce: Aleksey vyjádřil nelibost nad způsobem jakým je ReactOS nyní vyvíjen. Vývojáři by se podle něj měli soustředit primárně na opravování chyb a ne na implementaci, sice zajímavých, ale nyní nepotřebných součástí.
Zároveň oznámil odložení vydání verze 0.3.5, dokud se věcy nezmění k lepšímu.

Reakce si můžete prohlédnout v archivu, většina z nich se nese v duchu souhlasného pokyvování hlavou.

Zmíněny byly také tzv. winetests - testy importované pro sdílené user mode knihovny převzaté od projektu Wine. Ty mají za cíl testovat implementované API funkce a pomáhat při odhalovaní problémů. Bohužel vývojáři jim (z neznámých důvodů) nikdy nevěnovali valnou pozornost. To by se nicméně mělo nyní změnit. Včera proběhla první část velkého updatu těchto testů k HEAD revizi projektu Wine, takže to vypadá, že si vývojáři vzali výtky k srdci.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Re: Novinky a zajímavosti

Post by preston »

Konečně se mi podařilo vypořádat se studiem, a proto přináším další shrnutí novinek okolo projektu ReactOS.

Na úvod bych rád zmínil změny ve vývojářském týmu. Po dlouhých letech spolupráce ReactOS (z důvodu pracovní vytíženosti a doufáme, že dočasně) opustil Magnus Olsen (GreatLord). Bohužel, tak do značné míry osiřel jeho projekt podpory DirectX. O OpenGL, Mesu3D a případné updaty WineD3D se tedy již budu starat jen já.
Jeden odešel, dva "noví" nastoupili: Stefan Ginsberg (Stefan100) a Cameron Gutman (aicom). Zatímco Stefan ve svém volném čase škádlí rozmanité součásti kernelu, aicommander se soustředí na opravování kódu pro podporu sítě. A že se jim daří dokzuje i pokus, který má na svědomí Andrew Munger (WaxDragon) - zkouší dosáhnout maximálniho uptime, zatím je to necelých 5 týdnů.

Jelikož nejen kódem je živ softwarový projekt, je nutná i nějaká ta propagace. Za zmínku stojí prezentace na LinuxWolrd 2008, na níž má zasluhu Art Yerkes (arty). K dispozici je krátké video na youtube (EN) - na konci můžete na pozadí vidět část prezentace projektu Haiku, který s ReactOSem sdílel stánek.

Co se samotného ReactOSu týká, poměrně v rychlém sledu byly vydány verze 0.3.5 a 0.3.6. Seznam všech důležitých změn najdete jako vždy v changelogu: pro 0.3.5 a pro 0.3.6.

Vývoj samozřejmě pokračuje dál. Za nově vytvořenou větví, která se snaží portovat ROS na 64bit procesory, stojí Samuel Serapion (encoded) a Timo Kreuzer (Physicus). Christoph von Wittich zase pracuje na nové verzi sysregu, jedná se o automatický způsob testování jednotlivých revizí. Jakmile je zkompilováno ISO, je automaticky nainstalováno ve virtualním stroji, a po nabootovaní jsou spuštěny winetests (soubor testů k ověření funkcionality jednotlivých DLL knihoven, vytvořený projektem Wine). To v budoucnu umožní snadnější odhalení regresí (nová revize způsobí, že přestane fungovat něco, co v minulosti nedělalo potíže).
V posledních dnech proběhlo hromadné aktualizování DLL knihoven sdílených s Wine, částečně ve snaze zprovoznit nový prohlížeč od Googlu - Chrome. Ačkoliv se částečné úspěchy podařily, zatím si s Chrome na ReactOSu nepohrajete. Art Yerkes pracuje také na novém Cache Controlleru, k tomu je ale nejprve nutné odělit kód Cc od Memory Manageru. Jestli bude mít větší úspěch tento kód než NoCc (žádná cache) branch leadra projektu Alekseye Bragina ukáže čas.

Doufám, že jsem neopomněl zmínit nic důležitého. Pokud ano, zmíním se o tom v některém z dalších příspěvků.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Re: Novinky a zajímavosti

Post by preston »

Dnes byla branchnuta verze 0.3.7. Jakmile proběhne testování, bude uvolněna ke stažení. Zde jsou některé výsledky testování.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Re: Novinky a zajímavosti

Post by preston »

Stále se nedaří vypustit do světa verzi 0.3.7. Včera došlo ke zmrazení trunku (hlavní vývojová větev) do doby, než bude odstraněn poslední release blocker - tedy chyba tak podstatná, že na jejím opravení závisí vydání nové oficialní verze. Zároveň byl omezen přístup do svn repozitáře prakticky všem vývojářům. Cílem je zamezit vnášení dalších regresí před branchnutím nové 0.3.7 větve.

A co je tedy důvodem zdržení? Johannes Anderwald se zasloužil o odstranění staré konfigurační utility pro síť (ncpa). Tento applet implementoval veškerou funkcionalitu sám místo toho, aby se spoléhal na iphlpapi, netcfgx a netshell a nutno říct, že to nebyl zrovna hezký kód. Pro jeho odstranění bylo tedy nutné přidat velké množství API a pomocných funkcí do těchto komponent. To bohužel vedlo k velkým problémům s konfigurací sítě. Nejprve nefungoval dhcp klient, poté manuální nastavení a nakonec ani jedno. Johannes na problému zapracoval a během dneška se podařilo téměř vše uvést do chodu. Vzhledem k tomu jak dobrou prácí odvádí Cameron Gutman na stabilizaci networking stacku by byla škoda tyto chyby ignorovat a fakticky se tak připravit o podporu sítě.

Pokudtedy vše půjde podle plánu, zítra by mohlo dojít novému branchnutí pro verzi 0.3.7, jelikož původní 0.3.7 větev je nyní již zastaralá. Po obvyklém kolotoči testování se snad poté dočkáme oficialního vydání.

Co se ostatního vývoje týká, neustále pokračují práce na portování ReactOSu na 64bit platformu.
kjk::hyperion (jeho pravé jméno je tajemství) se snaží napravit ty nejhorší nedostatky Rbuildu (ReactOS build system) a také má za cíl umožnit zkompilovat veškerý kód v MSVC.
Timo Kreuzer si dal za úkol vyčistit a aktualizovat důležité datové struktury win32 subsystému, jak se mu to daří se můžete přesvědčit v commit logu.
Ostatní vývojáři pracují na obvyklých drobnějších opravách, synchronizaci sdílených částí kódu a pokračují v analýze chyb nalezených systémem Coverity.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Re: Novinky a zajímavosti

Post by preston »

ReactOS 0.3.7 je na světě. Oznámení, seznam změn, testy. Stahovat můžete jako vždy ze SourceForge.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Re: Novinky a zajímavosti

Post by preston »

Po více než roční pauze - u příležitosti vydání verze 0.3.11 - bych se rád podělil o další porci novinek. Tak tedy předně obligátní odkazy: changelog a download.

Za poslední rok se toho odehrálo opravdu mnoho. Někteří vývojáří projekt opustili (Magnus Olsen aka GreatLord, Andrew Greenwood aka Silverblade) jiní naopak řady vývojářů rozšířili - (Giannis Adamopoulos - smiley, Andrew Hill - ash77).

Asi nejdůležitějšími změnami z pohledu běžného uživatele jsou přechod na ovladače UNIATA; práce, kterou odvedl Johannes Anderwald na podpoře audia; rozsáhlé upravy network stacku od Camerona Gutmana a pokrok, který ukazuje amd64 branch (Timo Kreuzer a Samuel Serapion).

Podpora ovladačů UNIATA umožňuje používat ReactOS na discích připojených přes SCSI nebo SATA rozhraní. Bohužel je tu stále drobný problém s resetováním řadiče, což způsobuje prodlevy při startu. Tato chyba musela být pro release "opravena" (čti hacknuta) a způsobila více než měsíční oddálení jejího vydání.

Podpora audia se pomalu dostává z experimentální fáze, do použitelného stavu. Johannes odvedl obrovský kus práce při implemetnování kompletní windows kompatibilní audio architektury. V poslední verzi je přidána podpora mixování, zachytávání a jednoduchého resamplování. Jediným krokem zpět je chyba způsobující nefunčnost audia v produktech VMWare, ale na odstranění se pracuje. Pokud chcete experimentovat, zkuste Qemu nebo VirtualBox.

Cameron Gutman se zaměřil na opravy kernel mode části síťové podpory a zároveň na importování nové implementace win sock (původní autor Alex Inosecu). Výsledkem jeho práce je mnohem vyšší stabilita, takže běžné brouzdání po internetu již není z říše snů. Bohužel část jeho práce musela být z trunku odstraněna, protože nový mechanizmus uzamykání působil značné potíže. Další vyvoj probíha proto v samostatné větvi.

Když již padla zmínka o větvích, bylo by dobré se rozepsat o těch zajímavějších.

Předně amd64 - jak již název napovídá, cílem je plně 64 bitová verze ReactOSu. První fáze, ve které bylo nutno docílit, aby bylo možné zdrojový kód vůbec přeložit je již téměř za námi. Nastává fáze, ve které bude potřeba upravit některé součásti systému tak, aby byli schopné pracovat na jiné architektuře než je x86. Jedná se zejména o low level části kódu psané přímo v assembleru. Ve finální fázi dojde ke sloučení trunku a této větve, takže bude možné přeložit jak 32 tak 64bit verzi z jednoho zdrojového kódu.

ReactX - existence platformy ReactX (reimplementace rozhraní DirectX od MS) stála a padala s Magnusem Olsenem. Vzhledem k tomu, že Magnus se již na projektu nepodílí byla tato větev uložena k ledu. Všechny úpravy knihovny DDraw, které jsme spolu s Magnusem provedli (podpora pro HEL, obecné opravy), jsem již přesunul do trunku. Nyní již jen čekáme, zda se někdo vývoje ujme. Do té doby budeme stále závislí na knihovně WineD3D, která ale plní svou funkci na jedničku.

Arwinss - nováček z dílny Alekseye Bragina, který si klade ambiciózní plán nabídnout stabilní a použitelnou alternativu k trunku. V principu se jedná o nahrazení celého win32 subsystému knihovnami Wine tj. i těch, které jinak nesdílíme (user32, gdi32, kernel32). Jelikož Wine využívá ke svému běhu X server, bylo nutné navrhnout tenkou mezivrstvu (winent.drv) a implementovat nezbytnou kernel mode podporu do odlehčené verze win32k (ovladač subsystému). Do něho bylo také nutné vložit část Wine serveru (window manager, message queue, hooky..).
V čem je tedy výhoda? V tom, že se prakticky plně spolehneme na Wine. Wine má daleko striktnější proces schvalování nových patchů, což sice znamená pomalejší tempo vývoje, ale zaručuje lepši stabilitu. Dále má Wine daleko širší uživatelskou, ale i testovací komunitu. Použije se tak kód, který sice není vnitřně schodný s win32 architekturou, ale zbavuje nás nutnosti se starat o user mode komponenty a dává navenek stejný výsledek. To by mělo dát vývojářum více času na práci těch částech systému, které sdílet nemůžeme.
Nejedná se samozřejmě o finální řešení. Cílem ReactOSu je i nadále vlastní, plně kompatibilní ovladač win32 subsystému. Arwinss by ale mohla znamenat přechod do stádia beta daleko dřív, než by to bylo možné s trunkem (na kterém se bude moci mezitím v klidu pracovat).

Na závěr bych ještě rád zmínil práci Stefana Ginsberga, kterou odvedl na podpoře debuggování (kdcom a kdbg) a neustále trvající proces přidání podpory pro MS Visual Studio, aby nebylo nutné se spoléhat jen na GCC (většina úprav - kjk::hyperion).
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Re: Novinky a zajímavosti

Post by preston »

preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Re: Novinky a zajímavosti

Post by preston »

tak jsme se nakonec dočkali http://www.reactos.org/en/news_page_70.html
Locked

Who is online

Users browsing this forum: No registered users and 6 guests