490 likes | 599 Views
Pocket PC 2002. Schwerpunkt-Seminar Von Torben Schindler. Inhalt. 1. Einleitung 2. Vorstellung von PocketPC 2002 3. Was ist PocketPC 4. Unterschiede zwischen PPC und PPC2002 5. Memory Management 6. Files, Datenbanken und Registry 7. Prozesse und Threads 8. Entwicklungsumgebung
E N D
Pocket PC 2002 Schwerpunkt-Seminar Von Torben Schindler
Inhalt • 1. Einleitung • 2. Vorstellung von PocketPC 2002 • 3. Was ist PocketPC • 4. Unterschiede zwischen PPC und PPC2002 • 5. Memory Management • 6. Files, Datenbanken und Registry • 7. Prozesse und Threads • 8. Entwicklungsumgebung • 9. Installation von Software • 10. Programmierung • 11. Einige Programme und Möglichkeiten • 12. Fazit
1. Einleitung • PDAs und Handhelds befinden sich auf einem Siegeszug • PocketPC Marktanteil wächst stetig an • “Billigmarkt“ wurde entdeckt • Geräte kosten 300 € - 350 € • PDA- und Pocketphones im kommen • Flexibilität
Einleitung • PPC holt auf • Mobile Computing • 400 Mhz xScale • Geräte wachsen zu Alleskönnern
2. Vorstellung von PocketPC 2002 • WinCE ist Kern von PocketPC 2002 • Unternehmen bevorzugen WinCE-PDAs • großer Erfolg von PPC • PPC 2002 größere Multimedia Unterstützung
Vorstellung von PocketPC 2002 • xScale-CPUs werden nicht unterstützt • großes Marketing Problem bei Microsoft • xScale löst StrongArm ab, bisher 206Mhz • PPC 2002 nicht für den ARM5-Kern (xScale) optimiert • Keine Abwärtskompatibilität der Software von ARM5 auf ARM4
Vorstellung von PocketPC 2002 • Microsoft und die Hardwarefraktion (Toshiba e740, HP iPAQ) im Klinch • Keine nachträgliche Unterstützung • Pocket Mobile 2003 für ARM5 optimiert
Vorstellung von PocketPC 2002 • Optimierung auf Unternehmen • Schwerpunkt drahtlose Kommunikation • VPN Unterstützung • Virenschutz Schnittstelle • 7stellige alphanumerische Kennwörter • Terminal Service Client -> Remote Access
Vorstellung von PocketPC 2002 • Bluetooth und WLAN 802.11b • Verbindung mit GPRS Handys möglich • OBEX Protokoll (Object Exchange) zum Datenaustausch über IRDA
Vorstellung von PocketPC 2002 • PIE (Pocket Internet Explorer) wurde verbessert • HTML 3.2, XML, XSL und zusätzlich WAP Unterstützung • JavaScript 1.1 und ActiveX • Kein Java und CSS • Download von Bildern kann geregelt werden
Vorstellung von PocketPC 2002 • Mediaplayer 8.1 spielt MP3s, MPEG1 und WMV ab • MP als Diktiergerät • Eignet sich nur bedingt als Taschenkino • Fehlende Speichermedien (IBM Microdrive) • Sehr gut geeignet für Spiele
Vorstellung von PocketPC 2002 • GPRS Connections noch kompliziert • IRDA Problemlos (WLAN und Bluetooth) • MSN Messenger intergriert
3. Was ist PPC • Pocket PC 2002 basiert auf WinCE 3.0 • Wenig Ram • Ruhezustand ist möglich • Multitasking Fähigkeit • Real Time
Was ist PPC (ROM) • Betriebssystem befindet sich im ROM • Kernel Loader sichert Zugang zum RAM • ROM Programme werden auch dort ausgeführt “XIP“ • ROM Komprimierung • Kein Upgrade möglich des ROM möglich deshalb Umweg über den RAM
Was ist PPC (Multitasking und Real Time) • Wenige Änderungen zum Desktop • 32 Programme möglich • Ab CE 3.0 wird eine Zeitscheibe von 50 Millisec. Zugeteilt • “Fast“ Echtzeit, früher 250 Millisec.
4. PocketPC vs. PocketPC2002 • Erweitertes User Interface • DesktopThemes • Verbesserung der Task Bar • Neue Dialog Buttons • Tap and Hold Feature
PocketPC vs. PocketPC2002 • Pocket Outlook • Benutzerfreundlicher • Schnellere Kontaktverwaltung • Kalenderansichten können gewechselt werden • Erweiterung der Inbox Funktionalität • Unterordner für E-Mail • Attachments werden automatisch konvertiert
PocketPC vs. PocketPC2002 • Microsoft Messenger wurde integriert • Pocket Word mit Rechtschreibprüfung und Zählfunktion versehen • DRM5 wurde in den MS Reader eingebaut • MediaPlayer 8.0 • DRM5 • Streaming Funktionen integriert
PocketPC vs. PocketPC2002 • Pocket Internet Explorer (PIE) • Sound und Bilddateien können gesteuert geladen werden • Das nachträgliche Laden von Daten ist möglich • WAP Seiten können angezeigt werden. • Connection Manager wurde vereinfacht • Internet und Workeinstellung • Direktverbindung zum ISP (VPN)
PocketPC vs. PocketPC2002 • Terminal Service Client • Desktopanwendungen können über WLAN Verbindungen gesteuert werden. • Bessere Speicherverwaltung
5. Memory Managment • WinCE Anwendung 1-2MB RAM • Standard PC mind. 128MB RAM • WinCE umfasst die komplette Win32 Memory-Managment-API • (Virtual Memory, local- und seperate Heap, Memory-Mapped-Files) • 32bit flat-address-space • Memory Protection zwischen den Anwendungen
Memory Managment (RAM) • Speicherarchitektur ist sehr eigen • RAM ist in 2 Bereiche unterteil • 1. Program Memory, Sysstem Heap • 2. Object Store • Object Store ist eine dauerhafte virtuelle RAMdisk • Daten werden auch beim Aussschalten behalten • Backup Batterie versorgt beim wechseln den RAM
Memory Managment (RAM) • Sogar beim Reset wird bei Bedarf der vorherige Object Store restored • Program Memory wie bei Desktop PCs • Grenzen zwischen den Speicherarten sind von dem User frei im Menü verschiebbar
Memory Managment (ROM) • Untergeordnete Rolle im PC • Desktop PC 64-128KB für die Bioseinlagerung • PPC (WinCE) besitzt meistens eine ROM-Größe von 4-32MB • Komplettes Betriebssystem + Standardprogramme ist im ROM • ROM = ReadOnly Festplatte
Memory Managment (ROM) • XIP Programme werden im ROM gestartet • Im ROM gestartete Programme werden “nicht“ ins RAM ausgelagert • Recourcenschonung und Geschwindigkeitsvorteile • Virtual Memory ebenfalls implementiert
Memory Managment (Paged Memory) • Keine sehr großen Unterschiede zum DesktopPC • Unterschiedliche Größe der Pages (1024-4096KB) wegen unterschiedlicher CPUs • Status einer Page (FREE, RESERVED, COMMITED) genau wie bei PC
Memory Managment (WinCE Address Raum) • Win2000 hat komplett getrennte Adressräume • WinCE 2GB virtueller Adressraum für alle Anwendungen • Speicherplatz der Anwendung ist geschützt • Die Hälfte des AR ist in 33 Teile zu je 32MB geteilt • Jeder dieser SLOTS nimmt einen Prozess auf
Memory Managment (WinCE Address Raum) • Der im Moment aktive Prozess ist in SLOT 0 • Remapping des AR sorgt für ein wechseln der Prozesse • Restliche AR wird vom OS benutzt
6. Files, Datenbank und Registry • Größte Unterschiede zwischen XP und CE in der Datenspeicherung • CE hat ein “Unique-RAM-Based“ Dateisystem • Der Object Store ähnelt eher einer Datenbank als einem File-System • CE File API wurde von Win32 fast komplett übernommen • Standard Registry API von XP jedoch ohne Sicherheitslevels
Files, Datenbank und Registry • Datenbank API ist einzigartig • Einfaches Tool zum managen und organisieren wird unterstützt • Schmale Funktionalität (Dateigruppen, Maillisten, Adressgruppen) • XIP Files können nicht mit Standardmethoden geöffnet werden • Object Store Format ist undokumentiert und nicht von Microsoft veröffentlicht
Files, Datenbank und Registry • WinCE unterstützt kein Current Directory • Files werden durch ihren Pfad spezifiziert • Programmiertip: Sämtliche Sicherheitsrelevanten Abfragen sind auf NULL zu setzen, da WinCE eine eigene Version der Modul-Level-Sicherheit besitzt
Files, Datenbank und Registry • 256 unterschiedliche Speicherkarten oder Partitionen werden unterstützt • Werden nicht als Laufwerke behandelt sondern ähnlich wie Verzeichnisse eingehängt • Erweiterung des Object Stores • Unterstützung langer Dateinamen • Dateinamenerweiterung werden von der Shell interpretiert
7. Prozesse und Threads • PPC ist völlig Multitasking und Multithreading fähig • 32 Prozesse “gleichzeitig“ • Jeder Prozess hat einen geschützten 32MB Adressraum • Beim Starten werden mind. 4 Prozesse geladen (NK.exe, Filesys.exe, Gwes.exe, Device.exe, Explorer.exe, Reppllog.exe, Rapisrv.exe)
Prozesse und Threads • Grob sind also 24 weitere Prozesse möglich • Prozesse enthalten weniger Infos als auf einem PC (Keine Laufwerke, Kein C.D.) • Nur wenige Parameter bei CreateProcess werden gesetzt • Keine Fiber API • Keine ExitProcess Funktion unter CE
8. Entwicklungsumgebung (EmbeddedVisualTools) • Microsoft eMbedded Visual C++ 3.0, Vorgänger war WinCE Toolkit • Installation ohne Visual C möglich • Spezielle Tools, Bibliotheken und Vorlagen für PPC • Vertraute Umgebung für Win32 Entwickler • Alle Relikte aus der Vorgängerversion betreffend PCs wurden entfernt
Entwicklungsumgebung (Embedded Visual Tools) • Assistenten zur Erstellung von Win32- und MFC-Anwendungen speziell für PPC • Komplett neuer Ressourceneditor • Desktopemulation • Unterstützung aller gängigen Prozessoren (ARM, MIPS, SH3 und x86) • Enthält eine auf Windows basierende Desktop-API
9. Installation neuer Programme (.exe) • Unterschiedliche Installationen (.exe, .cab, .zip) • Vor WinCE3.0 gab es ein Limit von 16MB • Manche Anwendungen werden vom Desktop aus installiert • Immer wird ActiceSync benutzt • Man kann bei AS Installationsverzeichnisse angeben und so auf Flash Karten speichern
Installation neuer Programme (.cab) • Werden auf dem PPC ausgeführt aber über AS ist es möglich • Über den Explorer wird die Installation gestartet • Man kann kein Verzeichnis wählen • Können von Webseiten aus installiert werden • Vorsicht: Installation kann nicht abgebrochen werden
Deinstallationalter Programme • Vom Desktop aus installierte Programme können ganz normal deinstalliert werden • Vom PPC aus installierte Apps. werden einfach gelöscht (Problem: Treiber)
Erstellen einer Kabinettdatei (.cab) • .cab enthält alle Daten die relevant für eine Installation sind • .inf und .ini Datei müssen geschrieben • Inf Datei enthält: • Zielpfad der Dateien • Verknüpfungen und Registrierungseinstellungen • Makrozeichenfolgen wegen Ländereinstellungen verwenden
10. Den PPC programmieren • PPC Applikationen sind Windows Anwendungen • Message Loop, Main Window, Fenterprozeduren • Als erstes muß man sich versichern das nur eine Kopie läuft, da das OS dies nicht automatisch abfängt • Sollte man eine Anwendung schliessen können ? • Anwender nutzen keine Programme sondern nutzen ihren PDA
Den PPC programmieren • Als kleines Code Beispiel Hello World • Hauptfenster wird erstellt • Hello PPC wird angezeigt • Ein rotes Rechteck um den Rand des Fensters wird gezogen • Eine Menüleiste ohne Menü wird erstellt jedoch mit einem Button für SIP • Beim drücken dieses Knopfes soll die Tastatur ausfahren • Wenn die APP ein 2tes mal gestartet wird dann soll zur aktuellen Kopie gewechselt werden • Ctrl-Q schließt die AP
11. Microsoft Active Sync • Synchronisation zwischen Desktop und PPC • Active Sync 3.7 für alle Betriebsysteme • Alle Programme von PPC2002 können synchronisiert werden • Eigener PPP-Server wird installiert • Erkennung serieller Porte
Microsoft Active Sync • Typkonvertierungen werden gemacht • Pocket Word -> zu allen Word Versionen • Pocket Excel -> zu allen Excel Versionen • Pocket PowerPoint -> Microsoft PowerPoint 97 • Sounds -> Standard .WAV File • Fonts -> Standard TrueType Fonts • Bitmapped Graphics -> 2bp, BMP • Umgekehrt genauso
Einige Programme für PPC • AvantGo • Ermöglicht den Usern Webseiten “mitzunehmen“ • Eintragen in Channels ist möglich • Active Sync + Internetverbindung • PocketBrowser (kommerzieller Browser) • Da der PIE sich als Monzilla 3.2 anmeldet können manche Seiten nicht betreten werden • Pocket Browser als Alternative
Möglichkeiten des PocketPC • PocketPC als GPS Navigationssystem • (Bluetooth) GPS Receiver • GPS Software (Alturion) • Preisgünstige Lösung • Mittlerweile sehr Zuverlässig und genau • PPC verarbeitet die GPS Daten
Möglichkeiten des PocketPC • Man kann mit entsprechenden Freeware Programmen den PocketPC als Multifunktionfernbedienung benutzen • Mit WLAN ausgerüstet eignet sich der PPC sogar als Funkfernseher für zu Hause • Durch ein umrüsten des PPC kann er zu einem Meßinstrument umfunktioniert werden (Architektur, Elektrotechnik) • Zum Regeln von Maschinen sehr gut geeignet
12. Fazit • PocketPC2002 ist ein flexibles und auf Kommunikation ausgelegtes OS • Sehr interessant für Unternehmen • Nicht so Fehleranfällig wie seine “Cousins“ • Handy und Organizer werden zusammenwachsen • PocketPC Phone Edition macht es vor • Kombination von PocketPC2002 und der Phone Edition birgt aber auch Risiken und Gefahren