XSzybko
Magazyn | |
---|---|
Napisane w | C |
Licencja | Powszechna Licencja Publiczna GNU |
Strona internetowa | xfast.wiki.sourceforge.net |
XFast to lekkie środowisko graficzne , które zawiera menedżera wyświetlania i menedżera okien w ramach tego samego procesu. Jest przenośny i działa na wielu urządzeniach (urządzenia wbudowane, komputery przenośne, dekodery, ...). Tutaj komunikacja między warstwą serwerową a warstwą desktopową może odbywać się w klasyczny sposób za pośrednictwem protokołu TCP/IP, ale w zależności od konfiguracji i systemu docelowego może odbywać się również za pośrednictwem pamięci współdzielonej.
Celem projektu XFast jest posiadanie bardzo smukłego i szybkiego środowiska graficznego, które zawiera oba elementy w ramach tego samego projektu: zamiennik X-serwera zapewniający dostęp do sprzętu graficznego oraz warstwę podobną do WindowManager, która oferuje elementy interfejsu użytkownika dla aplikacji i zarządzanie pulpitem.
Systemy docelowe dla XFast to (nie tylko) systemy wbudowane o niskich zasobach, gdzie ważne jest, aby mieć dostępny interfejs użytkownika z krótkimi czasami ładowania i niskim zużyciem pamięci. Obecnie działa na systemach Linux , Windows , PlayStation , GP2X i innych.
środowisku systemu okienkowego XFast obsługiwane są aplikacje GTK i Simple DirectMedia Layer , więc nie ma potrzeby ich ponownego pisania. Aby z nich korzystać, wymagane są specjalne, załatane wersje GTK i SDL, powiązane skrypty łatek i kompilacji są częścią pakietu XFast. Oprócz tego XFast oferuje własną widżetów GUI , której można używać do pisania natywnych aplikacji dla tego systemu okienkowego.
XFast jest darmowym oprogramowaniem na licencji GPL .
Historia
XFast to rozwidlenie i dalszy rozwój systemu okienkowego Xynth . Został odgałęziony od pierwotnego projektu, aby dodać do środowiska daleko idące modyfikacje, które nie są zgodne z ideą pierwotnego projektu. Celem tego rozwidlenia jest posiadanie bardziej kompatybilnej bazy źródłowej zarówno dla systemów wbudowanych niskiego poziomu , jak i systemów stacjonarnych z większymi zasobami sprzętowymi.
Podobnie jak Xynth nie jest implementacją protokołu X11.
Cechy
- UDS (gniazdo domeny systemu Unix) dla IPC
- DMA (Direct Memory Access) dla każdej powierzchni okna klienta
- nakładające się okno klienta - zarządzanie serwerem
- Ruch w 8 kierunkach, zmiana rozmiaru
- obsługa podłączania motywów w czasie wykonywania
- renderer obrazu dla xpm, png i gif
- czcionki antyaliasingowe z biblioteką freetype.
- niezależna od urządzenia podstawowa biblioteka graficzna niskiego poziomu
rgbcolor, colorrgb, setpixel, getpixel, hline, vline, fillbox, putbox, putboxmask, getbox, putboxpart,
putboxpartmask, copybox, getsurface, setsurfacevirtual, setsurface
- umiejętność rysowania nakładek
rgbcolor_o, colorrgb_o, setpixel_o, getpixel_o, hline_o, vline_o, fillbox_o, putbox_o, putboxmask_o,
getbox_o, putboxpart_o, putboxpartmask_o, copybox_o, getsurface_o, setsurfacevirtual_o, setsurface_o
- renderowanie podwójnego bufora zapobiegające migotaniu
- klawiatura, mysz, sterowniki ekranu dotykowego
- obsługa zdalnego pulpitu
- wbudowany menedżer okien
- niskie zużycie pamięci i procesora oraz ślad
- w trybie 1024x768 32 bity z 253 klientami zużycie pamięci wynosi ~2,5M
- statycznie połączony plik binarny to <125K