当前位置:文档之家› ahoefer

ahoefer

ahoefer
ahoefer

Fachhochschule Karlsruhe–Hochschule für Technik

Fachbereich Informatik

Diplomarbeit Serverdienste auf Handheld-Ger?ten

STZ-IDA

Moltkestra?e30

76133Karlsruhe

Andreas H?fer

Augustastra?e5

76137Karlsruhe

E-Mail:sevenwords@web.de

Matrikelnummer:8680

Betreuer:Dipl.-Inf.(FH)Andreas Junghans

Referent:Prof.Dipl.-Inf.Klaus Gremminger

Korreferent:Prof.Dr.rer.nat.Lothar Gmeiner

Beginn:1.Oktober2002

Ende:31.Januar2003

ii Andreas H?fer

EIDESSTATTLICHE ERKL?RUNG Eidesstattliche Erkl?rung

Hiermit erkl?re ich an Eides statt,dass ich die vorliegende Arbeit selbst?ndig und ohne fremde Hilfe verfasst habe und keine anderen als die angegebenen Hilfsmittel verwendet habe.Die Arbeit wurde in gleicher oder?hnlicher Form keiner anderen Prüfungsbeh?rde zur Erlangung eines akademischen Grades vorgelegt.

Karlsruhe,den4.Februar2003

Andreas H?fer

Serverdienste auf Handheld-Ger?ten iii

ZUSAMMENFASSUNG

Zusammenfassung

Mobile Ger?te,besonders Handheld-Ger?te,werden in der Industrie immer h?u?ger genutzt.Die Handheld-Ger?te werden jedoch meistens als Thin-Clients eingesetzt,d.h.sie sind nur einfache Ein-und Ausgabeger?te.Die Datenhaltung und Verarbeitungslogik be?nden sich dagegen auf dem Server.

In dieser Diplomarbeit wird ein anderer Ansatz verfolgt.Es wird untersucht,ob es m?glich ist,Datenhaltung und Verarbeitungslogik auf dem Handheld-Ger?t unterzubringen und den PC mit seinem vergleichsweise gro?en Bildschirm zur Ein-und Ausgabe zu nutzen.Insgesamt sollen auf dem…mobilen Server”eine Datenbank und ein Web-Server mit Servlet-und JSP-Engine untergebracht werden.Zudem wird eine bestehende komplexe Web-Anwendung auf dem Handheld-Ger?t installiert.

Um dieses Ziel zu erreichen,werden verschiedene Betriebssysteme auf ihre Eignung als Ba-sis für einen…mobilen Server”untersucht.Für die Datenhaltung werden verschiedene SQL-Datenbanken evaluiert.Als eigentlicher Web-Server wird Tomcat auf dem Handheld-Ger?t in-stalliert.Mit Hilfe der Web-Anwendung wird die Leistungsf?higkeit des…mobilen Servers”ge-testet.

iv Andreas H?fer

ABSTRACT Abstract

Mobile devices,especially handhelds,are more and more often utilized in the industry.Yet most of the time these handhelds are used as thin-clients,that is to say they are just simple devices for input and output.However,data storage and processing logic are found on the server.

In this thesis a different approach is pursued.It is examined whether it is possible to place data storage and processing logic on a handheld and to use the PC with its comparatively huge screen for input and output.All in all a data base and a web server with a Servlet-and a JSP-engine are to be accommodated on the…mobile server”.Furthermore an existing complex web application is installed on the handheld.

In order to achieve this goal,different operating systems are examined for their suitability as basis for a…mobile server”.For the data storage different SQL data bases are evaluated.As the actual web server,Tomcat is installed on the handheld.Via the web application the ef?ciency of the…mobile server”is tested.

Serverdienste auf Handheld-Ger?ten v

INHALTSVERZEICHNIS

Inhaltsverzeichnis

Abbildungsverzeichnis vii Tabellenverzeichnis viii Quelltextverzeichnis ix 1Einleitung1

1.1Typogra?sche Konventionen (1)

1.2Themenstellung (1)

1.3Das STZ-IDA Karlsruhe (2)

1.4Der BusinessInformer (3)

2Betriebssysteme5

2.1Microsoft Pocket PC2002 (5)

2.1.1Microsoft Active Sync3.5 (7)

2.2SavaJe OS1.1.0 (8)

2.2.1Installation von SavaJe OS1.1.0 (9)

2.2.2Evaluierung von SavaJe OS1.1.0 (9)

2.2.3Gründe des Ausscheidens von SavaJe OS1.1.0 (11)

2.3Linux (13)

3Die Systemkomponenten15

3.1übersicht (15)

3.2BootBlaster und BootLoader installieren (16)

3.3Familiar Linux (17)

3.3.1Familiar Linux v0.5.2installieren (18)

vi Andreas H?fer

INHALTSVERZEICHNIS

3.3.2Familiar Linux v0.5.3Upgrade (21)

3.3.3Familiar Linux v0.5.3in der Anwendung (22)

3.3.4Pocket PC2002wiederherstellen (24)

3.3.5Familiar Linux v0.6.0Installation (24)

3.4Blackdown J2RE1.3.1und Jikes (27)

3.4.1Installation der Blackdown J2RE1.3.1 (28)

3.4.2Installation von Jikes (28)

3.5Installation der Datenbanken (28)

3.5.1HSQLDB1.7.1installieren (29)

3.5.2MySQL3.22.32und3.23.53installieren (30)

3.6Tomcat (32)

3.7BusinessInformer (32)

3.7.1Einrichten der Datenbanken (33)

3.8Verwenden von Jikes als Java-Compiler (37)

3.9WLAN (38)

4Cross-Kompilierung41

4.1Einführende Erl?uterungen (41)

4.2ToolChain (41)

4.3Cross-Kompilierung von MySQL3.23.53 (42)

4.3.1Das con?gure-Skript (43)

4.3.2Das make-Programm (48)

4.3.3Das make-Programm mit dem Argument install (50)

4.4Erneutesübersetzen von MySQL3.23.53 (51)

4.5Cross-Kompilierung von Jikes1.18 (52)

4.6Zweite Cross-Kompilierung von Jikes1.18 (53)

Serverdienste auf Handheld-Ger?ten vii

INHALTSVERZEICHNIS

5Performance55

5.1Allgemeine Hinweise (55)

5.2Speicherbelastungstest (55)

5.3MySQL3.23.53auf PC und iPAQ (57)

5.4Vergleich der Compiler-Performance (58)

5.5V orkompilierte vs.unkompilierte JSPs (59)

6Fazit und Ausblick61 Anhang65

A Quelltexte (65)

A.1/etc/pro?le (65)

A.2xCompileEnv Shell-Skript (65)

A.3rexechelper Shell-Skript (67)

A.4remexec Shell-Skript (67)

Quellen-und Literaturverzeichnis71 viii Andreas H?fer

ABBILDUNGSVERZEICHNIS Abbildungsverzeichnis

1Microsoft Active Sync3.5 (7)

2SavaJe Benutzerober??che (10)

3Schichtenmodell der Systemarchitektur (15)

4übertragung des Wurzel-Dateisystems mittels Hyperterminal (18)

5Hyperterminal w?hrend des Schreibens des Flash ROMs auf dem iPAQ (19)

6OPIE Benutzerober??che (26)

7GPE Firestarter0.0Benutzerober??che (27)

8Zeit bis zum Anzeigen der Seite index.jsp (56)

93-Schichten-Architektur (61)

Serverdienste auf Handheld-Ger?ten ix

TABELLENVERZEICHNIS

Tabellenverzeichnis

1Java Unterstützung für die Pocket PC-Plattform (6)

2Ge?nderte Datentypen (34)

3Ergebnismenge mit2gefundenen Zeilen (35)

4...Leere”Ergebnismenge (36)

5Einfügen von Datens?tzen mit MySQL3.23.53auf PC und iPAQ (58)

6Geschwindigkeitsvergleich von Blackdown-Compiler und Jikes1.15 (59)

7Geschwindigkeitsvergleich unkompilierter und kompilierter JSPs (60)

x Andreas H?fer

QUELLTEXTVERZEICHNIS Quelltextverzeichnis

1DHCP einschalten (19)

2iPKG Kon?guration (20)

3Ausschnitt aus safe_mysqld (31)

4Ausschnitt aus server.xml(Tomcat4.0.4) (32)

5Ausschnitt aus web.xml(BI) (33)

6Erstellen der Tabelle BNI_Log für MySQL3.23.43 (34)

7Erstellen der Tabelle BNI_Log für HSQLDB1.7.1 (34)

8Ausschnitt aus web.xml(Tomcat4.0.4) (37)

9Ausschnitt aus web.xml(Tomcat4.1.7) (38)

10Kon?guration der WLAN-Karte in der Datei wireless.opts (39)

11Auszug aus dem MySQL3.32.53con?gure-Skript (44)

12Ausschnitt aus Make?le.in (49)

Serverdienste auf Handheld-Ger?ten xi

QUELLTEXTVERZEICHNIS

xii Andreas H?fer

1EINLEITUNG 1Einleitung

1.1Typogra?sche Konventionen

In dieser Arbeit wurden verschiedene Layoutformate und Schriften verwendet,um die Lesbar-keit des Textes zu erh?hen und unterschiedliche Informationen leichter unterscheiden zu k?nnen.

Nachfolgend werden diese an Beispielen erkl?rt:

Codefragmente wie Methodenaufrufe,Variablennamen und Konsolenkommandos werden,eben-so wie Datei-und Ordnernamen,innerhalb des Textes in Schreibmaschinenschrift darge-stellt.

URLs kommen in Fu?noten und in den Literaturverweisen vor und sind ebenfalls in Schreib-maschinenschrift dargestellt.Hinter den URLs be?ndet sich das Datum des letzten Zugriffs auf die Webseite.

L?ngere Codebeispiele sehen in dieser Diplomarbeit wie folgt aus:

1/**

2*Kommentar

3*/

4public int useless(int i){

5return i;//auch ein Kommentar

6}

1.2Themenstellung

Handheld-Ger?te wie beispielsweise die Pocket PC-Plattform werden immer leistungsf?higer und?exibler.Inzwischen sind ARM-CPUs mitüber200MHz und ein Hauptspeicherausbau von32–64MB Standard.Dadurch bieten sich die kleinen mobilen Ger?te mittlerweile für Auf-gaben an,für die zuvor nur wesentlich teurere und unhandlichere Notebooks geeignet waren.

In dieser Arbeit soll evaluiert werden,inwieweit sich Serverdienste auf Handheld-Ger?ten be-treiben lassen,um eine mobile und?exible Plattform für Datenbank-und Webanwendungen zu erhalten.

Der…mobile Server”eignet sich beispielsweise zur Pr?sentation von Anwendungen bei(poten-ziellen)Kunden:Das Ger?t muss lediglich an ein drahtgebundenes oder drahtloses Netzwerk angeschlossen werden,um von einem beliebigen Desktoprechner darauf zugreifen zu k?nnen.

Serverdienste auf Handheld-Ger?ten1

1EINLEITUNG 1.3Das STZ-IDA Karlsruhe

Auch die Of?ine-Arbeit mit Datenbanken bietet sich an,wobei ein mobiler Web-Server die Por-tierung vorhandener Anwendungen erleichtern kann.Im Einzelnen sollen folgende Dienste auf das Handheld-Ger?t gebracht werden:

1.eine SQL-Datenbank,

2.ein Web-Server mit Servlet-Engine(vorzugsweise Tomcat),

3.eine einfache Web-Anwendung zwecks Tests der ersten beiden Punkte,

4.nach M?glichkeit eine vorhandene komplexe Web-Anwendung(BusinessInformer),um

die Einschr?nkungen der mobilen Plattform auszuloten.

Das Hauptaugenmerk dieser Untersuchung soll auf einer sparsamen Nutzung des Hauptspei-chers liegen.Hierfür sollen verschiedene Laufzeitumgebungen(z.B.Windows CE,Linux,Sa-vaJe,...)und Datenbankserver(z.B.MySQL,...)getestet und der…Footprint”bezüglich des Speicherverbrauchs festgestellt werden.Auf Java-Seite soll soviel wie m?glich…abgespeckt”werden,was beispielsweise bei Tomcat aufgrund der Verfügbarkeit des Quellcodes relativ ein-fach ist.Als Hardware-Plattform steht folgendes zur Verfügung:

?Compaq iPAQ H3870mit206MHz ARM-CPU und64MB RAM

?Expansion-Pack mit2PC-Card-Slots

?IBM Microdrive1GB Festplatte im Compact Flash-Format(CF-Format)mit PC-Card-Adapter

?Xircom Ethernet10Netzwerkkarte im CF-Format mit PC-Card-Adapter

1.3Das STZ-IDA Karlsruhe

Das STZ-IDA(Steinbeis Transferzentrum für Industrielle Datenverarbeitung und Automation) ist auf dem Gel?nde der Fachhochschule Karlsruhe angesiedelt.Das STZ-IDA Karlsruhe ist nur ein Transferzentrum von vielen innerhalb der weltweit t?tigen Steinbeis-Stiftung und exis-tiert seit1984.Die Steinbeis-Stiftung selbst wurde im Jahre1971gegründet und verdankt ihren Namen Ferdinand von Steinbeis.Geleitet wird das STZ-IDA Karlsruhe derzeit von Prof.Dipl.-Inf.Klaus Gremminger und besch?ftigt zehn feste Mitarbeiter sowie zwei Diplomanden.

2Andreas H?fer

1.4Der BusinessInformer1EINLEITUNG

Ziel des STZ-IDA Karlsruhe ist der Wissenstransfer,d.h.der Transfer von Wissenüber neue Technologien aus den Lehrinhalten des Fachbereichs Informatik in die Wirtschaft.Im Gegenzug gewinnt man Kenntnisseüber die aktuellen und zukünftigen Anforderungen in der Wirtschaft. In der Praxis geschieht der Wissenstransfer durch die Arbeit von Absolventen und Studenten des Fachbereichs Informatik,in den Projekten und in der Zusammenarbeit mit den Kunden und Partnern.

Diese Diplomarbeit steht nicht im Kontext eines konkreten Projekts,sondern ist eine Forschungs-arbeit mit dem Ziel,die M?glichkeiten der mobilen Plattform auszuloten und auf diesem Gebiet Know-how für zukünftige Projekte des STZ-IDA zu sammeln.

Mehr Informationen zum STZ-IDA Karlsruhe?nden sich unter[33].

1.4Der BusinessInformer

Eines der Projekte des STZ-IDA Karlsruhe ist der BusinessInformer(BI).Beim BI handelt es sich um ein Werkzeug,das es erlaubt,verschiedene Sichten auf eine Datenbank zu erstellen,wo-bei die Sichten untereinander verknüpft sind und auch Diagramme enthalten k?nnen.Betrachtet werden die Sichten im Normalfallüber einen JavaScript-f?higen Browser.

Der technische Unterbau ist mit Hilfe von JSP,XSLT,XML,Taglibs,JavaScript und SQL reali-siert.XML wird u.a.zur Kapselung von SQL-Abfragen an die Datenbank verwendet,wodurch die Abfragen kon?gurierbar sind.Jede Anfrage einer Sicht vom Browser des Clients an den Server beinhaltet eine XSLT-Transformation.Dies ist deshalb von Bedeutung,da eine XSLT-Transformation viel Speicher und Rechenzeit ben?tigt,was sich auf einem mobilen Ger?t mit geringen Ressourcen besonders stark bemerkbar machen k?nnte.

Serverdienste auf Handheld-Ger?ten3

1EINLEITUNG 1.4Der BusinessInformer 4Andreas H?fer

2BETRIEBSSYSTEME 2Betriebssysteme

2.1Microsoft Pocket PC2002

Microsofts Pocket PC2002wird von Compaq als einziges Betriebssystem mit allen iPAQ-Ger?ten ausgeliefert.Bei Pocket PC2002handelt es sich um den Nachfolger von Windows CE3.0.Manchmal wird es f?lschlicherweise als…Windows CE3.5”oder gar…Windows CE 4.0”bezeichnet.In Wirklichkeit basiert Pocket PC2002immer noch auf Windows CE3.0[24]. Es bietet ein an Windows XP angelehntes Look&Feel und beinhaltet zahlreiche Anwendungen wie z.B.Pocket Word und Pocket Excel.Windows CE4.0(Codename Talisker)wurde am7. Januar2001angekündigt und soll demn?chst unter dem Produktnamen Windows https://www.doczj.com/doc/a61071962.html, auf dem Markt erscheinen[21].

Wichtig für diese Diplomarbeit ist vor allem der Fakt,dass Pocket PC2002auf Windows CE 3.0basiert,da es noch keine Java Virtual Machines(JVMs)speziell für das Pocket PC2002 Betriebssystem gibt,man aber praktisch alle JVMs verwenden kann,die unter Windows CE3.0 funktionieren.

Doch trotz des auf diese Weise gegebenen relativ gro?en Angebots an unterschiedlichen JVMs für das Pocket PC2002Betriebssystem,kommen alle diese JVMs für das V orhaben dieser Di-plomarbeit nicht in Frage.Der Grund dafür liegt in den stark eingeschr?nkten Java-Standards, welche von den für Windows CE3.0(beziehungsweise Pocket PC2002)angebotenen JVMs unterstützt werden.Wie man aus Tabelle1ersehen kann,wird von den JVMs,die für Windows CE3.0geeignet sind,lediglich der Java Development Kit(JDK)1.1.8-beziehungsweise der PersonalJava-Standard unterstützt.

Serverdienste auf Handheld-Ger?ten5

2

BETRIEBSSYSTEME

2.1Microsoft Pocket PC 2002

T a b e l l e 1:J a v a U n t e r s t üt z u n g f ür d i e P o c k e t P C -P l a t t f o r m n a c h [4]

6

Andreas H?fer

2.1Microsoft Pocket PC 20022BETRIEBSSYSTEME

Compaq liefert mit dem iPAQ H3870eine Begleit-CD mit Software für alle Ger?te der iPAQ H3800Familie mit.Unter den darauf vorhandenen Anwendungen und Werkzeugen be?ndet sich auch die Jeode-JVM von Insignia.Diese ist zwar geeignet,um beispielsweise im Browser des iPAQs Java-Applets anzuzeigen,aber nicht um Tomcat 4.0.4auszuführen.Tomcat 4.0.4ben?tigt als Mindestvoraussetzung eine Java 2Plattform,Standard Edition (J2SE)der Version 1.2.Aber die Jeode-JVM unterstützt ebenfalls nur den PersonalJava-Standard.

Die PersonalJava Application Environment (PJAE)wurde von Sun entworfen,um Java-Pro-gramme auf eher leistungsschwachen Ger?ten,wie zum Beispiel Smart Phones oder Pocket PCs,ausführen zu k?nnen.Der PersonalJava-Standard basiert in erster Linie auf der JDK 1.1.8-Spezi?kation,einige Pakete entsprechen auch der J2SE 1.2.2Spezi?kation [17].

Da Tomcat 4.0.4allerdings,wie bereits erw?hnt,mindestens ein JDK 1.2ben?tigt,kommt keine der für Windows CE 3.0/Pocket PC 2002angebotenen JVMs für das V orhaben dieser Di-plomarbeit in Frage.Damit kann auch Pocket PC 2002als Betriebssystem-Plattform für diese Diplomarbeit nicht verwendet werden.

Dennoch ist Pocket PC 2002für diese Diplomarbeit von Bedeutung,denn für die Installation der anderen Betriebssysteme fanden sich haupts?chlich Anleitungen,in denen von einem lauff?hi-gen Windows CE /Pocket PC 2002Betriebssystem mit installiertem Active Sync 3.5(ebenfalls aus dem Hause Microsoft)ausgegangen wird.

2.1.1Microsoft Active Sync

3.5

Microsoft Active Sync 3.5war auf der Begleit-CD des iPAQ H3870mit

enthalten,Abbildung 1:Microsoft Active Sync 3.5

jedoch nicht auf dem iPAQ vorinstalliert.Die ei-gentliche Aufgabe von Active Sync 3.5ist es,die Dateien auf dem Pocket PC mit denen auf dem Desktopcomputer oder Notebook zu synchronisie-ren.So lassen sich über Active Sync 3.5der Kalen-der,Favoriten,Word-Dokumente,usw.synchroni-sieren.Zudem l?sst sich festlegen,wann die Syn-chronisation statt?nden soll.

In den Installations-Anleitungen zu den anderen Betriebssystemen wird Active Sync 3.5dazu ge-Serverdienste auf Handheld-Ger?ten

7

2BETRIEBSSYSTEME 2.2SavaJe OS1.1.0

braucht,die Installations-Dateien auf den iPAQ zuübertragen und ein Backup-Image des Pocket PC2002-Betriebssystems auf dem Desktopcomputer zu hinterlegen.Doch dazu in den entspre-chenden Abschnitten2.2.1und3.2,die sich mit der Installation der anderen Betriebssysteme befassen,mehr.

2.2SavaJe OS1.1.0

Bei SavaJe OS1.1.0handelt es sich um ein Betriebssystem,das in dieser Version die iPAQ3600 und3700Familien voll unterstützt,sowie die iPAQ3800Familie mit einigen Einschr?nkungen. Interessant für diese Diplomarbeit wurde SavaJe OS1.1.0vor allem,weil es die komplette Java 2Plattform Standard Edition(J2SE)in der Version1.3.0unterstützt.

Dabei ist die Architektur von SavaJe OS1.1.0von Anfang an darauf ausgelegt worden,als Plattform für Java-Anwendungen zu dienen[19].Es ist zwar auch m?glich Programme in C oder Assembler für SavaJe OS1.1.0zu entwickeln und so direkt auf die Hardware zuzugreifen, doch wird man von SavaJe ausdrücklich dazu aufgefordert,zuerstüber eine Java-L?sung nach-zudenken.Sollten Programme aber derart zeitkritisch sein,dass sie direkten Hardware-Zugriff ben?tigen,kann man sich an SavaJe wenden,um Hilfe zur Entwicklung von C und Assemb-ler Programmen zu erhalten.Im Internet verfügbare Dokumentation gibt es allerdings nur für Java-L?sungen[28].

Durch die vollst?ndige Unterstützung der J2SE1.3bereits in der ersten Version ihres Betriebs-systems(SavaJe XE OS)und die gleichzeitige Konzentration auf den Markt der Handheld-Ger?te mit StrongARM-Prozessoren erhoffte man sich bei SavaJe,auf eine breite Basis von Java-Entwicklern zurückgreifen zu k?nnen[19].

Falls man bereit war,sich bei SavaJe registrieren zu lassen,konnte man bis vor kurzem1Sa-vaJe OS1.1.0als30Tage Test-Version frei herunterladen.Als m?gliche Alternative unter den Betriebssystemen sollte es deshalb im Rahmen dieser Diplomarbeit auf jeden Fall evaluiert wer-den.Zus?tzlich kann ein nützliches Werkzeug heruntergeladen werden:Das Remote Keyboard Tool.Dieses Werkzeug erm?glicht es,die SavaJe OS1.1.0-Shellüber die Tastatur des Desktop-PCs zu bedienen.V oraussetzung ist eine Netzwerkverbindung zwischen dem iPAQ und dem Desktop-PC.

1SavaJe OS1.1.0wird nicht mehr of?ziell vertrieben.Siehe auch Abschnitt2.2.3.

8Andreas H?fer

相关主题
文本预览
相关文档 最新文档