llll  
ll  

Co to jest Qtemdbedded

W ostatnich miesiącach (lipiec 2000r.) w wielu miejscach pojawiała się informacja o pracach nad nową biblioteką norweskiej firmy Troll Tech o nazwie "Qt emdbedded" co tłumaczyć będziemy dalej jako Qt osadzone (QtE). Kilka razy wiadomość oceniono jako sensację. Niestety, Qt osadzone nie wyeliminuje z naszych stacjonarnych PC-tów pamięciożerny X Window System.

QtE ma być ofertą dla tych firm, które zajmują się produkcją niewielkich gabarytowo urządzeń z zainstalowanym na stałe (ROM) systemem operacyjnym Linux. Takimi urządzeniami mogą być palmtopy, elektroniczne urządzenia pomiarowe, piloty sterujące złożonymi zestawami urządzeń itp. Mogą to być nie tylko urządzenia przenośne ale też np: moduły sterujące (wyposażone w kompletny system operacyjny) stanowiące część sterowni nadzorującej przebieg procesu technologicznego.

Firmy, które specjalizują się w dostarczaniu do takich urządzeń kompletnych systemów operacyjnych często wybierają Linuksa. O takim wyborze decydują następujące zalety Linuksa:

  • niski koszt
  • niezawodność
  • niewielkie wymagania pamięciowe
  • bezpieczeństwo
  • dostępność całego kodu źródłowego
  • duża popularność
  • wielozadaniowość
  • wielowątkowość
  • biblioteki współdzielone
  • zgodność z standardem POSIX
  • protokoły TCP/IP

Te firmy, które wybrały do takich celów Linuksa, są również zainteresowane bibliotekami GUI. Do takich firm jest skierowana najnowsza oferta firmy Troll Tech. Biblioteka QtE umożliwi zbudowania atrakcyjnego i nowoczesnego graficznego interfejsu użytkownika.

Klasyczne Qt korzysta z pośrednictwa X Window System, którego dużą część stanowi biblioteka xlib. Potężnym fragmentem kodu jest także kod X Serwera. W urządzeniach przenośnych pamięć jest bardzo cenna. Stąd też w QtE zrezygnowano z X Window System. QtE operuje bezpośrednio na pamięci, w której przechowuje się obraz (ang.frame buffer -bufor ramki).

Z tego faktu wynikają wady i zalety. Zaletą jest to, że dla aplikacji użytkownika pozostaje do dyspozycji więcej pamięci. Wadą jest to, że nawet najprostsze operacje graficzne muszą być wykonywane programowo. Rezygnując z X Window System (a więc i z X Serwera) pozbawia się dobrodziejstw jakie płyną z wykonywania nawet złożonych operacji graficznych przez układy scalone znajdujące się na karcie graficznej. Takie konsekwencje zapewne byłyby nie do zniesienia dla właścicieli stacjonarnych PC-tów ale w urządzeniach przenośnych nie są one dokuczliwe.

W urządzeniach przenośnych system operacyjny wraz niezbędnymi bibliotekami, aplikacjami umieszcza się w pamięci ROM. Ze względu na koszty ważne są wymagania pamięciowe zamieszczonego tam oprogramowania. Linuksa można tak skonfigurować, że będzie potrzebował ok. 2MB pamięci. Całe QtE wymaga 5MB z tym, że jego wymagania pamięciowe można ograniczyć. Po usunięciu zbędnych klas takich jak np: okienka dialogowe wybierające pliki czy okienka dialogowe wybierające kolor itd. po usunięciu aplikacji "drag and drop" i innych podobnych rzeczy wymagania pamięciowe można ograniczyć do 770 kB ROM( x86). Przewiduje się, że w miarę doskonalenia bibliotek rozmiar pamięci niezbędnej do przechowywania minimalnej wersji QtE będzie malała. Przeciętna wielkość takiej pamięci to 2 MB. Do tego należy dodać pewną ilość pamięci na czcionki i ikony. W sumie to daje ok.4 MB pamięci ze standardowych obecnie 8MB. Pozostałe 4MB pozostaje do dyspozycji użytkownika.

QtE posiada identyczny interfejs programisty jak w wersjach Qt pracujących w systemach Windows i X Window System. Oznacza to, że programy napisane za pomocą Qt można przenosić nie tylko między systemami Windows i Linux ale i również do tych urządzeń przenośnych, w których zainstalowano system Linux wraz z bilblioteką QtE. Stąd też za pomocą standardowych narzędzi będzie można pisać programy w systemie Windows czy Linux a następnie jego kod binarny przenieść do urządzenia przenośnego.

Ponieważ QtE jest przede wszystkim propozycją skierowaną do firm, to nie będzie ona prawdopodobnie opublikowana na zasadach Open Source. QtE w wersji beta została zaprezentowana 22 czerwca na konferencji w San Jose(USA) i 29 czerwca w Niemczech (Stuttgart) na pokazach LinuxTag.

   

Autor : Jerzy Skalski
Data 22.06.2000  

[ DO GÓRY]

 
ll
 
 
   
  kde.com.pl