Ausführungszeiten. Worst-Case Execution-Time. Übung zur Vorlesung EZS. Zeitgeber Oszilloskop Diskussion



Ähnliche Dokumente
WCET Analyse. Florian Franzmann Tobias Klaus Peter Wägemann

Simple Scope. ecos-vertiefung. Florian Franzmann Tobias Klaus Peter Wägemann

EZS Handwerkszeug. Interaktion mit dem System Beobachtung. Interaktion mit dem System Beeinflussung. Hardware. Hardware. Simulator.

How-to: Webserver NAT. Securepoint Security System Version 2007nx

EZS Handwerkszeug. Implementierung der Übungsaufgaben. Programmieren in C/C++

Qualitätsmanagement im Projekt

Übungen zur Softwaretechnik

WCET-Analyseverfahren in der automobilen Softwareentwicklung

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Um sich zu registrieren, öffnen Sie die Internetseite und wählen Sie dort rechts oben

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Übungsbuch für den Grundkurs mit Tipps und Lösungen: Analysis

Überblick. Lineares Suchen

Konfiguration des eigenen TUphone-Profils über TISS

TeamSphere. Die Geo-Wissensdatenbank. Entwickelt von

SharePoint Demonstration

ecaros2 - Accountmanager

OSEK / OSEKtime Ausgewählte Kapitel eingebetteter Systeme

Grundfunktionen und Bedienung

Handbucherweiterung Zuschlag

PHP Kurs Online Kurs Analysten Programmierer Web PHP

Professionelle Seminare im Bereich MS-Office

BytStorMail SAAS als Relay

Neues Modul für individuelle Anlagen. Änderung bei den Postleitzahl-Mutationen

Ohne Fehler geht es nicht Doch wie viele Fehler sind erlaubt?

» Export von Stud.IP-Daten auf eigene Web-Seiten» Workshop Donnerstag,

Markovketten. Bsp. Page Ranking für Suchmaschinen. Wahlfach Entscheidung unter Risiko und stat. Datenanalyse

Technische Hochschule Köln Fakultät für Wirtschafts- und Rechtswissenschaften Prof. Dr. Arrenberg Raum 221, Tel

M-net -Adressen einrichten - Apple iphone

Klausur in Programmieren

Fragen zur GridVis MSSQL-Server

Sparda mobiletan Nutzungsanleitung

AZK 1- Freistil. Der Dialog "Arbeitszeitkonten" Grundsätzliches zum Dialog "Arbeitszeitkonten"

Internes Web-Portal der AK-Leiter

MSSQL Server Fragen GridVis

7. Übung - Datenbanken

Zentrum. Zentrum Ideenmanagement. Zentrum Ideenmanagement. Umfrage zur Nutzung von mobilen Endgeräten im Ideenmanagement

Handbuch für die DailyDeal Entwertungs-App

Vorlagen im Online Banking. Anlegen von Vorlagen

Windows Server 2008 (R2): Anwendungsplattform

Informationen zu Microsoft Lizenzen für Mitarbeiter/innen an der TU Graz

Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper)

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: MORE Projects GmbH

REACH-CLP-Helpdesk. Zulassung in der Lieferkette. Matti Sander, Bundesanstalt für Arbeitsschutz und Arbeitsmedizin

Softwaretests in Visual Studio 2010 Ultimate Vergleich mit Java-Testwerkzeugen. Alexander Schunk Marcel Teuber Henry Trobisch


PULSE REMOTE SERVICES DIE LEISTUNGEN IM ÜBERBLICK

PosterJet Port-Monitor-Patch

Übungen Programmieren 1 Felix Rohrer. Übungen

Anleitung zum Login. über die Mediteam- Homepage und zur Pflege von Praxisnachrichten

Kurzeinführung Fondsinfodienst Morningstar. (Stand: Mai 2012)

Windows 8 Lizenzierung in Szenarien

SWE12 Übungen Software-Engineering

Informationsblatt zur Anmeldung Abschlusspräsentation und zum Präsentationsportfolio (WS2015/16)

Whitebox-Tests: Allgemeines

1 Vom Problem zum Programm

Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing

Use Cases. Use Cases

Profil A 49,3 48,2 50,7 50,9 49,8 48,7 49,6 50,1 Profil B 51,8 49,6 53,2 51,1 51,1 53,4 50, ,5 51,7 48,8

Subpostfächer und Vertretungen für Unternehmen

Der Kontowecker: Einrichtung

DriveLock 6. DriveLock und das Windows Sicherheitsproblem mit LNK Dateien. CenterTools Software GmbH

In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können.

Individuelle Formulare

Klausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg.

Step by Step Webserver unter Windows Server von Christian Bartl

Die Anmeldung zum Prüfungsvorbereitungsportal von Westermann in fünf einfachen Schritten:

Diplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Schritt für Schritt zur Krankenstandsstatistik

DURCH VIDA ERZEUGTE PROTOKOLLDATEIEN 1 EINFÜHRUNG

LCM-6 Digital Signage Software

Leitfaden zur Installation von Bitbyters.WinShutdown

Projekte Packen, Kopieren und Versenden

Echtzeitanomalieerkennung für Internetdienste (Abschlussvortrag)

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

MetaQuotes Empfehlungen zum Gebrauch von

Mündliche Kommunikation /Sprecherziehung. 1. Studieneinheit Mündliche Kommunikation /Sprecherziehung

Dynamisches SQL. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München

Einfügen von Bildern innerhalb eines Beitrages

Verarbeitung der -Adressen

Rente = laufende Zahlungen, die in regelmäßigen Zeitabschnitten (periodisch) wiederkehren Rentenperiode = Zeitabstand zwischen zwei Rentenzahlungen

Elektromagnetische Verträglichkeit Versuch 1

SUB-ID- VERWALTUNG MIT GPP SETUP-GUIDE FÜR PUBLISHER

1. Einführung. 2. Weitere Konten anlegen

Der elektronische Stromzähler EDL 21. Bedienungsanleitung. Service

Naturgewalten & Risikoempfinden

Anleitung. Update/Aktualisierung EBV Einzelplatz Homepage. und Mängelkatalog

Welchen Nutzen haben Risikoanalysen für Privatanleger?

Fusion 2015 Änderungen Ihres Zahlungverkehrsprogrammes VR-Networld

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

SOZIALVORSCHRIFTEN IM STRAßENVERKEHR Verordnung (EG) Nr. 561/2006, Richtlinie 2006/22/EG, Verordnung (EU) Nr. 165/2014

Es gibt zwei Wege die elektronischen Daten aus Navision zu exportieren.

Vereinfachte Ticketerfassung oxando GmbH

Informatik I Tutorial

CVR Seniorentreff vom 04. und Serienbriefe/Seriendruck. Serienbriefe / Seriendruck

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

Mediendatenbank Bedienungsanleitung

Transkript:

1 Überblick Ausführungszeiten Übung zur Vorlesung EZS Florian Franzmann Martin Hoffmann Tobias Klaus Peter Wägemann Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und Betriebssysteme) http://www4.cs.fau.de 27. Oktober 2014 FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 1 / 26 FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 2 / 26 2 Rekapitulation: Worst-Case Execution-Time Worst-Case Execution-Time 3 Zeitmessungen T 3 T 4 0 4 8 12 16 20 Statische Ablaufplanung Planbarkeitsanalyse Später: Übernahmeprüfung Worst-Case Obere Schranke für alle Fälle FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 3 / 26 FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 4 / 26

Zähler in Mikrocontrollern 3 Zeitmessungen 3.1 Zähler Betriebsmodi 3 Zeitmessungen 3.1 Zähler (Counter) zählen hardwarebasiert Ereignisse z.b. von: Externem Drehgeber (Radumdrehung) Externem Quarz (Real-Time Clock) Internem Prozessortakt (hohe Auflösung) Äquidistante Ereignisse ermöglichen einen (Timer) für Periodische Aktivierung Messen von Zeitabständen (Kontrolliertes Verbrennen von Prozessorzeit) Zähler bzw. bieten zwei Betriebsmodi: Abfragebetrieb (Polling) Aktives Auslesen des Zählers, bis zum Erreichen eines vorgegebenen Wertes. Unterbrecherbetrieb (Interrupt) Der Zähler unterbricht das laufende System beim Erreichen eines vorkonfigurierten Zählerstandes. FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 5 / 26 FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 6 / 26 3 Zeitmessungen 3.2 3 Zeitmessungen 3.3 Tricore: Extrem guter 13.3 ns-raster nicht selbstverständlich e meist schon vorhanden hohe Zeitauflösung einfache Bedienung Welche Probleme können bei messbasierter Bestimmung der Ausführungszeiten auftreten? Bedingung Frei verfügbarer GPIO-Pin FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 7 / 26 FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 8 / 26

4 Statische Laufzeitanalyse 4 Statische Laufzeitanalyse Statische Laufzeitanalyse? Statisch? keine Ausführung des Programms Grundsätzliche Idee Wie lange dauern die einzelnen Maschinenbefehle? Wie sieht der längste Pfad durch das Programm aus? Addition aller Maschinenbefehle des längsten Pfades: WCET! Klingt doch einfach!? FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 9 / 26 FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 10 / 26 4 Statische Laufzeitanalyse Wie lang dauert ein Maschinenbefehl? 4 Statische Laufzeitanalyse Was ist der worst case? Cache Pipeline Branch-Prediction Hochkomplex! if/else Einfach! Ein Pfad muss ja länger sein. ABER: abhängig von Eingabe Schleifen Wie oft ausgeführt? abhängig von Eingabe Wie lange ist ein Durchlauf? abhängig von Eingabe Wertanalyse: Welche Werte können Variablen annehmen? abstrakte Interpretation Ausrollen von Schleifen: -Projektparameter: max-unroll oft manuelle Eingriffe erforderlich Annotationen Optimierungsproblem FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 11 / 26 FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 12 / 26

5 Handwerkszeug Überblick 5 Handwerkszeug 5.1 Plattformunabhängige Hilfsfunktionen Timer-Zugriff (Zeitmessung) DAC-Zugriff GPIO-Zugriff... aufgabe2 -- CMakeLists.txt -- app.c -- ecos -- -- include -- ezs_dac.h -- ezs_gpio.h -- ezs_stopwatch.h -- src -- ezs_stopwatch.c -- drivers - tc1796 -- ezs_dac.c -- ezs_counter.c -- ezs_gpio.c Die wird ständig (auch von euch) erweitert. FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 13 / 26 FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 14 / 26 5 Handwerkszeug 5.1 Zeitmessung ezs_stopwatch.c/.h GPIO 5 Handwerkszeug 5.1 Für die Zeitmessung sollen zwei Funktionen implementiert werden: void ezs_watch_start(cyg_uint32 *state); cyg_uint32 ezs_watch_stop(cyg_uint32 *state); Parameter: Zeiger auf (globale) Variable unabhängige Messzeitpunkte ezs_watch_stop(cyg_uint32 *state) gibt die Zeitdifferenz in Ticks zurück Hinweis ezs_counter_get() in drivers/include/ezs_counter.h General Purpose Input/Output Pins eines Mikrochips zur freien Verwendung Konfigurierbar als Ein-/Ausgang Oft auch Treiberstärke konfigurierbar Teilweise pegelfest bis 5 V Mikrocontroller-Handbuch lesen Zugriff über spezielle Speicheradressen Spezialanweisungen Ansteuerung Beim Tricore Ansteuerung per GPTA oder von Hand möglich void ezs_gpio_set(bool) FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 15 / 26 FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 16 / 26

Übersicht Projektdateien FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 17 / 26 FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 18 / 26 Projektdateien bearbeiten Neue Analyse anlegen FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 19 / 26 FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 20 / 26

Neue Analyse anlegen Neue Analyse anlegen FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 21 / 26 FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 22 / 26 Analyse Parameter Analyse starten FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 23 / 26 FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 24 / 26

Analyse untersuchen 6 Fragen Fragen? FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 25 / 26 FF, MH, TK, PW (Inf 4) Ausführungszeiten WS 14/15 26 / 26