Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
11
Software ubiquitärer SystemeFazit
Olaf SpinczykArbeitsgruppe Eingebettete Systemsoftware
Lehrstuhl für Informatik 12TU Dortmund [email protected]://ess.cs.uni-dortmund.de/~os/
http://ess.cs.tu-dortmund.de/DE/Teaching/SS2011/SuS/
07.1 – Fazit 22
Inhalt● Highlights
● Querschnittsthemen
● Fazit
07.1 – Fazit 33
Beginn 1996 geschätzt auf 2005-2020Beginn 1996 geschätzt auf 2005-2020
Highlight: Die Vision
„Ubiquitous Computing enhances computer use by making many computers available throughout the physical environment, while making them effectively invisible to the user.
Mark Weiser, 1993 [1] Quelle: Xerox PARC
Phase I:Mainframe Era
Phase II:PC Era
Übergang:Internet Era
Phase III:UC Era
07.1 – Fazit 44
Highlight: Es funktioniert – bereits heute● … in abgeschlossenen Umgebungen
wie Kraftfahrzeugen:● Kostengünstige, robuste Microcontroller
● Statisch konfigurierbare Betriebssysteme
● Middleware mit minimalem Overhead
- Lose Kopplung der Systemkomponenten
- Klar definierte Schnittstellen auf niedriger Abstraktionsebene
- Kontext-Überwachung und Kontext-gewahre Komponenten
- Netzwerkweites Energiemanagement
● Komplexe verteilte Fahrzeugfunktionen
Quelle: Der neue Maybach, ATZ/MTZ SonderheftSeptember 2002, Seite 125
Der Prototyp für die ubiquitären Systeme von morgen?Der Prototyp für die ubiquitären Systeme von morgen?
07.1 – Fazit 55
Highlight: Der Gegensatz(„Device Profile for Web Services“)
● Verfolgt zusätzlich folgende Ziele:
● Nutzung von Web Service-Technologien- Services werden mittels WSDL beschrieben
● Integration von ubiquitären Geräten in Geschäftsprozesse● Erhöhte Sicherheit
● DPWS wurde von Microsoft vorgeschlagen (2004)
● und in Windows Vista und Windows Embedded implementiert
Spannungsfeld: Interoperabilität und Flexibilität vs. KostenSpannungsfeld: Interoperabilität und Flexibilität vs. Kosten
07.1 – Fazit 66
Highlight: Programmiermodelle● Kontext-gewahres
Programmieren
● Deklaratives Programmieren
● Aspektorientiertes undMerkmalorientiertesProgrammieren
● Generisches Programmieren● Modellgetriebenes
Programmieren
Sensor NetworkSensor Network
TinyDBQuery, Trigger
Data
AppSELECT nodeid FROM sensors WHERE mag > threshEPOCH DURATION 64ms
CCiiAOAO
07.1 – Fazit 77
Inhalt● Highlights
● Querschnittsthemen
● Fazit
07.1 – Fazit 88
Überblick: Kapitel
Hardware
Betriebssystem
Middleware
Datenhaltung
Anwendung
MicrocontrollerInstruktionssatzFunktechnologienSensoren
OSEK/AUTOSARTinyOS
MPUCiAO Virtualisierung
OSEK/COMAUTOSAR RTE
RPCUPNP
Peer-to-peer
TinyDBFAME-DBMS
COUGARSQL
Datenanalyse
Einführung
Abschluss
Java PlattformenModel-Driven Everyware-Prinzipien
07.1 – Fazit 99
Überblick: Querschnittsthemen
Hardware
Betriebssystem
Middleware
Datenhaltung
Anwendung
MicrocontrollerInstruktionssatzFunktechnologienSensoren
OSEK/AUTOSARTinyOS
MPUCiAO Virtualisierung
OSEK/COMAUTOSAR RTE
RPCUPNP
Peer-to-peer
TinyDBFAME-DBMS
COUGARSQL
Datenanalyse
Einführung
Abschluss
Java PlattformenModel-Driven Everyware-Prinzipien
Ressourcenverbrauch:Speicher, Energie
SicherheitKontext
GPSGPS
Indoor-Indoor-Lokali-Lokali-sierungsierung
Adap-Adap-tierungtierung
MPUMPU
VirtuelleVirtuelleMaschi-Maschi-nennen
Krypto-Krypto-graphiegraphie
... auf der Suche nach Gemeinsamkeitenund Konstruktionsprinzipien
Cooperative I/OCooperative I/O
ProduktlinienProduktlinien
Thumb-Instr.Thumb-Instr.
AOP, FOPAOP, FOP
Low-PowerLow-PowerSleep ModesSleep Modes
StatischeStatischeAnalyseAnalyse
07.1 – Fazit 1010
Thema: Sicherheit● In hohem Maße kritisch bei ubiquitären Systemen
● Security: Private Daten sollten z. B. nicht in falsche Hände geraten- Ubiquitäre Systeme/Anwendungen basieren häufig auf Lokalisierung
- z.B. Mobilfunk!
● Safety: Fehlfunktionen im KFZ können z.B. Leben kosten
● Problem: Bei einfachen/ressourcensparenden Systemen häufig nicht gegeben, z.B. …● unverschlüsselte Kommunikation im KFZ● unverschlüsselte Kommunikation im Hausgerätenetz● Microcontroller implementieren meist keinen Speicherschutz
- Fehler werden nicht genügend isoliert
● Lösungen:● Technologie prinzipiell vorhanden● Bewusstsein (noch) nicht (überall)
07.1 – Fazit 1111
Thema: KontextUnterschiedlicher Einfluss auf die verschiedenen Ebenen
● Anwendungen: reagieren auf Kontextänderungen● Publish/Subscribe-Modelle, Ereignisgesteuerte Programme● Spezielle Programmiermodelle,
z.B. „Context-Oriented Programming“ [2]
● Middleware: Netzwerkweite Verfügbarkeit von Kontext● Verwendung von Ontologien● Beachtung der Lokalität zwecks Skalierbarkeit
● Datenhaltung/Betriebssystem● Dynamische Anpassbarkeit: Treiber, Protokolle, Verschlüsselung
- Ressourcen sparen
● Zugriffsfunktionen auf lokalen Kontext
● Hardware: Notwendige Sensorik
07.1 – Fazit 1212
Thema: Speicherplatz sparen● Ähnliche Ansätze auf allen Ebenen
● Statische anwendungsgetriebene Konfigurierung● Dynamische Rekonfigurierung● Expliziter Umgang mit Variabilität: Produktlinien● Entwurfs- und Programmiertechniken zur Modularisierung
- Gewöhnliche Belange: OOP, Komponentenmodelle, ...
- Querschneidende Belange: AOP, FOP
● Problem: Ebenenübergreifende Optimierung● Wie wirkt sich eine Konfigurationsentscheidung auf den
Speicherplatzverbrauch anderer Ebenen aus?● Speicherplatzverbrauchsmodelle existieren nicht.
● Lösungen: Aktuelle Forschung● z.B. Feedback-Ansatz [1]
07.1 – Fazit 1313
Thema: Energie sparen● Unterschiedliche Verfahren auf allen Ebenen, z.B. ...
● Betriebssystem: Schlafmodus-Steuerung● Middleware: Sandman Cluster Head Knoten● Datenhaltung: Batterieabhängige Anfragefrequenz
● Problem: fehlende Energiemodelle● typischerweise nicht einmal für die Hardwareebene vorhanden
- dementsprechend auch nicht für Betriebssystem, Middleware undDatenhaltung
● keine Grundlage für generische energiegewahre Algorithmen- existierende Ansätze sind Speziallösungen (z.B. TinyDB/TinyOS)
● Variabilität und Komplexität der Schichten erschweren das Problem● Trade-offs bzgl. anderer Ressourcen sind zu berücksichtigen
● Lösungen: unbekannt
07.1 – Fazit 1414
Inhalt● Highlights
● Querschnittsthemen
● Fazit
07.1 – Fazit 1515
Fazit: Viele Fragen● Rechner werden die Umwelt immer weiter durchdringen
● Aber wird Weisers Vision wahr?● Soll sie wahr werden?
● Diverse Forscher und Firmen arbeiten daran● Wie wird die ubiquitäre Hardware aussehen?● Wird die Frage der Sicherheit gelöst?● Werden ubiquitäre Systeme billig genug sein?
● Es gibt viele Forschungsthemen, u. a. interessiert uns ...● Ressourcenschonende Mechanismen für statische und dynamische
Konfigurierung● Komposition von Produktlinien● Programmiertechniken● Schichtübergreifendes Ressourcenmanagement
- Modellierung von Ressourcen unter Berücksichtigung von Variabilität
- Reflektionsmechanismen
07.1 – Fazit 1616
Literatur[1] J. Sincero, O. Spinczyk, and W. Schröder-Preikschat, On the
Configuration of Non-Functional Properties in Software Product Lines, In J. Lee, I. John, T. Aoki, and J. D. Mcgregor (eds.) Proceedings of the 11th International Software Product Line Conference, The Second Volume (SPLC 2007), pages 167-173, isbn 978-4-7649-0342-5, Kyoto, Japan, 2007.
[2] M. Appeltauer, R. Hirschfeld, and T. Rho. Dedicated Programming Support for Context-aware Ubiquitous Applications. In UBICOMM 2008: Proceedings of the 2nd International Conference on Mobile Ubiquitous Computing, Systems, Services and Technologies, pages 38--43, Washington, DC, USA, 2008. IEEE Computer Society Press.