Novinky a zajímavosti

Moderators: preston, navaraf

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

Novinky a zajímavosti

Post by preston »

Jelikož poslední dobou pozoruji výpadky oficiálních newslettrů a protože každý nemá čas tenhle projekt sledovat dennodenně, rozhodl jsem se uvádět zde novinky a různé zajímavosti, které přijdou na přetřes v mailing listech, na IRC ReactOSu ale i zde na fóru. Mým cílem je, aby i příležitosný návštěvník mohl rychle zjistit, co se změnilo a co se zrovna děje.
Last edited by preston on Tue Jul 31, 2007 4:43 pm, edited 1 time in total.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Post by preston »

Verze 0.3.3 bude branchnuta v několika příštích dnech. Všechny release-blockery byly odstraněny a zůstává už jen jeden, způsobující špatné vykreslování ikon, ten ale bude pro branch dočasně opraven. K uvolnění nové verze by mělo dojít v příštím týdnu.

Verze 0.3.2 byla právě kvůli mnoha problémům (nefunkční VM Ware ovladač videa, nefunkční npfs, nefunkční síť atd.) přeskočena, aby se neopakovala situace s verzí 0.3.1, jejíž vydání se zbytečně protahovalo.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

0.3.3 RC1

Post by preston »

Včera byla uvolněna ke stažení nová verze 0.3.3 RC1. Prosím věnujte pozornost faktu, že se jedná stále o RC a ne finální verzi, která bude uvolněna během několika dnů.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Post by preston »

Tohle sice není novinka, ale přesto - pokud jste tak ještě neučinili, zúčastněte se ankety o podobu loga ReactX (implementace DirectX pro ReactOS).

Návrhy: http://www.reactos.org/wiki/index.php/ReactX
Anketa: http://www.reactos.org/forum/viewtopic.php?t=4068
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Post by preston »

Dnes byla uvedena do provozu nová verze redakčního systému RosCMS v3. Zároveň byla do databáze přidána čeština, takže dnešním dnem zahajuji práce na překladu stránek.

Včera se také konečne podařilo restartovat server na kterém běží buildmaster, takže nové SVN buildy jsou opět k dispozici.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Post by preston »

Včera byla rebranchnuta verze 0.3.3 a tentokrát by se již mělo jednat o finální verzi a ne o další RC. Bohužel v trunku teď probíhají velké změny v GDI a win32k subsytému, které působí značné potíže se stabilitou. Tyto změny budou buď dotaženy do konce a přidány pozdeji, nebo budou pro finální verzi odstraněny.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Post by preston »

V tichosti a proti očekávání vyšla další v pořadí druhá RC verze. Aktuálně tedy můžete stahovat ReactOS 0.3.3 RC2.

Včera byl také konečně znovu uveden do chodu Buildslave, který kompiluje debug buildy. Buildslave má momentálně k dispozici 8 jader (osazen dvěma čtyřjádrovými Xeony) a 8 GB RAM. Zkompilování bootcd nyní trvá cca 5 minut (pro srovnání na Athlonu 64 3000+ s 1 GB RAM to trvá zhruba 25 minut).

Pokud by někoho zajímalo, co se děje momentálně v trunku, tak bych chtěl jenom zmínit velké změny ve win32k subsystému. Zjednodušeně řečeno se vývojáři nyní snaži, aby mohli částečně sdílet paměť mezi kernel modem a user modem a ušetřit si tak zbytečné context switche, což bude mít za následek zrychlení systému.

Příjemnou novinkou je také to, že Wine má nyní Direct3D postavený na WGL a nikoliv GLX, takže bychom se měli v dohledné době dočkat alespoň základní podpory DirectX8 v ReactOSu.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Post by preston »

Dnes vyšla finální verze 0.3.3. Můžete se podívat na screenshoty nebo changelog.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Post by preston »

Dočasně jsem pozastavil práce na překladu webu ReactOSu, protože velká část stránek obsahovala neaktuální a nepřesné informace. V současné době probíhá úprava anglické verze. Jakmile bude dokončena, budu v překládání pokračovat.

Kdo v poslední době zkoušel SVN buildy mohl narazit na to, že trunk má více potíží než v minulosti. Jde hlavně o problémy způsobené změnami ve win32k subsystému, potížemi s VGA ovladačem a opravami kernelu (snaha odstranit vývojáři nenáviděnou debug hlášku "Leaking x handles!"). Bohužel zejména snaha o správnou implementaci win32k, gdi a user32 odkrývá řadu chyb a hacků, které byly dosud přehlíženy, protože "to fungovalo". Přesto se jedná o krok správným směrem a do budoucna se můžeme tešit napřiklad i na korektní fungování OpenGL (např. implementace ICD je nyní nejen kompletně hacknutá, ale hlavně nefunkční).

Pokud by někdo chtěl sledovat změny ve win32k, zaměřte se na commity vývojářů "jimtabor","tkreuzer" a "greatlrd". Na kernelu pracuje vedoucí projektu ReactOS - "fireball".
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Post by preston »

Dnes byla do repoziátře přídána česká klávesnice. Je to klasická QWERTY s přístupem k "anglickým" znakům přes pravý alt. QWERTY jsem zvolil jednoduše proto, že ji používám na svém PC. O QWERTZ kvůli nedostatku času neuvažuji, takže je to na vás. Českou klávesnici můžete vybrat ve 1st stage setupu.

Po dlouhých měsících ne-li letech se také konečně podařilo opravit podporu SSE. Chyba nebyla v chybějící implementaci trap handleru pro SIMD výjimky (ten byl nedávno přidán), jak se předpokládálo, ale v tom, že během aplikování masky na MXCSR registr došlo k jeho vymazání. To mělo za následek, že všechny SIMD výjikmy byly nemaskované a tudíž způsobovaly výjimku STATUS_FLOAT_MULTIPLE_FAULTS a pád aplikace, která s touto výjimkou nepočítala. Pro ty, které by to zajímalo, jedná se o bug 2748.

Dále byly vytvořeny dvě nové větve - win32k_stable a reactx. Win32k_stable má sice slibný název, nicméně je branchnuta ze staré revize předtím, než začaly práce na přepsání win32k, gdi a user32. Účelem této větve je pouze umožnit porovnání toho co fungovalo předtím a nyní ne a naopak.
ReactX je větev, na které pracuje GreatLord (M. Olsen). Cílem jeho práce je správná implementace DirectX v rámci win32k&spol (např. přesun DX API z win32k do dxg.sys atp.).

Na závěr bych rád zmínil změny v shell32. Díky heroickému výkonu Johannese Anderwlada (irc&svn nick - janderwald) byla po více než roce shell32 opět synchronizována s Wine. Došlo k mnoha vylepšením a přidána byla např. podpora pro Odpadkový koš. janderwald dále přídal různé dialogy (vlastnosti souborů, odkazů, disků a adresářů) a další funkcionalitu (kterou Wine nepotřebuje a asi ani nikdy neimplementuje), což vyvolalo mezi vývojáři diskuze o tom, zda provést fork této knihovny nebo ne. Obojí má své klady i zápory, nicméně to vypadá, že bez forknutí to nepůjde.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Post by preston »

ReactOS dnes ráno dosáhl kulatých 30 000 revizí. Šťastným výhercem se stal vývojář hpoussin a to rozsáhlou úpravou ovladače i8042prt.

Co se týče shell32.dll, tak tato knihovna byla definitivně forknuta a bude se nadále vyvíjet nezávisle na projektu Wine. Přidána byla podpora pro shell extensions (např. dialog "Otevřít v programu...", kontextová menu apod.).

A na závěr jen poznámka o nejdůležitější součásti ReactOSu (tedy hned po solitairu). Bylo rozhodnuto ponechat jen dva screensavery. Jeden používající GDI a jeden OpenGL. Zbytek byl přesunut do rosapps, takže nebude v SVN sestaveních.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Post by preston »

Minulý týden jsem spolu s Magnusem Olsenem (GreatLord) importoval knihovnu Mesa3D, a to ve verzi 7.0.1. Mesa3D slouží k softwarovému vykreslování OpenGL v případě, že není přítomný ovladač pro hw akceleraci. Bohužel v novějších verzí přestalo být podporváno ICD (Installable Client Driver), takže bylo nutné provést několik zásahů, aby bylo vůbec možné knihovnu zkompilovat.

Po několika úpravách opengl32.dll (o které se postaral Thomas Bluemel -w3seek) - např. zabezpečit aby načítání ICD rozhrání bylo thread-safe nebo oprava funkce wglDeleteContext - je nyní možné spustit v trunku např. Quake III Arena apod.

V současné době se pracuje na přidání zbylých OpenGL 2.1 API, aby bylo možné v trunku konečně používat wined3d (wrapper pro DirectX kolem OpenGL). Zatím je to možné jenom pokud jsou některé funkce hacknuty, aby nepoužívaly tato API.

Pokud by někdo chtěl zkoušet opengl v trunku, tak je tu ještě jedna poznámka. Mesa3D nepracuje správně pokud je zkompilována s podporou SSE. Podpora pro XMMI výjimky (kernel trap handler je funkční a i mxcsr registr je nastaven správně) je sice v pořádku, ale tentokrát to jsou exception filtry, které zlobí. Takže pokud nechcete při testování opengl aplikací skončit s STATUS_FLOAT_MULTIPLE_TRAPS, zkompilujte mesu3d bez podpory SSE.

Na závěr poté odkaz na příspěvek do trunku od Alexe Ionescu, který se zřejmě zapíše do dějin jako nejdelší commit zpráva. Díky jeho změnám bylo dosaženo výrazného zlepšení stability kernelu a mnoho aplikací začlo konečně správně pracovat. Podívejte se na revizi 30401.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Post by preston »

I v předvánočním shonu si vývojáři dokáží najít čas na ReactOS, a tak se v trunku odehrálo za posledních pár týdnů mnoho zajímavých změn.

Zejména se jedná o usilí vedoucího projektu Alekseye Bragina (nick Fireball), který stále pracuje na Configuration Manageru (Cm). Změn je příliš mnoho, něž aby se daly všechny komentovat. Kdo má zájem, může se podívat na CIA.vc - Fireball.

James Tabor (nick jimtabor) stále pracuje na dokončení sdílení paměti mezi win32k a gdi/user32. Pro zajímavost GDI díky Jamesove úsilí konečně používá batching, takže si nyní můžeme užívat vyšší rychlosti vykreslování GUI.

Dále byla opravena drobná chyba, která znemožňovala správnou funkci exception filtrů. Díky tomu je teď v trunku funkční podpora OpenGL.

Společně s Magnusem Olsenem (nick GreatLord) jsme dokončili (alespoň papírovou) podporu pro Opengl 2.1, ale většina *EXT a *ARB funkcí jsou pouhé stuby - tj. vlastně jen "prototypy", které ve většině případů pouze vrací chybu (FALSE, NULL...). Nicméně i to stačí, aby bylo možné používat v trunku wined3d pouze s jednou drobnou úpravou. Kdo má tedy čas a náladu, nechť si vyzkouší "podporu" DirectX8/9.

Nakonec bych zmínil vydání nového RosBE (ReactOS Building Environment). Verze 1.1 přináší opravu několika nepříjemných chyb a také zkrácení kompilovacího času. Stahujte ze stránek Sourceforge.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Post by preston »

Po sérii problémů (nefunkční myš/klávesnice v qemu, pád při druhé části instalace, nefunkční MSI, upgrade WIDL atd) se konečně podařilo dostat trunk do stavu, kdy je možné uvolnit další verzi - tj. 0.3.4. Té bychom se měli dočkat během příštího týdne.
preston
Developer
Posts: 272
Joined: Wed Sep 27, 2006 8:19 pm
Location: Prague, Czech Republic

Post by preston »

Dnes ráno byla uvolněna nová verze operačního systému ReactOS, a to 0.3.4. Ke stažení jsou jako vždy připraveny instalační disk, live verze, předinstalované balíčky pro VMware a qemu, debug verze a zabalený zdrojový kód.

Oficiální zpráva shrnuje to nejdůležitější, co se událo od poslední verze. Jedná se o kompletní přepsání Cm (Configuration manager - část jádra, která se stará o práci s registry), plnohodnotnou podporu pro SSE/SSE2, vylepšení shell32 (koš, shell extensions, ...), sdílení paměti mezi win32k a user mode protějšky (gdi32, user32), updatovaný WIDL, nové aplety pro ovládací panely, překlady a další vylepšení. Kompletní seznam změn lze nalézt v oficiálním changelogu pro verzi 0.3.4.

Na závěr jako vždy upozornění. Přestože vývojáři odvádějí dobrou práci a ReactOS se stává více stabilní, stále je ve fázi alfa. Pokud si chcete ReactOS vyzkoušet, použijte raději virtuální stroj než skutečný HW.
Locked

Who is online

Users browsing this forum: No registered users and 5 guests