gpe-logo.png

Der kleine Schreibtisch

GPE - G-PDA-Environment

01.06.2003
Das GPE-Projekt möchte eine Desktop-Umgebung für Linux PDAs schaffen. Es richtet sich dabei an Anwender und Entwickler. Dabei liegt besonderes Augenmerk auf Kompatibilität und Konformität mit aktuellen offenen Standards. Wir zeigen, was Anwender davon erwarten können.

Auch wenn Linux auf PDAs mittlerweile nichts Ungewöhnliches mehr ist, ist es dennoch nicht ganz mit dem "normalen" Linux vergleichbar. Die Möglichkeiten, die ein Standard-PC oder Server bieten, hat ein kleiner PDA eben nicht. Der Speicher ist beschränkt, in allen Kategorien wie RAM und Festplatte. Die Anzeige hat nur eine geringe Auflösung, und die Eingabemöglichkeiten sind meist auf wenige Tasten und einen Stift mit Touchscreen reduziert. Es liegt nahe, dass solche Systeme besonders angepasster Software bedürfen.

Das GPE-Projekt [1] setzt sich genau dies zum Ziel, nämlich eine Umgebung zu schaffen, die auf Einschränkungen eines PDAs Rücksicht nimmt und gleichzeitig den Bedürfnissen des Benutzers entgegen kommt. Das Projekt richtet sich dabei gleichermaßen an Anwender und Entwickler: Die Anwender sollen ein Software-System erhalten, das ihren Bedürfnissen entspricht und echten Nutzen bringt. Den Entwicklern soll ein konsistentes System an die Hand gegeben werden, mit dem die Software-Entwicklung so einfach wie möglich ist.

Bottom-Up – Von Grund auf

Bei den Grundlagen von GPE hat man sich für gängige Standards entschieden. Dies erleichtert Entwicklern und Anwendern den Einstieg, da sie bekannte Prinzipien und Funktionalitäten vorfinden. Nach einigen Diskussionen und auch Evaluationen wird als Basis für die grafische Oberfläche X11, genauer gesagt XFree86 [2], eingesetzt. Der "kdrive"- oder auch "TinyX"- X-Server erwies sich als erstaunlich schlank und dennoch leistungsstark.

Durch die intensive Arbeit des XFree86-Teams, insbesondere von Keith Packard und Jim Gettys, wurden der X-Server und die benötigten Bibliotheken von Altlasten befreit und kräftig aufgeräumt. Das Resultat ist ein leistungsfähiger Grafik-Server mit TrueType-Font-Unterstützung, der sehr gut auf Embedded-Systemen eingesetzt werden kann. Mit XFree86 einhergehend wurde natürlich die Netzwerktransparenz der gesamten Oberfläche – praktisch als Dreingabe – mitgenommen. Dies eröffnet völlig neue Möglichkeiten in der Verwendung von PDAs.

Als Toolkit und Widget Set entschied man sich für GTK+ [3]. Seinerzeit noch in der Version 1.2 bot GTK+ einen performanten Ansatz zur Erstellung von X11-Applikationen. Durch die Verbreitung von GTK+, nicht zuletzt durch GIMP und das GNOME-Projekt, ist GTK+ zu einem De-Facto-Standard avanciert. Mittlerweile ist die Umstellung von GTK+ 1.2 aus GTK+ 2.2 erfolgt.

Durch diese Umstellung kamen allerhand neue und wertvolle Funktionen hinzu. Dazu zählt neben deutlich verbesserter Schriftdarstellung (Stichwort Anti-Aliasing) auch wesentlich flexiblerer Schriftsatz. Dies ermöglicht die spätere Anpassung an Sprachräume mit anderer Schriftdarstellung, man denke beispielsweise an Arabisch, Hebräisch oder die diversen asiatischen Sprachen.

Eine weitere wichtige Grundlage ist neben der grafischen Ausgabe die Datenspeicherung. PDAs besitzen zumeist nur vergleichsweise kleine dauerhafte Speicher, darüber hinaus meist als Flash-Speicher. Dieser Speicher kann, im Gegensatz zu Festplatten oder RAM, nur begrenzt oft gelöscht und wiederbeschrieben werden.

Die Applikationen eines PDAs müssen unbedingt darauf Rücksicht nehmen und die Anzahl und Größe der Schreibzugriffe minimieren. Daher verwenden diejenigen GPE-Applikationen, bei denen es wirklich Sinn hat, die relationale Datenbank SQLite [4].

Der Einsatz einer SQL-Datenbank zur Datenspeicherung bringt diverse Vorteile: Im Fall von SQLite erfolgt die Speicherung in einer effizienten B-Tree-Struktur. Dadurch werden unter anderem bei Veränderung von Daten nur kleine Datenmengen in den Speicher geschrieben. Außerdem ist die Verwaltung von Datenbeständen für die Applikationen wesentlich einfacher.

Die SQL-Datenbank übernimmt alle komplexen Operationen; diese müssen nicht in jeder Applikation aufs Neue implementiert werden. Zuguterletzt ermöglicht diese Trennung von Applikationslogik und Datenspeicherung, dass die Datenspeichermethode, hier SQLite, zu einem späteren Zeitpunkt ohne großen Aufwand ausgetauscht werden kann.

Als letzte Grundsatzentscheidung hat man sich entschlossen, das Multi-User-Konzept von Linux auf dem PDA weiter zu führen. Dies führt zu dem anfänglich etwas eigentümlichen, doch später sicherlich geschätzten Login (Abbildung 1).

Abbildung 1: Login unter GPE

Die meisten PDAs werden früher oder später wertvolle private Informationen enthalten. Um diese vor unbefugtem Zugriff zu schützen oder auch einmal gefahrlos einem "Gast" seinen PDA anvertrauen zu können, kann über den Login einfach ein anderer Benutzer angemeldet werden. Jeder Benutzer kann dabei sein eigenes Profil und eigene Einstellungen erstellen, ganz so wie beim großen Linux.

Los geht's!

Nach erfolgreichem Login wird die benutzerspezifische Umgebung gestartet. Wichtigster Bestandteil ist hier der Window Manager Matchbox [5]. Dieser maximiert die Fenster der Applikationen stets auf die volle Bildschirmgröße – fast voll, denn ein Statusbalken am unteren Bildschirmrand sowie eine Kopfzeile werden automatisch frei gehalten (Abbildung 2).

Dieses Verhalten sorgt auch dafür, dass Applikationsfenster nicht größer als der darstellbare Bereich sein können und dürfen. Ein Hin- und Herziehen von Fenstern wird dadurch vermieden, da es ohnehin auf einem PDA wenig Sinn hätte. Neben dem Window Manager werden ein Programm zur Verwaltung des unteren Statusbalkens sowie ein Desktop Manager gestartet.

Abbildung 2: So präsentiert sich der GPE-Desktop

Der Desktop Manager präsentiert dem Benutzer eine geordnete grafische Auswahl der installierten Applikationen und ermöglicht deren Start durch einfaches Anklicken. Um Verwirrung zu vermeiden, können die meisten Programme, ebenfalls vom Desktop Manager gesteuert, nur einmal gestartet werden. Versucht der Benutzer, eine Applikation, die bereits läuft, erneut zu starten, schaltet dieser einfach zu der laufenden Anwendung um.

Diese und weitere Funktionen des Window und Desktop Managers basieren auf offenen und freien Standards des Freedesktop-Projektes [6].

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

Kommentare

Infos zur Publikation

title_2014_09

Digitale Ausgabe: Preis € 5,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Schnell Multi-Boot-Medien mit MultiCD erstellen
Schnell Multi-Boot-Medien mit MultiCD erstellen
Tim Schürmann, 24.06.2014 12:40, 0 Kommentare

Wer mehrere nützliche Live-Systeme auf eine DVD brennen möchte, kommt mit den Startmedienerstellern der Distributionen nicht besonders weit: Diese ...

Aktuelle Fragen

Videoüberwachung mit Zoneminder
Heinz Becker, 10.08.2014 17:57, 0 Antworten
Hallo, ich habe den ZONEMINDER erfolgreich installiert. Das Bild erscheint jedoch nicht,...
internes Wlan und USB-Wlan-Srick
Gerhard Blobner, 04.08.2014 15:20, 2 Antworten
Hallo Linux-Forum: ich bin ein neuer Linux-User (ca. 25 Jahre Windows) und bin von WIN 8 auf Mint...
Server antwortet mit falschem Namen
oin notna, 21.07.2014 19:13, 1 Antworten
Hallo liebe Community, Ich habe mit Apache einen Server aufgesetzt. Soweit, so gut. Im Heimnet...
o2 surfstick software für ubuntu?
daniel soltek, 15.07.2014 18:27, 1 Antworten
hallo zusammen, habe mir einen o2 surfstick huawei bestellt und gerade festgestellt, das der nic...
Öhm - wozu Benutzername, wenn man dann hier mit Klarnamen angezeigt wird?
Thomas Kallay, 03.07.2014 20:30, 1 Antworten
Hallo Team von Linux-Community, kleine Zwischenfrage: warum muß man beim Registrieren einen Us...