NEXT GENERATION MOBILE PHONE PLATFORMS



Ähnliche Dokumente
Walkabout: Location Based Services mit Android und dem Google Phone

Präsentation Von Laura Baake und Janina Schwemer

1. Software-Plattform Android Android. Was ist Android? Bibliotheken, Laufzeitumgebung, Application Framework

App-Entwicklung für Android

Ein mobiler Electronic Program Guide für Android

Smartphone - Betriebssysteme. Smartphone - Betriebssysteme

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter

1. Software-Plattform Android Android. Was ist Android? Managed Code, Angepasste Java Virtual Machine

Sicherheit in Android

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv

Mobile Application Development

Ein mobiler Electronic Program Guide

C++ und mobile Plattformen

Installationshandbuch (deutsch)

Smartphone Entwicklung mit Android und Java

Unterscheidung Tablet PC & Tablet Computer. Tablet PC; ursprüngliche Bezeichnung von Microsoft. Tablets gemeint

Systemanforderungen Verlage & Akzidenzdruck

Systemanforderungen (Mai 2014)

Bewusster Umgang mit Smartphones

Vom Smart Dust zum Smart Phone: Verfügbare SensingPlattformen. Adrian Friedli

Mac OS X und ios. Softwarearchitekturen SS Von Pawel Wall

Webseiten und Web-Apps grafisch gestalten mit HTML5 Canvas ohne Flash und sonstige Tools

INSTALLATION OFFICE 2013

Samsung Large Format Display

Albert Dengg. Graz,

Anleitung zur Nutzung des SharePort Utility

Empfohlene Sicherheitsmaßnahmen aus Sicht eines Betreibers. Wien,

Eine umfassende Unternehmenslösung für die private und berufliche Nutzung

ANDROID. Analyse der Android Plattform. Andre Rein, Johannes Florian Tietje. 28. Oktober FH-Gieÿen-Friedberg Android Praktikum

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

Inhaltsverzeichnis. Vorwort 11. Kapitel 1 Systemaufbau und Technologie 17. Kapitel 2 Bundles, Pakete und das Dateisystem 29

Produktvorstellung: CMS System / dynamische Webseiten. 1. Vorwort

PAUL App. Anleitung für Studierende und Lehrende

HD-Kamerasoftware Version 4.1.0

Speaker. Dominik Helleberg. Mobile Development Android / Embedded Tools.

JPC Visualisierung in Java

Client-Systemanforderungen für Brainloop Secure Dataroom ab Version 8.30

Benutzerleitfaden MobDat-CSG (Nutzung des Heimrechners für dienstliche Zwecke)

Enterprise Mobility, Live! Pascal Kaufmann, Swisscom IT Services AG 12. Juni 2013

Technische Informationen. Fabasoft Cloud

Internet Explorer Version 6

Proseminar Technische Informatik A survey of virtualization technologies

Datenhaltung für Android. Model First

SWE KEx-Datex II. System-Architektur

Expertenumfrage: Mobile Applications

Collax PPTP-VPN. Howto

Computeria Solothurn

SCHRITT FÜR SCHRITT ZU IHRER VERSCHLÜSSELTEN

Wo finde ich die Software? - Jedem ProLiant Server liegt eine Management CD bei. - Über die Internetseite

ASD ZSS. RZ-Süd (LfStaD) Internet

auf den E-Book-Reader

Anwendertage WDV2012

DBUS Interprozess-Kommunikation für Embedded-Plattformen

gibt es verschiedene Betriebssysteme die je nach Gerät und Nutzer installiert werden können.

Location based Content Delivery oder was das ibeacon-rudel im Zoo zu suchen hat

Enterprise Control Center. Systemvoraussetzungen V2.1

Systemvoraussetzungen

Version White Paper ZS-TimeCalculation und die Zusammenarbeit mit dem iphone, ipad bzw. ipod Touch

Ein Blick voraus. des Autors von C++: Bjarne Stroustrup Conrad Kobsch

Nutzung der VDI Umgebung

Perspektiven: Spiele in ios

Drucker über die USB-Schnittstelle des AC WLAN ansteuern. Direkte Ansteuerung ( Windows )

TISIS - Industrie 4.0. Ereignis, Ort, Datum

4.1 Download der App über den Play Store

Microsoft.NET Gadgeteer: Ein raffinierter Weg zum Embedded-Produkt. ECC 2013 Marcel Berger

Web-basierte Benutzerschnittstellen für Embedded Systeme: Eine Benutzerschnittstelle drei Sichtweisen

Best Connectivity. LogiCloud Wi-Fi Storage Sharer. Art.-Nr. WL0156

ATHOS Benutzertreffen

Mobile Security (Android OS) Ein Vortrag zur Sensibilisierung eines Benutzers im Umgang mit Smartphones und Tablets mit dem Android OS.

QUECHUA PHONE 5 DAS ERSTE MOUNTAINPROOF SMARTPHONE. Gebrauchsanleitung Android. Schlagfest Dichtigkeit Autonomie Apps die für das Wandern

Embedded Computing Conference 2014 Embedded UI Qt5

L4Android !!!!! Ein guter Lösungsansatz? Cassian Spägele FH Kaiserslautern Fach: Studienarbeit Prof. A.Müller

Kurzanleitung für das Bezahlen mit dem Kartenlesegerät von VASCO girocard im Internet

Systeme 1. Kapitel 10. Virtualisierung

CADEMIA: Einrichtung Ihres Computers unter Mac OS X

Autorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente

s.beat DAP-10X White Paper USB Stromversorgung am Apple Macintosh und deren Auswirkung

HebRech auf Mac OS X

Projekt MasterMind Systemspezifikation

2 Wege Smartphone Steuerung für KW-V30BT / 50BT. Technische Information

Vaadin TouchKit. W3L AG

4D Server v12 64-bit Version BETA VERSION

MOBILE ON POWER MACHEN SIE IHRE ANWENDUNGEN MOBIL?!

Einführung in Betriebssysteme

P-touch Transfer Manager verwenden

Xcode/Cocoa/Objective-C Crashkurs Programmieren unter Mac OS X

Installation von NetBeans inkl. Glassfish Anwendungs-Server

Point of Information. Point of Information

Installation des USB HD-Audio Treibers 24/192 (Tenor-Plattform) Einstellungen des Betriebssystems

Meine Welt auf einen Blick erleben.

Cross-Platform Apps mit HTML5/JS/CSS/PhoneGap

Neues CAS genesisworld Berechnungsmodell Unsere Jubiläums-Aktion 20 Jahre MERIDIAN

Installation. Windows. E-mP Ernst-mechanische Produkte Auf die Bell Linkenheim-Hochstetten Deutschland

Transkript:

Stephan Zeisberg NEXT GENERATION MOBILE PHONE PLATFORMS Ein Einblick in die Systemarchitekturen aktueller Smartphones 1

Motivation Technologischer Stillstand in der Entwicklung mobiler Betriebssysteme unzureichende Unterstützung mobiler Datendienste schlecht bedienbare Geräte (kleine Displays, Übertragungsgeschwindigkeit) geringer Funktionsumfang gestiegene Anforderungen aufgrund neuer Hardware Next Generation Mobile Phone Platforms leichte Bedienbarkeit höhere Individualisierung Verstärkung der mobilen Onlinenutzung hoher Funktionsumfang 2

T-Mobile G1 & iphone 3G & Neo Freerunner [Bildquelle(mitte):http://www.apple.com/iphone] [Bildquelle(links)://www.portel.de/fileadmin/pics/T-Z/T-Mobile-G1-1-09.jpg] [Bildquelle(rechts):http://mobile-place.info/home/images/stories/vijesti/openmoko/neo-001.jpg] 3

T-Mobile G1 & iphone 3G & Neo Freerunner Hardware der Smartphones 4

Smartphones - Allgemein Apple iphone 3G T-Mobile G1 Betriebssystem iphone OS 4-Schichtenarchitektur(Core OS, Core Services, Media, Cocoa Touch) hybrider Kerneltyp Entwicklung unterliegt Apple Betriebssystem Android OS Neo Freerunner 5-Schichtenarchitektur(Kernel, Libraries, Android Runtime, Application Framework, Applications) monolithischer Kerneltyp es erlaubt Entwicklern Anwendungen in Java zu schreiben Betriebssystem Openmoko 4-Schichtenarchitektur(Kernel, Core Services, User Interface, Application Framework) monolithischer Kerneltyp Softwareentwicklung erfolgt mit den in der Linux-Welt bekannten Sprachen 5

iphone OS Systemarchitektur Spezifikation iphone OS System-Stack-Diagramm für Systemarchitektur ausschlaggebend sind unteren 2 Ebenen beinhalten die fundamentalen Schnittstellen dies sind C-basiert darunter z.b. Netzwerkdienste, Bonjour-Services [Bildquelle:http://developer.apple.com/iphone/gettingstarted/docs/iphoneosoverview.action] 6

iphone OS Systemarchitektur Spezifikation die Kernelumgebung darin befinden sich Treiber und Basisschnittstellen Kernel ist XNU-Kernel hybrid Kernel, FreeBSD + Mach-3.0 weitere Aufgaben: FreeBSD : Rechte-Multiusermanagement, Prozessaufteilung, TCP/IP, Synchronisierung Mach-3.0 : Speichermanagement, Multitasking, Debugging Dateisystem- sowie Netzwerkverwaltung interne Prozesskommunikation 7

iphone OS Core Services stellt fundamentale Systemdienste für Applikationen bereit unterteilt in Frameworks Adress Book Framework beinhaltet Kontaktinformationen, eigenes UI Core Foundation Framework Dateimanagement, Servicefunktionen CFNetwork Framework Netzwerkkommunikation(FTP, HTTP) Security Framework Datenschutz - Core Location Framework Positionsbestimmung Entwickelt wird in Programmiersprache Objective-C objektorientierte Erweiterung der Sprache C, angelehnt an Smalltalk 8

Android Systemarchitektur Spezifikation System-Stack-Diagramm beschreibt die Android Systemarchitektur [Bildquelle:http://code.google.com/android/what-is-android.html 9

Android Linux Kernel modifizierter Linux Kernel Grundlage ist Kernel 2.6.24 Warum Linux Kernel? immenser Funktionsumfang + Linux Kernel ist Opensource ausgereiftes Speicher- und Prozessmanagement bewährtes Treiber- und Sicherheitsmodell Modifizierungen: keine GNU libc Unterstützung Alarmfunktion, Low-Memory-Killer, Kerneldebugger erweitertes Energiemanagement 10

Android Libraries Bionic Libc nicht kompatibel zur GNU libc Bibliothek Geschwindigkeitsverbesserungen Function Libraries (SQLite) embedded optimierte Datenbank (Webkit) Open Source Browser Grundlage (Media Framework) Unterstützung für Audio/Video Surface Manager Surface Flinger regelt Applikationszugriff auf das Display Audio Flinger regelt den Output von Audiogeräten Hardware Abstraction Libraries definieren Schnittstellen, welche Android verpflichten Hardwaretreiber zu implementieren 11

Android Android Runtime Core Libraries enthalten Programmierschnittstellen für Java-Programme diese unterstützen Entwicklungshilfen für z.b. Daten- und Netzwerkzugriff Dalvik Virtual Machine Alle Applikationen laufen auf dieser virtuellen Maschine führt Java Anwendungen aus wandelt Java Applikation in.dex um.dex ist embedded optimiert Programmiersprache zur Applikationserstellung ist Java 12

Openmoko Systemarchitektur Spezifikation [Bildquelle:http://www.linuxdevices.com/files/misc/openmoko_2007_software_stack.jpg] 13

Openmoko Linux Kernel & Core Services Vanilla 2.6.21.3 Linux Kernel embedded optimiert erweitert durch z.b. USB-, Touchscreen- sowie SD-Unterstützung Ebene für Systemdienste Module und Daemons für GSM und GPS Dbus System(ipc) Gerätemanager Bluetooth 14

Openmoko User Interface & Application Framework Das User Interface Windowmanager matchbox Audiofunktionalität gewährleistet durch ALSA Gimp Toolkit, Bibliothek zur Erstellung einer GUI Application Framework libmokocore senden von Nachrichten zwischen Applikationen Speicherung von Konfigurationsdaten libmokoui regelt das einheitliche Aussehen der Applikationen PIM Kontaktdatenverwaltung libmokonet Schnittstelle für Netzwerkverbindungen über Bluetooth und GPRS 15

Systemarchitektur Vergleich Kernel Vergleich Android und Openmoko benutzen aktuelle Linux Kernel beide Hersteller optimierten den Linux Kernel Kernel ist Open Source Version 2.6 wurde für embedded Betrieb verbessert Linux Kern bietet bereits integrierte Treiber iphone OS verwendet hybriden XNU Kernel leicht erweiterbar aufgrund seiner Struktur Kernel Aufbau bringt hohe Geschwindigkeit Linux Kernel ist monolitisch, kann somit Vorteile eines Mikrokernels nicht nutzen Mikrokernel ist langsamer 16

Systemarchitektur Vergleich Vergleich Programmierung iphone OS verwendet Objective-C weitreichend unbekannt Android benutzt Java, allerdings mit Dalvik Bytecode Openmoko unterstützt in Linux-Welt bekannten Programmiersprachen(Python,C,..) Alle Hersteller stellen ein SDK zur Verfügung Libraries Alle Plattformen wurden ähnlich ausgestattet(sqlite, Webkit) Bibliotheken wurden optimiert für den Einsatz auf Smartphones 17

Systemarchitektur Vergleich Vergleich der Ziele Openmoko Projekt und Konzept hebt sich von Android und dem iphone OS ab Alle Bestandteile des Betriebssystems sind quelloffen Neo Freerunner Schaltpläne sowie CAD-Zeichnungen wurden veröffentlicht Fokus liegt auf benutzereigener Konfigurierbarkeit Android auf ersten Blick ähnliche Ziele wie Openmoko keine grenzenlose Offenheit wie bei Openmoko Applikationsentwicklung nur in Java(in Verbindung mit DVM) unter dem Android Open Source Projekt wurde Kernel offengelegt Google und die OHA wollen Online Applikation publik machen iphone OS ist Gegenpart der anderen Plattformen Systementwicklung unterliegt allein Apple entwicklerunfreundlich, nur in Verbindung mit Macintosh Computer möglich 18

Zusammenfassung Allgemein Modifizierung bereits vorhandener Software(Kernel, Libraries) Optimierung der Systembestandteile für den embedded Einsatz(z.B. Geschwindigkeit) OS X iphone Android iphone OS ist ein Übertrag von Mac OS X auf ein eingebettetes System hybrid-kernel Openmoko abgeschottete Entwicklung hohe Hardwarekompatibilität durch Systemaufbau teilweise quelloffen Open-Source Philosophie unausgereifte Software 19

Ende Danke!! Fragen? 20