30.12.2014 Aufrufe

Mobile Systems III INFORMATIK

Mobile Systems III INFORMATIK

Mobile Systems III INFORMATIK

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Michael Böhm 179<br />

Der Kernel selbst hat keinerlei Abhängigkeit von diesen Erweiterungen und auf die Kernel<br />

Extensions erhält keine Anwendung selbst den Zugriff. Damit nun die Anwendungen<br />

korrekt funktionieren und die für sie vorgesehene Hardware benutzen, sind just diese Informationen<br />

in den Treibern gespeichert. Diese können, um die Kontrolle über die Hardware<br />

für bestimmte Anwendungen zu erhalten, beliebig installiert und deinstalliert werden. Die<br />

Treiber bestehen aus zwei Teilen, einer Bibliothek, um die entsprechende API selbst anzusprechen<br />

und mehreren Bibliotheken, um die Hardware nutzen zu können. Damit kann<br />

die Kontrolle partiell vermittelt werden, ohne direkten Einfluss oder Schaden am Kernel<br />

beziehungsweise dem Betriebssystem selbst vorzunehmen. An dieser Stelle soll noch einmal<br />

näher auf die Kernel Side Library eingegangen werden. Es wurde ja bereits gesagt,<br />

dass hier alle lebensnotwendigen Daten gespeichert sind. Diese Bibliotheken unterteilen<br />

sich allerdings noch einmal in zwei verschiedene Typen. Zum einen gibt es den logical<br />

device driver DLL (LDD) und zum anderen den physical device driver DLL (PDD). Die<br />

logischen Treiber beinhalten sämtliche grundlegenden logischen Funktionen im Sinne von<br />

I/O. Diese sind auch immer auf andere Systeme transportierbar. Der interessante Aspekt<br />

sind die PDD, die jeweils auf das bestimmte Zielsystem zugeschnitten werden und die<br />

vorhandenen Ressourcen mobilisieren können. Diese Dateien sind notwendig und müssen<br />

verfügbar sein, aber durch die Zweiteilung muss man bei dem Portieren des Betriebssystems<br />

auf einer andere Hardware-Plattform nur die entsprechenden PDD austauschen<br />

und das System funktioniert in der gewünschten Umgebung. LDD und PDD sind hier als<br />

polymorphic DLL realisiert und müssen in einem bestimmten Verfahren genutzt werden.<br />

[8] Einzige Ausnahme aus der Prioritätscodierung ist der Screen Buffer. Das erscheint<br />

auch logisch, wenn man bedenkt, dass die Bildschirmdarstellung sich nicht “hinten anstellen“<br />

sollte. Die Lösung liegt im Direct Memory Access, der die Daten unmittelbar in das<br />

LCD Display kopiert. Damit es an Schnelligkeit nicht mangelt, wurde der Screen Buffer<br />

mit allen notwendigen Lese- und Schreibberechtigung auf alle Prozesse ausgestattet. Damit<br />

werden Anwendungen über eine Graphic API schnell dargestellt. Folglich wird der<br />

privileged mode umgangen und dieser Vorgang liegt außerhalb der Prioritätencodierung.<br />

8.4.2 Application-Sicht<br />

Symbian OS wurde als ein umfangreiches Betriebssystem geplant, welches alle Fähigkeiten<br />

eines normalen Betriebssystem aufweist und dennoch in den Speicher eines Mobiltelefons<br />

passen sollte. [8] Das setzt bestimmte Anforderungen voraus. Diese wurden nun bereits<br />

genannt beziehungs-weise auch erläutert und teilweise auch diskutiert. Im Zusammenhang<br />

des Aufbaus wird nun die zweite Sichtweise betrachtet. Diese Sicht beschäftigt sich vor<br />

allem mit den Abhängigkeiten der Systemkomponenten. Es handelt sich allerdings um<br />

einen Übergang und eine klare Trennung zwischen den Sichtweisen kann nicht vorgenommen<br />

werden. So müssen zunächst noch einige tiefer gehende Erläuterungen vorangehen,<br />

bevor man sich dem allgemeinen Aufbau aus der Application-Sicht zuwenden kann.<br />

Server-Client Struktur<br />

Symbian OS beinhaltet eine umfassende Sammlung an Bibliotheken, um möglichst viele<br />

Industriestandards zu implementieren. Unter anderem TCP/IP, SSL, FTP und SMTP um<br />

nur einige aus verschiedenen Bereichen zu nennen. Abbildung 4 zeigt einige Bereiche auf,

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!