39
Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Embed Size (px)

Citation preview

Page 1: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Palm OS 4.1

Schwerpunktseminar Multimedia

Simone Stropp

Sommersemester 2003

Page 2: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Motivation

• Trend: Handheld-Computing

• Verschiedene Betriebssysteme

• Vortrag: – Einblick in Aufbau/Merkmale Palm OS– Speziell: Palm OS 4.1

Page 3: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Inhalt

• Einführung

• Schnittstellen / Kommunikation

• Palm OS Architektur

• Hardware-Überblick

Page 4: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Inhalt

• Palm System-Manager

• Palm OS-Versionen / Palm OS 4.1

• Palm OS-Programmierung

Page 5: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Einführung: PDA

• „Personal Digital Assistent“

• Entwicklung:

elektronischen Terminkalender multifunktionaler Alleskönner

• Unterschied: Betriebsystem

Page 6: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Einführung: Palm

• Palm: Erfinder der PDA‘s

• Eigenes Betriebssystem: Palm OS

• Ziele:– klein– kostengünstig– einfach zu bedienen

• Palm OS auch auf Geräten anderer Hersteller

Page 7: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Einführung: PalmOS Historie• 1996: der erste Palm-Handheld – PalmPilot 1000 mit Palm OS 1.0,

Motorola Dragonball Prozessor

• 1996: PalmPilot 5000 mit Palm OS 1.0.3

• 1997: PalmPilot Personal und Professional mit Palm OS 2.0

• 1998: PalmPilot III mit Palm OS 3.0 (Infrarotschnittstelle)

• 1999: PalmPilot IIIe, IIIx, IIIc, IIIxe mit Palm OS 3.1 Palm V, Vx ebenso mit 3.1

Palm VII, VIIx mit OS 3.2:• kabellose Verbindung zum Internet über integriertes Funkmodem möglich• Unterstützung für japanisch und andere Sprachen• M100, m105 mit Palm OS 3.5

Page 8: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Palm OS Historie

• 2001: M500, m505 mit Palm OS 4: – Unterstützung von Bluetooth– Schutz vor Zugriff durch Passwort

• 2002: PalmOS 5.0:– Neue Hardware-Plattform mit ARM-Prozessor– Höhere Sicherheit: Ent- und Verschlüsselung von

Daten mit RC-4– Unterstützung für Multimedia– Multithreading

Page 9: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Benutzerschnittstellen

• Drucksensitives Display, Zeichensprache, Stift

• Graffiti: Benutzer „lernt“ Palmsprache

(Vor- u.Nachteile)

• Virtuelle Tastatur

Page 10: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Kommunikation: Serielle Schnittstelle

• Serial Manager:verwaltet serielle Schnittstelle

• Connection Manager: Verbindungsaufbau andere Geräte

• Modem Manager: Wahlvorgang (Softmodem)

• Serial Link Protocol: (Sende/Empfangsfunktionen)

• Assembly/Dissambly-Protocol: Datenpufferung

• Desktop Link Protocol:Bereitstellung der Daten

• Empfang: interruptgesteuert, Senden: Polling sparsamer Stromverbrauch

Page 11: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Kommunikation: Infrarot-Schnittstelle

• IrOBEX (Objekt-Austausch-Protokoll)

• Ursprünglich vorgesehen für Geräte-Kommunikation (nicht PC)

• Ab Version 3.3: IrDA-Unterstützung standardmäßig Integriert

• IrComm-Protokoll: Simulation serielle Schnittstelle

Page 12: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Kommunikation: TCP/IP

• In Net Library implementiert:

TCP/IP, UDP, UNIX-Socket

• Zusammengefasst vom Internet Library Interface verschiedene Verfahren zur Nutzung der Internet-Inhalte

• TCP/IP: auch nutzbar für Kommunikation über Schnittstellen mit anderen Geräten/PC

Page 13: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Kommunikation: Conduits

• Desktop-Programme registriert im Hotsync Manager

• Hotsync-Manager startet Conduits• Aufgaben Conduits:

– Kopieren, synchronisieren, Übertragen von Daten

• Outlook-Kommunikation mit Palm über Conduits• Hotsync: Generierung Logeinträge über

Conduits

Page 14: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Palm OS Architektur: Layer• Device Hardware: intergrierte

Komponenten

• 3rd Party Hardware: zusätzlich durch Steckkarten eingebundenen Hardware

• Hardware-Abstraction-Layer: Unabhängikeit von HW-Konfiguration

• Kernel: Herz des Betriebssystems (Multitaskingfähig: Bearbeitung Schrifterkennung parallel zum Programm)

Page 15: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003
Page 16: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Layer: System Services• Palmspezifische Manager

• Graffiti Manager: Stifteingaben

• Sound Manager: Soundausgabe

• Serial Manager: Schnittstellen

• Resource Manager: Dateisystem

• Event Manager: Systemereignisse

• Memory Manager: Speicher

Page 17: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Layer: Libraries und Application Toolbox

• System Libraries: einfacher Zugriff auf Hardware

• Inhalt System Libraries: Protokolle für Hardwarekomponenten

• 3rd Party Libraries : Java Virtual Machine

• Application Toolbox: grafische Benutzerschnittstellen (API‘s)

• Device Applications: mitgelieferte Palm-Programme

• 3rd Party Applications: von Fremdanbietern entwickelte Programme

Page 18: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Speicher• 32-bit Architektur mit 8, 16 und

32 Bit Datentypen

• 4 GB als Adressraum zur Verfügung – Der erste Palm hat weniger

als 0.025% des Adressraumes verwendet

• Speicherkarte mit RAM und ROM

• Dynamic RAM – Äquivalent zum Arbeitsspeicher im Desktop-PC

• Storage RAM – Äquivalent zur Festplatte

Page 19: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Speicher: Persistenz

• Aufrechterhaltung des Speicherinhaltes durch:

• Standby-Mode mit niedrigem Energieverbrauch

• Super-Kondensator bei Batteriewechsel:– maximal eine Minute, danach kompletter

Datenverlust

Page 20: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Speicher: Speicherkarten

• Ein Speichermodul besteht aus ROM, RAM oder beidem.

• Speichercard: logische Konstruktion, vom OS verwendet.

• Ein Gerät kann mehrere Cards enthalten (zur Zeit aber nur eine)

• Für jede Card: 256 MB Adressraum reserviert

Page 21: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Speicher: Partitionierung

• RAM und ROM unterteilt in Heaps

• Kleiner Teil des RAM‘s außerhalb der Heaps, reserviert für:– Globale Low-Memory-Variablen– Speicher-Header– Andere Dinge

• Header im Speicher: Gültigkeit RAM

Page 22: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Der Memory Manager• Verantwortlich für die Heap-

Verwaltung

• Drei Arten Von Heaps:– Dynamic Heap– Storage Heap– ROM Heap

• Stellt API zur Verfügung um:– Neue Chunks zu allokieren– Chunks zu Löschen– Locking, Resizing– Heaps zu Defragmentieren

Page 23: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

MM: Heaps

• Heap: kontinuierlicher Speicherbereich, enthält Chunks

• Anwendungen können spezifizieren: Speicher im Dynamic oder Storage Heap allokieren.

• Heaps: Referenzierung über eindeutige 16-bit Heap ID

Page 24: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

MM: Heap-Struktur

• Header enthält die Heap-ID, Größe des Heaps und die Master Pointer Tabelle

• Alle Daten werden in Chunks gespeichert

• In der Master Pointer Tabelle werden alle Master Chunk Pointer abgelegt

• Ein Master Chunk Pointer ist die physikalische Adresse des Chunks

• Der Heap Terminator ist ein Chunk der Länge Null

Heap Header

Master Pointer Table

Heap Terminator

Chunk

Chunk

Chunk

Chunk

Chunk

.

.

.

Page 25: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

MM: Chunks

• Zusammenhängende Speicherbereiche, die über Handles oder Zeiger referenziert werden

• Drei Arten von Chunks:– Freie Chunks– Bewegliche Chunks– Fixierte Chunks

Page 26: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

MM: Heap-Allokierung

• Ein Handle ist ein Zeiger auf einen Master Chunk Pointer

• Pointer zeigen direkt auf die Daten

• Durch „locken“ des Handles bekommt das Anwendungsprogramm den Pointer

Page 27: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

MM: Der Dynamic Heap

• Der gesamte Dynamic RAM wird benutzt, um einen einzigen Dynamic Heap zu erzeugen

• Inhalt:– Globale Daten die BS benötigt– TCP/IP-Stack– Bibliotheksdaten für Kommunikation– Datenstrukturen GUI-Elemente– Puffer für Stifteingabe/Tastendruck– Konstante Anwendungsdaten– Anwendungs-Stack– Dynamisch allokierter Programmspeicher

Page 28: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

MM: Der Storage Heap

• ab Version 3.x nur ein großer Heap.• Für persistente Daten wie Aufgaben,

Adresslisten, Memos• Inhalt:

– Zusatzanwendungen– Shared Libraries– System Patches– Benutzerdaten– Präferenzen

Page 29: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Dateisystem

• Kein traditionelles Dateisystem -> Daten und Programme werden als Datensätze einer Datenbank gespeichert

• Editierung der Daten geschieht 'in-place‘

• Zwei Datenbank-Arten: Resource und Record

• Einige Vorteile: – Weniger RAM erforderlich – Datensätze können verteilt im Speicher liegen– Synchronisation:unveränderten Datensätze überspringen

• Datenbankheader: Basisinformationen und Liste aller zur Datenbank gehörenden Datensätze

Page 30: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

DS: Record-Datenbanken

• Speicherung von Nutzer-Daten (*.pdb)

• Inhalt eines Datensatzes:– localID– Attribute (Dirty, Deleted, Busy, Private)– Kategorie– uniqueID

Page 31: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

DS: Resource-Datenbanken

• Zur Speicherung von Applikationen (*.prc)

und Systemdaten

• Inhalt:– Benutzerschnittstellen– Ressourcen– Anwendungen des Betriebssystems

Page 32: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Der Prozessor

• Geräte mit OS 4.1: DragonBall Super VZ-Prozessor der Motorola Familie

• 32bit interner, 24-bit externer Adressbus

• 33MHz, fest integrierte 16MB RAM

• Weitere Merkmale u.a.:– System-Integrationsmodul– DRAM-Controller– seriellen peripheren Interface-Port– UART

Page 33: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Palm OS-Versionen

• Bis Version 4.0 folgende Änderungen:– Support TCP/IP– IR-Unterstützung– Geräte-ID– MIDI-Unterstützung– Verbesserte Speicherverwaltung– Support von Farbdisplays– Schnurloser Internet-Zugang per Handy– Unterstützung von bis zu 65.000 Farben– Bluetooth

Page 34: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Palm OS 4.1

• Folgende Neuerungen bei Version 4.1– Verbesserte Sicherheitsfunktionen– Verbesserte Erinnerungsfunktionen

(Silent Alarms)– Bequemere Dateneingabe

Page 35: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Palm OS 4.1

• Im Detail:– Automatische Sperrfunktion– Übersichtsbildschirm für Alarmmeldungen– Befehl “Senden“– Anwendung „Notizen“– Wählfunktion in Anwendung „Adressen“– Rechner– Verbesserte Bildschirmtastatur– E-Mail-Unterstützung– Zeitzonenanpassung– Telefontreiber– MultiMail SE-Software– SMS– Drahtlose Internet-Verbindung

Page 36: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Programmieren für den Palm

• OpenSource-Programmierung

• Tools:– Cygwin (für Windows)– PRC-Tools– PilRC

(Ressourcencompiler)– Palm OS SDK– Emulator

Page 37: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Zusammenfassung: Vorteile

• Stromsparend durch 3 Betriebsarten• Schnelle Reaktion auf Tastendruck, da nie ganz

ausgeschaltet• Wenig dynamischer RAM gefordert durch “execute-in-

place”• Gute Texterkennungsrate, da Benutzer mit Graffiti-

Schrift schreibt• Kostengünstig, da einfache Hardware, einfache

Ausstattung• Stabil, wegen einfacher Ausstattung und single-tasking• Leicht, intuitiv zu bedienen

Page 38: Palm OS 4.1 Schwerpunktseminar Multimedia Simone Stropp Sommersemester 2003

Zusammenfassung: Nachteile

• Benutzer muß die Graffiti-Schrift erlernen

• Kein Multitasking

• Kein virtueller Speicher: im worst case (wenn nicht genügend dynamischer Speicher vorhanden ist) kann ein Programm nicht laufen