Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
Software ubiquitärer Systeme (SuS)
Anwendungen
https://ess.cs.tu-dortmund.de/DE/Teaching/SS2016/SuS/
Horst Schirmeier, Olaf Spinczyk
[email protected]://ess.cs.tu-dortmund.de/~hsc
AG Eingebettete SystemsoftwareInformatik 12, TU Dortmund
13.04.2016 SuS: 01.2 Anwendungen 2
Inhalt● Wiederholung● Herausforderungen● Geräte- und Anwendungsklassen● Fazit und Zusammenfassung
13.04.2016 SuS: 01.2 Anwendungen 3
Inhalt● Wiederholung● Herausforderungen● Geräte- und Anwendungsklassen● Fazit und Zusammenfassung
13.04.2016 SuS: 01.2 Anwendungen 4
Wiederholung (1)
„For thirty years most interface design, and most computer design, has been headed down the path of the 'dramatic' machine. Its highest ideal is to make a computer so exciting, so wonderful, so interesting, that we never want to be without it.
A less-traveled path I call the 'invisible'; its highest ideal is to make a computer so imbedded, so fitting, so natural, that we use it without even thinking about it.“
Mark Weiser, http://sandbox.xerox.com/ubicomp/
... noch ein Zitat vom „Vater des Ubiquitous Computing“
13.04.2016 SuS: 01.2 Anwendungen 5
Wiederholung (2)Charakteristische Eigenschaften:
● Viele eingebettete oder tragbare Geräte, die transparent kommunizieren können, um den Benutzern die verschiedensten Dienste anbieten zu können.
● Geräte verfügen typischerweise über eine stromsparende Nahbereichsfunktechnik.
● Verschiedenste integrierte Sensoren versorgen die Geräte mit den benötigten Informationen über die Umwelt.
Quelle: Yolande Berbers, KU Leuven,Vortrag zu Ubiquitous Computing, 2008
13.04.2016 SuS: 01.2 Anwendungen 6
Inhalt● Wiederholung● Herausforderungen● Geräte- und Anwendungsklassen● Fazit und Zusammenfassung
13.04.2016 SuS: 01.2 Anwendungen 7
Herausforderungen... an die (System-)Software
● Kontextabhängigkeit● Nutzerschnittstellen● Verteilte Systeme● Mobilität● Skalierbarkeit● Verlässlichkeit● Interoperabilität● „Entdeckung“ von Ressourcen und Diensten● Datenschutz und -sicherheit
13.04.2016 SuS: 01.2 Anwendungen 8
Kontextabhängigkeit(context awareness)
● Ziel– Computer sollen genug Wissen über die aktuelle Situation des Nutzers
ansammeln können, um in diesem Moment nützliche Dienste und Informationen bereitstellen zu können.
● Kontext– Repräsentiert die reale Welt im ubiquitären Rechnersystem– Besteht aus vielen Teilen, z.B. ...
● Position (GPS-Koordinate, Raumnummer)● Rolle und Verhalten des aktuellen Benutzers (Admin, User, Hacker)● In der Nähe befindliche Geräte, Kommunikationsbedingungen● Sensordaten (Temperatur, Windgeschwindigkeit, ...)● Energievorrat
13.04.2016 SuS: 01.2 Anwendungen 9
Nutzerschnittstellen● Sind bei ubiquitären Systemen sehr unterschiedlich ...
– explizit● Der Benutzer merkt, dass er es mit einem Computer zu tun hat
– nicht explizit● Der Benutzer interagiert lediglich mit einer (intelligenten) Umgebung
● Tastaturen und Mäuse werden verdrängt
Schrifterkennung
Gesten und Mimik
Spracheingabe und -ausgabe
Biometrische Merkmale
Lokalisierung
13.04.2016 SuS: 01.2 Anwendungen 10
Verteilte SystemeAufgaben werden durch kooperierende Rechner erbracht
● Zusätzliche Fehlerquellen– Übertragungsfehler– Verlust von Nachrichten
– Doppelte Nachrichten
● Schwierigere Koordinierung– Beispiel: globale Zeit
● Hohe Dynamik– Rechner kommen und gehen
● Oft keine zentrale Instanz– Client/Server → Peer-to-peer
13.04.2016 SuS: 01.2 Anwendungen 11
Mobilität● Möglich durch drahtlose Kommunikationstechnologien
– Bluetooth, Zigbee, WLAN, Funk
● Führt aber auch zu neuen Schwierigkeiten– Sparsamer Umgang mit Energie
– Mobile Netze● Geringe Bandbreiten● Umgang mit ausbleibender Konnektivität● Netzpartitionierung● “Ad Hoc Networks“
– Kleine Geräte mit kleinen Anzeigen
13.04.2016 SuS: 01.2 Anwendungen 12
SkalierbarkeitDutzende Computer pro Kubikmeter erfordern skalierbare …
● Netzwerktopologien● Kommunikationsprotokolle● Routing-Verfahren● Namensdienste● Verteilte Algorithmen
13.04.2016 SuS: 01.2 Anwendungen 13
VerlässlichkeitEssentiell, da wir uns in eine Abhängigkeit begeben.
● Voraussetzungen– Korrektes Verhalten– Rechtzeitigkeit
– Fehlertoleranz
● Maßnahmen– Formale Methoden der Systementwicklung– Redundanz in Hard- und Software– Selbstbeobachtung und Selbstheilung
● Stichwort „Organic Computing“– Automatisierte WCET-Analyse, Echtzeitfähige Software
13.04.2016 SuS: 01.2 Anwendungen 14
Interoperabilität● Es gibt diverse Technologien
für die Realisierung verteilter Systeme, z.B. …– CORBA
– JINI– Java RMI– Port/Sockets
– DLNA/UPNP– Web Services
● Ohne übergreifende Interoperabilität sind ubiquitäre Systeme immer nur Insellösungen.
13.04.2016 SuS: 01.2 Anwendungen 15
„Entdeckung“ von Diensten(„Service Discovery“)
● Geräte und Dienste müssen sich selbst beschreiben● Geräte und Dienste müssen sich ihre Kooperationspartner
automatisch selbst suchen● Ein dezentrales Netzwerkmanagement muss auch das
Verschwinden von Geräten und Diensten bemerken● Beispiele
– Simple Service Discovery Protocol (benutzt von UPnP)– Zeroconf– Service Location Protocol (SLP)
– Bluetooth Service Discovery Protocol (SDP)
13.04.2016 SuS: 01.2 Anwendungen 16
Datenschutz und -sicherheit● Private Daten müssen vor unautorisierten Zugriffen geschützt
werden– Benutzer müssen kontrollieren können,
welche Daten Sie für andere freigeben– Vermeidung einer Überforderung der Benutzer
● Benutzer müssen sich authentifizieren● Potentiell keine vertrauenswürdige Instanz erreichbar
13.04.2016 SuS: 01.2 Anwendungen 17
Inhalt● Wiederholung● Herausforderungen● Geräte- und Anwendungsklassen● Fazit und Zusammenfassung
13.04.2016 SuS: 01.2 Anwendungen 18
Geräte- und Anwendungsklassenmitmit expliziter expliziterBenutzerschnittstelleBenutzerschnittstelle
ohneohne explizite expliziteBenutzerschnittstelleBenutzerschnittstelle
mobilmobil
stationärstationär
Smartphone
Internet Tablet
Personal Digital Assistant
Smart Card RFID Tag
Smart Environments/Ambient Intelligence
Automotive ECUSmart Objects
Media Center (PC)
RouterVideo Conferencing
Sensor Networks
Networked Appliances
Smart Floor
DigitalerBilderrahmen
eBook
Beispiele
Beispiele
Augmented RealityNavigation
Fax/Drucker/Scanner
Smart Dust
Toll Collect
13.04.2016 SuS: 01.2 Anwendungen 19
Inhalt● Wiederholung● Herausforderungen● Geräte- und Anwendungsklassen
– Mobil mit expliziter Benutzerschnittstelle– Mobil ohne explizite Benutzerschnittstelle– Stationär mit expliziter Benutzerschnittstelle
– Stationär ohne explizite Benutzerschnittstelle
● Fazit und Zusammenfassung
13.04.2016 SuS: 01.2 Anwendungen 20
Mobil mit Benutzerschnittstelle (1)... das ubiquitäre „Mobile Computing“
● Beispiel Amazon Kindle eBook– Entspanntes Lesen von Texten
bei jeder Beleuchtung durch„e-Ink Technologie“
– Gut handhabbar, da flach und leicht– Einfache Bedienung
● wenige Tasten– Online-Portal
● Finden und ggf. Kaufen von Büchern oder Artikeln– Akkulaufzeit: Ein Monat!
➔ PARC Pads sind Realität
Quelle: amazon.de (04/2012)
13.04.2016 SuS: 01.2 Anwendungen 21
Mobil mit Benutzerschnittstelle (2)... das ubiquitäre „Mobile Computing“
● Beispiel Medion GoPal 4435– Navigationssystem für KFZ– Sprachsteuerung und -ausgabe
– TMCpro– Bluetooth-Freisprecheinrichtung– SMS-Integration
● Nachfolger Medion GoPal 4635– GSM-Kommunikation für …
● erweiterte Verkehrsinformationen● Benzinpreise in der Umgebung● aktuellen Wetterbericht● freie Parkplätze in der Nähe
Quelle: Heise Autos
13.04.2016 SuS: 01.2 Anwendungen 22
Mobil mit Benutzerschnittstelle (3)... das ubiquitäre „Mobile Computing“
● Beispiel Apple iPhone 6S– iPod (Musik & Video, online Store)– UHD-Video/Foto
– 3D-Spiele– Mobiles Internet
● Web, Email– Navigation (GPS + Karten)– Vielzweck UNIX-Betriebssystem
für die Ausführung beliebiger Applikationen– Mobiltelefon
● Ein „Personal Computer“ für unterwegs– sicherlich kein „Ubiquitous Computing“ im Sinne von Mark Weiser
Quelle: Apple
13.04.2016 SuS: 01.2 Anwendungen 23
Mobil mit Benutzerschnittstelle (4)Name Amazon Kindle Medion 4635 Apple iPhoneKlasse eBook-Leser Navi Smart PhoneGröße 166x114x9mm 130x78x14mm 138x67x7,1mmGewicht 170g 165g 143gCPU ARM 800MHz ARM 400MHz A9 2*1.85GHzRAM 256MB (?) 128MB 2GBFLASH 2GB 2GB 16-128GBAnzeige 4,3” 480x272
Funk WLAN
Sensoren
Preis 49 € 150 €* 615 €
6” 800x600eInk grau
4,7” 1334x7503D Touch
GSM,TMCpro
WLAN, Bt,GSM/UTMS/LTE
GPS,Mikrophon
Helligkeit,Annäherung,Beschleunigung,GPS, Kamera,Mikrophon
* Preisinformation veraltet* Preisinformation veraltet
13.04.2016 SuS: 01.2 Anwendungen 24
Mobil mit Benutzerschnittstelle (5)Diskussion Hardware
● Gemeinsamkeiten– Stromsparende CPUs (häufig ARM), Funktechnologien und Displays– Drahtlose Vernetzung (LTE/UMTS/GPRS, Radio, WLAN, Bluetooth)
● Spezialisierte „ubiquitäre“ Rechnersysteme– Geringerer Preis
– Einfachere Bedienung (spezielle Bedienelemente oder Sensorik)
● Mobiler „Personal Computer“ (à la Apple iPhone)– Hoher Preis– Vielseitigkeit➔ Verkauft sich (noch) ausgezeichnet
13.04.2016 SuS: 01.2 Anwendungen 25
Mobil mit Benutzerschnittstelle (6)Systemsoftware
● Anforderungen– Unterstützung stromsparender Hardware– Kurze Startzeiten
– Bewusster Umgang mit Speicher– Oft Einbenutzer-/Mehrprogrammbetrieb– Interoperabilität, Einhaltung von Standards
● Typische Vertreter– Von der Stange („COTS“)
– Windows RT/CE/Mobile, Symbian OS, Palm OS,angepasste Linux-Systeme (Android), MacOS X (ARM),Blackberry Betriebssystem
13.04.2016 SuS: 01.2 Anwendungen 26
Inhalt● Wiederholung● Herausforderungen● Geräte- und Anwendungsklassen
– Mobil mit expliziter Benutzerschnittstelle– Mobil ohne explizite Benutzerschnittstelle– Stationär mit expliziter Benutzerschnittstelle
– Stationär ohne explizite Benutzerschnittstelle
● Fazit und Zusammenfassung
13.04.2016 SuS: 01.2 Anwendungen 27
Mobil ohne Benutzerschnittstelle (1)... die Welt der „Sensorknoten“
● Beispiel Body Sensor Network [1]– Kontinuierliche Überwachung und
Analyse physiologischer Daten– Früherkennung kardiologischer Notfälle– Sensoren am Körper, im Körper
oder an der Kleidung („wearable“)
13.04.2016 SuS: 01.2 Anwendungen 28
Mobil ohne Benutzerschnittstelle (2)... die Welt der „Sensorknoten“
● Beispiel Shooter Localization [2](Experiment der Vanderbilt University)
– 60 akustischen Sensoren– Testgebiet von 1 Hektar– Lokalisierung eines Schützen
auf einen Meter genau!– Selbst, ob der Schütze
kniete oder stand, wurdedetektiert.
[Demo-Video]
13.04.2016 SuS: 01.2 Anwendungen 29
Mobil ohne Benutzerschnittstelle (3)... die Welt der „Sensorknoten“
● Beispiel moderne Kraftfahrzeuge– Netzwerk von „KFZ-Steuergeräten“– Diverse Sensoren
● Einklemmschutz● Aufprall● Abstand● Regen
– Innovative Fahrzeugfunktionenerfordern heutztage praktischimmer Software
– Die meisten Steuergerätesind unsichtbar Quelle: Der neue Maybach, ATZ/MTZ Sonderheft
September 2002, Seite 125
13.04.2016 SuS: 01.2 Anwendungen 30
Mobil ohne Benutzerschnittstelle (4)... Hardware
● Body Sensor Network [1]– 16 Bit TI MSP430-Mikrocontroller, ultra low power RISC
● 60 KB+256B FLASH, 2KB RAM, 512 KB externer FLASH– Funkmodul CC2420, 250kbps, max. 50m
● Shooter Localization [2]– 8 Bit Atmel ATMEGA128-Mikrocontroller
● 128KB FLASH, 4KB RAM– Funkmodul CC1000, 38.4kbps, max. 200ft– Spezieller Sensor mit FPGA für akustische Analyse
● Moderne Kraftfahrzeuge– Beispiel BMW-Gangwahlschalter
● 16 Bit Freescale 9S12-Mikrocontroller● 128 KB FLASH, 8 KB RAM● CAN-Bus-Controller
Mica2-Plattformder UC Berkeley
13.04.2016 SuS: 01.2 Anwendungen 31
Mobil ohne Benutzerschnittstelle (5)Diskussion Hardware
● Gemeinsamkeiten– Gnadenlose Preisminimierung
● Massenproduktion (Stichwort „Smart Dust“)– Stromsparen
● CPUs● Funktechnologie
– Minimierung von Größe, Gewicht und Fertigungsaufwand● Mikrocontroller integrieren CPU, Speicher und E/A-Module
● Unterschiede– Prozessor (Technologie, Modell, …)
● Im Auto z.B. je nach Aufgabe 8 bis 32 Bit– Ein-/Ausgabe-Fähigkeiten– Speicherausbau
13.04.2016 SuS: 01.2 Anwendungen 32
Mobil ohne Benutzerschnittstelle (6)Systemsoftware
● Anforderungen– Unterstützung stromsparender Hardware– Minimaler Speicherplatzverbrauch (wenige KB!)
– Umgang mit unterschiedlicher Hardware– Vielfältige, aber einfache Anwendungen– ggf. Ad-Hoc Vernetzung, unzuverlässige Kommunikation
● Typische Vertreter– Von der Stange („COTS“)
● TinyOS, eCos, OSEK, BTnut, ..., TinyDB– Spezielle anwendungsspezifische Systemsoftware
● ca. 50% des Marktes
13.04.2016 SuS: 01.2 Anwendungen 33
Inhalt● Wiederholung● Herausforderungen● Geräte- und Anwendungsklassen
– Mobil mit expliziter Benutzerschnittstelle– Mobil ohne explizite Benutzerschnittstelle– Stationär mit expliziter Benutzerschnittstelle– Stationär ohne explizite Benutzerschnittstelle
● Fazit und Zusammenfassung
13.04.2016 SuS: 01.2 Anwendungen 34
Stationär mit Benutzerschnittstelle (1)... dicht am PC
● Beispiel Geldautomat– Abholung von Bargeld
mit Selbstbedienung– Hohe Sicherheitsanforderungen– Vernetzung mit verschiedenen Banken– Akzeptanz diverser Geld- und Kreditkarten
➔ Allgegenwärtig und unentbehrlich fürdie meisten von uns.
Foto
: Flic
kr, F
astJ
ack,
Cre
ativ
e C
omm
ons
Que
lle: W
ikip
edia
,G
NU
Fre
e D
oc. L
ic.
13.04.2016 SuS: 01.2 Anwendungen 35
Stationär mit Benutzerschnittstelle (2)... dicht am PC
● Beispiel Internet-Radio– Spielt Datenströme aus
dem Internet ab● LAN oder verschlüsselte
WLAN-Verbindung– Empfängt klassisches Radio– Spielt Musik von
Netzwerkdateisystemen (PC, NAS)● sucht die Musikquellen automatisch
Quelle: NOXON Media GmbH
13.04.2016 SuS: 01.2 Anwendungen 36
Stationär mit Benutzerschnittstelle (3)... Hardware
● Geldautomat*– Industrie-PC
● x86 CPU 3GHz, 128MB RAM, 80GB Platte, 1.44MB Floppy, CDROM● Ethernet● Drucker, Pin-Lesegeräte, Kartenleser, Kamera, Sound-Karte
– Mechanischer Schutz
● Internet-Radio*– Atmel ARM7-CPU
● 512KB FLASH und diverse Peripherieeinheiten– 64MB externer RAM, 4MB externer FLASH
– Ethernet-Controller
– Audio-Decoder-Chip für diverse Formate (MP3, AAC, ...)
– Realtime-Clock-Chip
– MMC/SD-Card-Leser
*typische Ausstattung, nichtdie der vorgestellten Geräte*typische Ausstattung, nichtdie der vorgestellten Geräte
13.04.2016 SuS: 01.2 Anwendungen 37
Stationär mit Benutzerschnittstelle (4)Diskussion Hardware
● Gemeinsamkeiten– Relativ leistungsstark– Standardkomponenten (z.B. PC)
mit spezieller anwendungsspezifischer Peripherie– Vernetzung (Standard-LAN/WLAN)– Hoher Preis
● Unterschiede– Größe, Lautstärke– Mechanischer Schutz vor Eingriffen– CPU-Typ, Speicherausbau– Peripherie
13.04.2016 SuS: 01.2 Anwendungen 38
Stationär mit Benutzerschnittstelle (5)Systemsoftware
● Anforderungen– Unterstützung spezifischer Peripherie (Treiber)– Unkomplizierte Anwendungsentwicklung
● z.B. direkt auf der Zielhardware– Automatische Verbindung mit kooperierenden Diensten
● im lokalen Netzwerk oder im Internet● sicher verschlüsselt
● Typische Vertreter– Von der Stange („COTS“)
– Windows, Windows Embedded,Linux, µC-Linux, eCos, ... UPnP, ..., Berkeley DB
13.04.2016 SuS: 01.2 Anwendungen 39
Inhalt● Wiederholung● Herausforderungen● Geräte- und Anwendungsklassen
– Mobil mit expliziter Benutzerschnittstelle– Mobil ohne explizite Benutzerschnittstelle– Stationär mit expliziter Benutzerschnittstelle
– Stationär ohne explizite Benutzerschnittstelle● Fazit und Zusammenfassung
13.04.2016 SuS: 01.2 Anwendungen 40
Stationär ohne Benutzerschnittstelle (1)... intelligente Umgebungen
● Beispiel PlaceLab [3]– Erforschung menschlicher Verhaltensweisen
in intelligenten Umgebungen– Kombination von Labor und Wohnung
● bewohnt von Freiwilligen● möglichst natürliche
Atmosphäre
13.04.2016 SuS: 01.2 Anwendungen 41
Stationär ohne Benutzerschnittstelle (2)... intelligente Umgebungen
● Beispiel PlaceLab – Technik– Vorgefertigte Komponenten,
z.B. Einbauschränke– Hunderte vernetzte Sensoren– Standardisierte Plattformen
13.04.2016 SuS: 01.2 Anwendungen 42
Stationär ohne Benutzerschnittstelle (3)... Hardware
● Dallas Semiconductor TINI Microcontroller(DSTINIS400 Board)– 8051-Befehlssatz– 2 MB SRAM, 2 MB FLASH– Vernetzung: 1-Draht-Sensornetzwerk, CAN, Ethernet
● 1-Draht-Sensornetzwerk– ca. 30 Sensoren pro „Kabinett“– 16/142 kbps– inkl. Stromversorgung
● zusätzlich drahtlose Sensoren
13.04.2016 SuS: 01.2 Anwendungen 43
Stationär ohne Benutzerschnittstelle (4)Diskussion Hardware
● Gemeinsamkeiten– Möglichst preisgünstig wegen hoher Stückzahl– Typisch 8 Bit-Technologie– Wenig Speicher (RAM)– Vernetzung (i.d.R. drahtgebunden)
● Unterschiede– Angeschlossene Sensorik– Art der Vernetzung– CPU-Typ und Speicherausbau
13.04.2016 SuS: 01.2 Anwendungen 44
Stationär ohne Benutzerschnittstelle (5)Systemsoftware
● Anforderungen– Minimaler Speicherplatzverbrauch– Umgang mit unterschiedlicher Hardware– Vielfältige, aber einfache Anwendungen– Vernetzung, geringe Bandbreite– Teils Echtzeit
● Typische Vertreter– Von der Stange („COTS“)
● TinyOS, TINI OS, eCos, OSEK, ..., TinyDB, spezielle JVMs– Spezielle anwendungsspezifische Systemsoftware
● ca. 50% des Marktes
13.04.2016 SuS: 01.2 Anwendungen 45
Inhalt● Wiederholung● Herausforderungen● Geräte- und Anwendungsklassen
– Mobil mit expliziter Benutzerschnittstelle– Mobil ohne explizite Benutzerschnittstelle– Stationär mit expliziter Benutzerschnittstelle
– Stationär ohne explizite Benutzerschnittstelle
● Fazit und Zusammenfassung
13.04.2016 SuS: 01.2 Anwendungen 46
Einordnung der Querschnittsthemenmitmit expliziter expliziterBenutzerschnittstelleBenutzerschnittstelle
ohneohne explizite expliziteBenutzerschnittstelleBenutzerschnittstelle
mobilmobil
stationärstationär
ThemenThemen
Sicherheit
Ressourcenverbrauch
Speicher
RessourcenverbrauchEnergie
Kontext
13.04.2016 SuS: 01.2 Anwendungen 47
Zusammenfassung● „Ubiquitous Computing“ ist ein vielfältiges Thema
– unterschiedliche Bereiche der Informatik
– unterschiedlichste Hardware
● Schwerpunkt der Lehrveranstaltung:Systemsoftware für kleine und mobile Systeme– Hohe Stückzahl– Geringer Preis– Wenig Speicher
– Minimaler Stromverbrauch
● Nur am Rande betrachtet:– Smartphones, Notebooks/Netbooks– PCs mit Steuerungsaufgaben
13.04.2016 SuS: 01.2 Anwendungen 48
Literatur[1] B.P.L. Lo, S. Thiemjarus, R. King, and G.-Z. Yang, Body Sensor
Networks – A Wireless Sensor Platform for Pervasive Healthcare Monitoring, In Adjunct Proceedings of the Third International Conference on Pervasive Computing, pp. 77-80, 2005
[2] G. Simon, M. Maroti, A. Ledeczi, G. Balogh, B. Kusy, A. Nadas, G. Pap, J. Sallai, and K. Frampton, Sensor Network-Based Countersniper System, SenSys '04, Baltimore, USA, November 2004
[3] Massachusetts Insitute of Technology, PlaceLab – A House_n + TIAX Initiative, November 2003