Pocket PC 2002 Schwerpunkt-Seminar Von Torben Schindler 1 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 2 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 3 Einleitung PPC holt auf Mobile Computing 400 Mhz xScale Geräte wachsen zu Alleskönnern 4 2. Vorstellung von PocketPC 2002 WinCE ist Kern von PocketPC 2002 Unternehmen bevorzugen WinCEPDAs großer Erfolg von PPC PPC 2002 größere Multimedia Unterstützung 5 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 6 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 7 Vorstellung von PocketPC 2002 Optimierung auf Unternehmen Schwerpunkt drahtlose Kommunikation VPN Unterstützung Virenschutz Schnittstelle 7stellige alphanumerische Kennwörter Terminal Service Client -> Remote Access 8 Vorstellung von PocketPC 2002 Bluetooth und WLAN 802.11b Verbindung mit GPRS Handys möglich OBEX Protokoll (Object Exchange) zum Datenaustausch über IRDA 9 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 10 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 11 Vorstellung von PocketPC 2002 GPRS Connections noch kompliziert IRDA Problemlos (WLAN und Bluetooth) MSN Messenger intergriert 12 13 3. Was ist PPC Pocket PC 2002 basiert auf WinCE 3.0 Wenig Ram Ruhezustand ist möglich Multitasking Fähigkeit Real Time 14 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 15 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. 16 4. PocketPC vs. PocketPC2002 Erweitertes User Interface DesktopThemes Verbesserung der Task Bar Neue Dialog Buttons Tap and Hold Feature 17 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 18 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 19 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) 20 PocketPC vs. PocketPC2002 Terminal Service Client Desktopanwendungen können über WLAN Verbindungen gesteuert werden. Bessere Speicherverwaltung 21 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 22 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 23 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 24 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 25 Memory Managment (ROM) XIP Programme werden im ROM gestartet Im ROM gestartete Programme werden “nicht“ ins RAM ausgelagert Recourcenschonung und Geschwindigkeitsvorteil e Virtual Memory ebenfalls implementiert 26 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 27 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 28 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 29 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 30 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 31 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 32 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 33 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) 34 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 35 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 36 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 37 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 38 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 39 Deinstallation alter Programme Vom Desktop aus installierte Programme können ganz normal deinstalliert werden Vom PPC aus installierte Apps. werden einfach gelöscht (Problem: Treiber) 40 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 41 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 42 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 43 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 44 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 45 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 46 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 47 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 48 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 49