Parallelprogrammierung

Größe: px
Ab Seite anzeigen:

Download "Parallelprogrammierung"

Transkript

1 Lesender: Prof. Dr.-Ing. habil Ilka Philippow Fakultät für Informatik und Automatisierung FG Softwaresysteme/Prozessinformatik Tel Sekr , Frau Meusel, Zuse Bau Zi3044 login: pw: Studiengänge: Informatik, Ingenieurinformatik, 1

2 Lernziel der Vorlesungsreihe die Problemabstraktionen Paralleler Prozesse kennen und verstehen die Synchronisationskonzepte für parallele Prozesse verstehen und anwenden können 2

3 Warum und wie wird parallelisiert? Vorteil: parallele Rechenprozesse können die Laufzeit reduzieren 1. Schritt: Finden von parallel lauffähigen Programmteilen 2. Schritt - Top down Zerlegung des Problems - Parallelisierung von Algorithmen Synchronisation der parallelen Abarbeitung Gegenstand der 3

4 1. Einführung Klärung von Grundfragen a) Parallele Prozesse müssen grundsätzlich nebenläufig sein Merkmale der Nebenläufigkeit b) Wo und wie findet Parallelverarbeitung statt und wann muss synchronisiert Gegenstand der Vorlesung eingrenzen c) Anforderungen an die Parallelverarbeitung aus Sicht von eingebetteten Systemen 4

5 1.1. Parallelisierung von Algorithmen Sequentielle Algorithmen: Z := X; Call Up1; Call UP2; Y:=2; Erzeugen bei gleichen Eingabedaten immer die gleichen Ausgabedaten Merkmal: fest vorgegebener, deterministischer Ablauf aller Programmteile 5

6 Beispiel, Bild 1.1 Berechnung der Schleifendurchläufe: (n-1) + (n-2) = n(n-1)/2 Vergleiche sind nötig Für sehr große n gilt ungefähr n 2 /2-Vergleiche: n Eingabewerte n 2 /2 sequentiell Kann man durch Parallelisierung die Effizienz verbessern? 6

7 Parallelisierungspotenzial? in Schleifen kann prinzipiell nach Parallelisierungsmöglichkeiten gesucht werden dabei kann die gesamte Anweisungsfolge einer Schleife jeweils einem Prozessor zugeordnet werden Idee: Sortieren in zwei Stufen z.b. für n=10: und und Mischen der Ergebnisse 0, 1, 2,...9 7

8 n/2 sortieren: Beispiel, Bild 1.2 n * 2 = n 8 Vergleiche: mal zwei, +n für mischen : n Eingabewerte n 2 /2 sequentiell 2 n 2*( 8 n 2 /4 + n quasiparallel 2 2 n ) = 4 + n 2 /8 + n parallel Nötig: Synchronisationsaspekte spezifizieren n 8

9 1.2. Nebenläufige Prozesse ein Algorithmus kann nebenläufige Teile enthalten - es gibt Verfahren zum Auffinden der Nebenläufigkeit (nicht Gegenstand der Vorlesung, siehe Literatur) ein Programmsystem kann nebenläufige Teile enthalten - z.b. Prozeduren, Programme die Zuteilung von Prozessoren und globalen Betriebsmitteln erfolgt durch das Betriebssystem 9

10 Definitionen Ein Programm bzw. Programmsystem ist nebenläufig, wenn es Teile enthält, die in beliebiger Reihenfolge (nichtdeterministisch) ablaufen können. Der Ablauf kann parallel oder quasiparallel erfolgen. Quasiparallelbetrieb: Einprozessorsysteme, oder es gibt weniger Prozessoren als Prozesse Parallelbetrieb: es gibt mindestens soviel Prozessoren wie Prozesse nebenläufige Prozesse werden real parallel abgearbeitet 10

11 Merkmale der Nebenläufigkeit nebenläufige Prozesse sind nichtdetermininiert beliebige Startreihenfolge (Zuordnung von Prozessoren) nebenläufige Prozesse sind endlos zufällige Startzeitpunkte für Test: repeat... forever nebenläufige Prozesse können kooperieren (lösen eine gemeinsame Aufgabe) oder konkurrieren (um gemeinsame Betriebsmittel) 11

12 Typische Kooperationen Client-Server-Kooperation: Client 1 Client 2 Server 1/Client Server 2 Autonome Vergabe eines Auftrages Distributor/Team-Kooperation: Team: Beteiligung an der Auswahl von Aufgaben Sammlung und Verteilung von Aufträgen 12

13 Kooperation und Konkurrenz Kooperation und Konkurrenz schließen einander nicht aus Gefordertes Verhalten: das Ergebnis eines Prozesses muss unabhängig von Ausführungsgeschwindigkeiten sein Vermeiden von Effekten, die nur bei Nebenläufigkeit, nicht jedoch bei streng sequentiellen Abarbeitung auftreten Koordination ist notwendig Koordinations-Mechanismus: Synchronisation durch Prozess-Kommunikation 13

14 1.3. Parallelität Der Begriff Parallelität beschreibt verschiedene Aspekte: 1. Parallelrechner: die Maschinenstruktur führt zu asynchroner bzw. synchroner Abarbeitung von Rechenprozessen 2. Parallelverarbeitung: die Abstraktionsebene bestimmt die Granularität von Rechenprozessen 14

15 Parallelrechner (nach Flynn) Einprozessorrechner SISD: Single Instruction Single Data MISD: Multiple Instruction Single Data Pipelinerechner Vektor-, Arrayrechner SIMD: Single Instruction Multiple Data MIMD: Multiple Instruction Multiple Data Mehrprozessorrechner Unterschiede in der Synchronisation der parallelen Prozesse im Zugriff auf einen gemeinsamen Speicher 15

16 Synchronisation Asynchrone Parallelität: Prozessoren können autonom ein Programm (Prozess) ausführen mehrere Kontrollflüsse Datenaustausch muss synchronisiert werden (SISD-Rechner (Quasiparallel-Betrieb), MIMD-Rechner) Synchrone Parallelität: ein übergeordneter Prozessor führt ein Programm aus und steuert alle anderen Prozesse ein Kontrollfluss Prozesse sind synchronisiert (SIMD-Rechner, MISD-Rechner) 16

17 Synchrone Parallelität MISD: Abarbeitung von Anweisungen in einer Pipeline Steuerrechner Daten Einheit 1 Speicher Daten Einheit 2 Speicher Einheit n Speicher Daten werden durch die Prozessoren auf unterschiedliche Weise verarbeitet Datenaustausch erfolgt über Übergabepuffer Algorithmus- Parallelisierung 17

18 Synchrone Parallelität SIMD: alle Prozessoren führen gleichzeitig die gleiche Funktionalität auf den lokalen Daten aus Steuerrechner Daten und Befehle Einheit 1 Daten Speicher Netzwerk Einheit 2 Speicher Einheit n Speicher Parallelverarbeitung verschiedener Daten 18

19 Asynchrone Parallelität MIMD: Prozessoren führen autonom Programme aus mehrere Kontrollflüsse Einheit 1 Speicher Netzwerk Einheit 2 Speicher Einheit n Speicher lose gekoppelt, ohne gemeinsamen Speicher: Synchronisation erfolgt über Nachrichten 19

20 Asynchrone Parallelität MIMD, SISD (im Quasiparallelbetrieb): autonome Prozesse mehrere Kontrollflüsse Einheit 1 Einheit 2 Einheit n Netzwerk Speicher Speicher Speicher eng gekoppelt, mit einem gemeinsamen Speicher die Synchronisation erfolgt über globale Variable 20

21 Parallelverarbeitung Ebene: Merkmal: Programm Prozess - autonom - SISD quasiparallel - MIMD parallel Prozess - SISD quasiparallel - MIMD verteilt-parallel Ausdruck Instruktion - komponentenweise - SIMD, MISD - Datenparallelität Bit Thread innerhalb Instruktion - Datenparallelität - in jedem Computer grobkörnig Synchron Asynchron Verarbeitung: Teilprogramm Prozedur feinkörnig 21

22 Programm- und Prozessebene SISD: Programm 1 Programm n 1. n Prozess- Zeitscheibe MIMD: Programmlauf verzahnt im Quasiparallelbetrieb Programm Prozess 1 Prozess 2 Prozess Erhöhung der Rechenleistung Kommunikationsaufwand beachten realer Parallelbetrieb 22

23 Fokus der Vorlesung Asynchrone autonome Programme: teilen sich Betriebsmittel, werden zentral vom Betriebssystem synchronisiert kommunizieren in der Regel nicht miteinander Asynchrone kooperierende Prozesse, Threads: Kooperation erfordert Kommunikation Synchronisation ist Aufgabe des Anwendungsentwicklers Konzepte zur Synchronisationsprogrammierung 23

24 1.4. Anforderungen die Anforderungen an asynchrone parallele Prozesse ergeben sich aus den Anwendungen Anwendungsbereich: Kommerzielle Systeme (z.b. Banken) Technische Systeme - Eingebettete Systeme, z.b. Fahr- und Flugzeuge - Hybride Systeme, z.b. Kernkraftwerke, Leittechnik besonders Harte Qualitätsanforderungen betreffs - Effizienz, Zuverlässigkeit und Erweiterbarkeit des Programmsystems 24

25 Effizienz und Flexibilität Besonders bei eingebetteten Systemen: Effizienz bezüglich Speicherbedarf und Zeit kein unnötiger Overhead zugelassen (JAVA weniger geeignet, in der Praxis C, C++ und spezielle Prozessprogrammiersprachen) Flexibilität zur Einbindung von Steuergeräten unterschiedlichster Hersteller Schnittstellenvorgabe und einheitliche Synchronisationskonzepte einhalten 25

26 Zuverlässigkeit Besonders bei eingebetteten Systemen: katastrophale Folgen (z.b. Luftfahrt) können eintreten - bei Ausfall eines oder mehrerer Prozesse z.b. durch Verklemmung Betriebssysteme müssen Prozesse beobachten können, d.h. explizit deklarierte Prozesse - durch inkonsistente (z.b. überschriebene) Daten eigene Adressräume für Prozesse und sichere Synchronisation notwendig 26

27 Inhalt der Vorlesung Synchronisationskonzepte für parallele Prozesse Überblick zu Konzepten der Prozesserzeugung Abstraktion der Synchronisationsprobleme Synchronisation von Prozessen mit gemeinsamen Speicher Schlossvariable, Semaphoren, Monitore Synchronisation von Prozessen ohne gemeinsamen Speicher Nachrichtenaustausch, Rendezvous 27

28 Fragen 1. Wodurch unterscheidet sich asynchrone und synchrone Parallelität? 2. Was bedeutet Nebenläufigkeit in einem Algorithmus? Welcher Vorteil ergibt sich aus der Identifikation nebenläufiger Teile? 3. Warum müssen nebenläufig Prozesse identifizierbar sein? 4. Erklären Sie im Kontext nebenläufiger Prozesse die Begriffe Kooperation, Konkurrenz, Synchronisation, Kommunikation? 5. Was muss der Entwickler bei Nebenläufigkeit beachten? 28

29 Fragen 6. Was muss programmtechnisch möglich sein, um Nebenläufigkeit zu unterstützen? 7. Welche Anforderungen ergeben sich aus den strengen Qualitätsmerkmalen Zuverlässigkeit und Effizienz an parallele Programmsysteme? 29

30 Literatur Herrtwich, Ralf G, Hommel, Günter: Nebenläufige Programme. Springer-Verlag 1994 Dietrich Boles: Parallele Programmierung spielend gelernt mit dem Java-Hamster-Modell. Teubner Verlag

Kapitel 1 Parallele Modelle Wie rechnet man parallel?

Kapitel 1 Parallele Modelle Wie rechnet man parallel? PRAM- PRAM- DAG- R UND R Coles und Kapitel 1 Wie rechnet man parallel? Vorlesung Theorie Paralleler und Verteilter Systeme vom 11. April 2008 der Das DAG- Das PRAM- Das werkmodell Institut für Theoretische

Mehr

Verteilte Betriebssysteme

Verteilte Betriebssysteme Verteiltes System Eine Sammlung unabhängiger Rechner, die dem Benutzer den Eindruck vermitteln, es handle sich um ein einziges System. Verteiltes Betriebssystem Betriebssystem für verteilte Systeme Verwaltet

Mehr

Übersicht. Nebenläufige Programmierung. Praxis und Semantik. Einleitung. Sequentielle und nebenläufige Programmierung. Warum ist. interessant?

Übersicht. Nebenläufige Programmierung. Praxis und Semantik. Einleitung. Sequentielle und nebenläufige Programmierung. Warum ist. interessant? Übersicht Aktuelle Themen zu Informatik der Systeme: Nebenläufige Programmierung: Praxis und Semantik Einleitung 1 2 der nebenläufigen Programmierung WS 2011/12 Stand der Folien: 18. Oktober 2011 1 TIDS

Mehr

Parallel Computing. Einsatzmöglichkeiten und Grenzen. Prof. Dr. Nikolaus Wulff

Parallel Computing. Einsatzmöglichkeiten und Grenzen. Prof. Dr. Nikolaus Wulff Parallel Computing Einsatzmöglichkeiten und Grenzen Prof. Dr. Nikolaus Wulff Parallel Architekturen Flynn'sche Klassifizierung: SISD: single Instruction, single Data Klassisches von-neumann sequentielles

Mehr

Konzepte der parallelen Programmierung

Konzepte der parallelen Programmierung Fakultät Informatik, Institut für Technische Informatik, Professur Rechnerarchitektur Konzepte der parallelen Programmierung Parallele Programmiermodelle Nöthnitzer Straße 46 Raum 1029 Tel. +49 351-463

Mehr

Kapitel 5. Parallelverarbeitung. Formen der Parallelität

Kapitel 5. Parallelverarbeitung. Formen der Parallelität Kapitel 5 Parallelverarbeitung é Formen der Parallelität é Klassifikation von parallelen Rechnerarchitekturen é Exkurs über Verbindungsstrukturen Bernd Becker Technische Informatik I Formen der Parallelität

Mehr

2 Rechnerarchitekturen

2 Rechnerarchitekturen 2 Rechnerarchitekturen Rechnerarchitekturen Flynns Klassifikation Flynnsche Klassifikation (Flynn sche Taxonomie) 1966 entwickelt, einfaches Modell, bis heute genutzt Beschränkung der Beschreibung auf

Mehr

Übung I Echtzeitbetriebssysteme

Übung I Echtzeitbetriebssysteme Übung I Echtzeitbetriebssysteme a) Von welchen drei Faktoren hängt bei der Echtzeitverarbeitung das korrekte Ergebnis ab? b) Wann ist ein System echtzeitfähig? c) Was versteht man unter Harter und Weicher

Mehr

Systeme 1: Architektur

Systeme 1: Architektur slide 1 Vorlesung Systeme 1: Architektur Prof. Dr. Ulrich Ultes-Nitsche Forschungsgruppe Departement für Informatik Universität Freiburg slide 2 Prüfung 18. Februar 2004 8h00-11h40 13h00-18h20 20 Minuten

Mehr

Betriebssysteme G: Parallele Prozesse (Teil A: Grundlagen)

Betriebssysteme G: Parallele Prozesse (Teil A: Grundlagen) Betriebssysteme G: Parallele Prozesse (Teil A: Grundlagen) 1 Prozesse Bei Betriebssystemen stoßen wir des öfteren auf den Begriff Prozess als wahrscheinlich am häufigsten verwendeter und am unklarsten

Mehr

Paralleles Rechnen. (Architektur verteilter Systeme) von Thomas Offermann Philipp Tommek Dominik Pich

Paralleles Rechnen. (Architektur verteilter Systeme) von Thomas Offermann Philipp Tommek Dominik Pich Paralleles Rechnen (Architektur verteilter Systeme) von Thomas Offermann Philipp Tommek Dominik Pich Gliederung Motivation Anwendungsgebiete Warum paralleles Rechnen Flynn's Klassifikation Theorie: Parallel

Mehr

Parallele Programmiermodelle

Parallele Programmiermodelle Parallele Programmiermodelle ProSeminar: Parallele Programmierung Semester: WS 2012/2013 Dozentin: Margarita Esponda Einleitung - Kurzer Rückblick Flynn'sche Klassifikationsschemata Unterteilung nach Speicherorganissation

Mehr

Threads Einführung. Zustände von Threads

Threads Einführung. Zustände von Threads Threads Einführung Parallelität : Zerlegung von Problemstellungen in Teilaufgaben, die parallelel ausgeführt werden können (einfachere Strukturen, eventuell schneller, Voraussetzung für Mehrprozessorarchitekturen)

Mehr

Gliederung Seite 1. Gliederung

Gliederung Seite 1. Gliederung Gliederung Seite 1 Gliederung 1. Klassifikationen...6 1.1. Klassifikation nach der Kopplung der rechnenden Einheiten...6 1.1.1. Enge Kopplung...6 1.1.2. Lose Kopplung...6 1.2. Klassifikation nach der Art

Mehr

Informatik 12 Kapitel 2 - Kommunikation und Synchronisation von Prozessen

Informatik 12 Kapitel 2 - Kommunikation und Synchronisation von Prozessen Fachschaft Informatik Informatik 12 Kapitel 2 - Kommunikation und Synchronisation von Prozessen Michael Steinhuber König-Karlmann-Gymnasium Altötting 9. Februar 2017 Folie 1/40 Inhaltsverzeichnis I 1 Kommunikation

Mehr

FD Informatik Mauch SSDL (WHRS) Reutlingen. Algorithmen

FD Informatik Mauch SSDL (WHRS) Reutlingen. Algorithmen FD Informatik Mauch SSDL (WHRS) Reutlingen Algorithmen Überblick Definition Notwendigkeit Realisierung Grundkonzepte Umsetzung im Unterricht Algorithmus? Ein Algorithmus ist eine Verwaltungsvorschrift,

Mehr

Klausur Paralleles Rechnen (Richtwert 60 min) 10. Dez. 2015

Klausur Paralleles Rechnen (Richtwert 60 min) 10. Dez. 2015 Klausur Paralleles Rechnen (Richtwert 60 min) 10. Dez. 2015 Aufgabe 1: (30 Punkte) 1. Erläutern Sie kurz das PRAM-Modell? Was wird sehr idealistisch, was wird realistischer im Vergleich mit echten Parallelrechnern

Mehr

Rechnergrundlagen SS 2007. 11. Vorlesung

Rechnergrundlagen SS 2007. 11. Vorlesung Rechnergrundlagen SS 2007 11. Vorlesung Inhalt Evaluation der Lehre (Auswertung) Synchroner/asynchroner Systembus Kontrollfluss/Datenfluss RISC vs. CISC Speicherhierarchie Cache Lesen Schreiben Überschreiben

Mehr

Architektur von Parallelrechnern 50

Architektur von Parallelrechnern 50 Architektur von Parallelrechnern 50 Rechenintensive parallele Anwendungen können nicht sinnvoll ohne Kenntnis der zugrundeliegenden Architektur erstellt werden. Deswegen ist die Wahl einer geeigneten Architektur

Mehr

Effizienz von Algorithmen

Effizienz von Algorithmen Effizienz von Algorithmen Letzte Bearbeitung: Jan 211 Ein wichtiger Aspekt bei Algorithmen sind seine "Kosten". Wir wollen uns hier ausschließlich mit der Laufzeit des gewählten Algorithmus beschäftigen.

Mehr

Proseminar Rechnerarchitekturen. Parallelcomputer: Multiprozessorsysteme

Proseminar Rechnerarchitekturen. Parallelcomputer: Multiprozessorsysteme wwwnet-texde Proseminar Rechnerarchitekturen Parallelcomputer: Multiprozessorsysteme Stefan Schumacher, , PGP Key http://wwwnet-texde/uni Id: mps-folientex,v

Mehr

Betriebssysteme. Vorlesung im Herbstsemester 2010 Universität Mannheim. Kapitel 6: Speicherbasierte Prozessinteraktion

Betriebssysteme. Vorlesung im Herbstsemester 2010 Universität Mannheim. Kapitel 6: Speicherbasierte Prozessinteraktion Betriebssysteme Vorlesung im Herbstsemester 2010 Universität Mannheim Kapitel 6: Speicherbasierte Prozessinteraktion Felix C. Freiling Lehrstuhl für Praktische Informatik 1 Universität Mannheim Vorlesung

Mehr

Parallele und verteilte Programmierung

Parallele und verteilte Programmierung Thomas Rauber Gudula Rünger Parallele und verteilte Programmierung Mit 165 Abbildungen und 17 Tabellen Jp Springer Inhaltsverzeichnis 1. Einleitung 1 Teil I. Architektur 2. Architektur von Parallelrechnern

Mehr

Beispiel Parallelisierung 2D Laplace. Lagrange Formulierung/Hyperelastisches Material. Finite Differenzen Diskretisierung

Beispiel Parallelisierung 2D Laplace. Lagrange Formulierung/Hyperelastisches Material. Finite Differenzen Diskretisierung Simulation von physikalischen Feldern im menschlichen Körper Implementierung Gliederung Gliederung Wiederholung: Biomechanik III Statische elastomechanische Probleme Finite Elemente Diskretisierung Finite

Mehr

Praktische Übungen zu Computertechnik 2. Versuchsprotokoll

Praktische Übungen zu Computertechnik 2. Versuchsprotokoll Praktische Übungen zu Computertechnik 2 Versuchsprotokoll Versuch: C2 Parallelrechner Versuchsdatum und -zeit: Donnerstag, 03. Juni 2010, 10-13 Uhr Betreuer: Adrian Knoth Name, Studiengang, Mat.-Nr.: Ralf

Mehr

Prof. Dr. Uwe Schmidt. 21.August Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (BInf 211, BTInf 211, BMInf 211, BWInf 211)

Prof. Dr. Uwe Schmidt. 21.August Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (BInf 211, BTInf 211, BMInf 211, BWInf 211) Prof. Dr. Uwe Schmidt 21.August 2007 Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (BInf 211, BTInf 211, BMInf 211, BWInf 211) Zeit: 75 Minuten erlaubte Hilfsmittel: keine Bitte tragen

Mehr

Grafikkarten-Architektur

Grafikkarten-Architektur > Grafikkarten-Architektur Parallele Strukturen in der GPU Name: Sebastian Albers E-Mail: s.albers@wwu.de 2 > Inhalt > CPU und GPU im Vergleich > Rendering-Pipeline > Shader > GPGPU > Nvidia Tesla-Architektur

Mehr

Parallele Algorithmen mit OpenCL. Universität Osnabrück, Henning Wenke,

Parallele Algorithmen mit OpenCL. Universität Osnabrück, Henning Wenke, Parallele Algorithmen mit OpenCL Universität Osnabrück, Henning Wenke, 2013-05-29 Kapitel Parallelität [1]: Parallel Programming (Rauber, Rünger, 2007) [2]: Algorithms Sequential & Parallel A Unified Approach

Mehr

Verteilte Systeme - Einleitung

Verteilte Systeme - Einleitung Verteilte Systeme - Einleitung... alois.schuette@h-da.de Alois Schütte 15. Oktober 2014 1 / 36 Inhaltsverzeichnis Ziel dieses Teils der Veranstaltung ist es, die wichtigsten Begriffe zu erklären und Abgrenzungen

Mehr

Computational Biology: Bioelektromagnetismus und Biomechanik

Computational Biology: Bioelektromagnetismus und Biomechanik Computational Biology: Bioelektromagnetismus und Biomechanik Implementierung Gliederung Wiederholung: Biomechanik III Statische Elastomechanik Finite Elemente Diskretisierung Finite Differenzen Diskretisierung

Mehr

4. Übung - Rechnerarchitektur/Betriebssysteme

4. Übung - Rechnerarchitektur/Betriebssysteme 4. Übung - Rechnerarchitektur/Betriebssysteme 1. Aufgabe: Caching Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen a) Was ist ein Cache? Wann kommt Caching zum Einsatz? b) Welchen Vorteil

Mehr

30 Jahre Server Von Transaktionssystemen zu Web-Services

30 Jahre Server Von Transaktionssystemen zu Web-Services 30 Jahre Server Friedrich-Alexander-Universität Erlangen-Nürnberg Institut für Informatik Lehrstuhl für Informatik 6 (Datenbanksysteme) Anlass! "Java (EJB,. ) ist ja so langsam!"! "Aber CICS ist inzwischen

Mehr

(a) Wie unterscheiden sich synchrone und asynchrone Unterbrechungen? (b) In welchen drei Schritten wird auf Unterbrechungen reagiert?

(a) Wie unterscheiden sich synchrone und asynchrone Unterbrechungen? (b) In welchen drei Schritten wird auf Unterbrechungen reagiert? SoSe 2014 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Präsenzübung 2 2014-04-28 bis 2014-05-02 Aufgabe 1: Unterbrechungen (a) Wie unterscheiden sich synchrone

Mehr

Verhaltensbeschreibung und Spezifikationssprachen

Verhaltensbeschreibung und Spezifikationssprachen TECHNISCHE UNIVERSITÄT ILMENAU Integrierte Kommunikationssysteme http://www.tu-ilmenau.de/iks Verhaltensbeschreibung und Spezifikationssprachen Verhaltensmodelle Zustandsautomaten (FSM) Nicht-deterministische

Mehr

Prof. Dr. Th. Letschert CS5001. Verteilte Systeme. Master of Science (Informatik) - Einleitung - Th Letschert FH Gießen-Friedberg

Prof. Dr. Th. Letschert CS5001. Verteilte Systeme. Master of Science (Informatik) - Einleitung - Th Letschert FH Gießen-Friedberg Prof. Dr. Th. Letschert CS5001 Master of Science (Informatik) - - Th Letschert FH Gießen-Friedberg Modulnr.: CS5001 Verwendbar : Master of Science (Informatik) Master of Science (Wirtschaftsinformatik)

Mehr

Klausur zum Kurs Betriebssysteme (1802) am 18. September 2010

Klausur zum Kurs Betriebssysteme (1802) am 18. September 2010 Fakultät für Mathematik und Informatik Lehrgebiet Kooperative Systeme Prof. Dr. Jörg M. Haake Klausur zum Kurs Betriebssysteme (1802) am 18. September 2010 Klausurort: Vorname Name: Adresse: Matrikelnummer:

Mehr

Datenparallelität. Bildverarbeitung Differentialgleichungen lösen Finite Element Methode in Entwurfssystemen

Datenparallelität. Bildverarbeitung Differentialgleichungen lösen Finite Element Methode in Entwurfssystemen Datenparallelität PPJ-38 Viele Prozesse bzw. Prozessoren führen zugleich die gleichen Operationen auf verschiedenen Daten aus; meist Datenelemente in regulären Datenstrukturen: Array, Folge Matrix, Liste.

Mehr

Übung 1. Letzte Änderung: 5. Mai 2017

Übung 1. Letzte Änderung: 5. Mai 2017 Übung 1 Letzte Änderung: 5. Mai 2017 Abhängigkeitsanalyse Synthese Mul prozessor Mul computer Compiler Parallelismustest Vektorrechner Rechenfelder Op mierung Flynns Schema Modelle Theorie Parallele Systeme

Mehr

Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme. Maren Bennewitz

Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme. Maren Bennewitz Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme Maren Bennewitz 1 Überblick Betriebssysteme Aufgabe von Betriebssystemen Historische Entwicklung von Betriebssystemen Unterschiedliche Arten

Mehr

Projektseminar Parallele Programmierung

Projektseminar Parallele Programmierung HTW Dresden WS 2014/2015 Organisatorisches Praktikum, 4 SWS Do. 15:00-18:20 Uhr, Z136c, 2 Doppelstunden o.g. Termin ist als Treffpunkt zu verstehen Labore Z 136c / Z 355 sind Montag und Donnerstag 15:00-18:20

Mehr

4. Übung - Rechnerarchitektur/Betriebssysteme

4. Übung - Rechnerarchitektur/Betriebssysteme 4. Übung - Rechnerarchitektur/Betriebssysteme 1. Aufgabe: Caching Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen a) Was ist ein Cache? Wann kommt Caching zum Einsatz? b) Welchen Vorteil

Mehr

Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme. Wolfram Burgard

Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme. Wolfram Burgard Systeme I: Betriebssysteme Kapitel 2 Überblick Betriebssysteme Wolfram Burgard 1 Überblick Betriebssysteme Aufgabe von Betriebssystemen Historische Entwicklung von Betriebssystemen Unterschiedliche Arten

Mehr

Grundlagen der Parallelisierung

Grundlagen der Parallelisierung Grundlagen der Parallelisierung Philipp Kegel, Sergei Gorlatch AG Parallele und Verteilte Systeme Institut für Informatik Westfälische Wilhelms-Universität Münster 3. Juli 2009 Inhaltsverzeichnis 1 Einführung

Mehr

Interaktionsdiagramme in UML

Interaktionsdiagramme in UML Interaktionsdiagramme in UML Interaktionsdiagramm ist ein Oberbegriff für eine Reihe von Diagrammen, die das Verhalten eines objektorientierten Systems durch Objektinteraktionen beschreiben Ein Sequenzdiagramm

Mehr

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren Einführung 20.10.2014 Prof. Dr. Ralf H. Reussner Version 1.0 LEHRSTUHL FÜR SOFTWARE-DESIGN UND QUALITÄT (SDQ) INSTITUT FÜR PROGRAMMSTRUKTUREN UND DATENORGANISATION (IPD), FAKULTÄT

Mehr

Johann Wolfgang Goethe-Universität

Johann Wolfgang Goethe-Universität Flynn sche Klassifikation SISD (single instruction, single data stream): IS IS CU PU DS MM Mono (Mikro-)prozessoren CU: Control Unit SM: Shared Memory PU: Processor Unit IS: Instruction Stream MM: Memory

Mehr

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren Einführung 21.10.2015 Prof. Dr. Ralf H. Reussner Version 1.0 LEHRSTUHL FÜR SOFTWARE-DESIGN UND QUALITÄT (SDQ) INSTITUT FÜR PROGRAMMSTRUKTUREN UND DATENORGANISATION (IPD), FAKULTÄT

Mehr

Rainer Oechsle. Parallele und verteilte. Anwendungen in Java. 4., neu bearbeitete Auflage. Mit 165 Listings, 5 Tabellen und 71 HANSER

Rainer Oechsle. Parallele und verteilte. Anwendungen in Java. 4., neu bearbeitete Auflage. Mit 165 Listings, 5 Tabellen und 71 HANSER Rainer Oechsle Parallele und verteilte Anwendungen in Java 4., neu bearbeitete Auflage Mit 165 Listings, 5 Tabellen und 71 Bildern HANSER Inhalt 1 Einleitung 15 1.1 Parallelität, Nebenläufigkeit und Verteilung

Mehr

Überblick. Einleitung. Befehlsschnittstelle Mikroarchitektur Speicherarchitektur Ein-/Ausgabe Multiprozessorsysteme,...

Überblick. Einleitung. Befehlsschnittstelle Mikroarchitektur Speicherarchitektur Ein-/Ausgabe Multiprozessorsysteme,... Überblick Einleitung Lit., Motivation, Geschichte, v.neumann- Modell, VHDL Befehlsschnittstelle Mikroarchitektur Speicherarchitektur Ein-/Ausgabe Multiprozessorsysteme,... Kap.6 Multiprozessorsysteme Einsatz

Mehr

Parallelrechner (1) Anwendungen: Simulation von komplexen physikalischen oder biochemischen Vorgängen Entwurfsunterstützung virtuelle Realität

Parallelrechner (1) Anwendungen: Simulation von komplexen physikalischen oder biochemischen Vorgängen Entwurfsunterstützung virtuelle Realität Parallelrechner (1) Motivation: Bedarf für immer leistungsfähigere Rechner Leistungssteigerung eines einzelnen Rechners hat physikalische Grenzen: Geschwindigkeit von Materie Wärmeableitung Transistorgröße

Mehr

Parallelverarbeitung. Parallelverarbeitung. 2. Grundlagen. 2. Grundlagen. 2.1 Parallelität

Parallelverarbeitung. Parallelverarbeitung. 2. Grundlagen. 2. Grundlagen. 2.1 Parallelität 2. Grundlagen Parallelverarbeitung SS 2005 Inhalt Parallelität Ebenen der Parallelität Parallelrechnerarchitekturen Parallele Programmiermodelle 18.04.05 Roland Wismüller, Univ. Siegen roland.wismueller@uni-siegen.de

Mehr

Inhalt. 1. Einführung in die Informatik. 2. Algorithmen Definition, Eigenschaften, Entwurf Darstellung von Algorithmen Beispiele.

Inhalt. 1. Einführung in die Informatik. 2. Algorithmen Definition, Eigenschaften, Entwurf Darstellung von Algorithmen Beispiele. 1. Einführung in die Informatik Inhalt 2. Algorithmen Definition, Eigenschaften, Entwurf Darstellung von Algorithmen Beispiele Peter Sobe 1 Einführende Beispiele 2. Algorithmen Täglich werden Verarbeitungsvorschriften

Mehr

Einführung in die Objektorientierte Programmierung Vorlesung 2: Mikroskopisches und Makroskopisches Computational Thinking.

Einführung in die Objektorientierte Programmierung Vorlesung 2: Mikroskopisches und Makroskopisches Computational Thinking. Einführung in die Objektorientierte Programmierung Vorlesung 2: Mikroskopisches und Makroskopisches Computational Thinking Sebastian Küpper Das makroskopische Modell: Objekte Objekt: Abbild konkreter individuell

Mehr

1.1 Dimensionen der Parallelität

1.1 Dimensionen der Parallelität 1 1 Einführung Die meisten Computer können heute verschiedene Anweisungen parallel abarbeiten. Um diese zur Verfügung stehende Ressource auszunutzen, müssen wir sie bei der Softwareentwicklung entsprechend

Mehr

I Grundlagen der parallelen Programmierung 1

I Grundlagen der parallelen Programmierung 1 vii I Grundlagen der parallelen Programmierung 1 1 Einführung...... 3 1.1 Paradigmenwechsel in der Softwareentwicklung..... 4 1.2 Anwendungsbereiche...... 5 1.3 Parallelität in der Hardware..... 5 1.3.1

Mehr

Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7)

Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7) J. Zhang zhang@informatik.uni-hamburg.de Universität Hamburg AB Technische Aspekte Multimodaler Systeme

Mehr

Literatur. VA SS Teil 5/Messages

Literatur. VA SS Teil 5/Messages Literatur [5-1] https://en.wikipedia.org/wiki/message-oriented_middleware [5-2] https://en.wikipedia.org/wiki/advanced_message_queuing_protocol http://www.amqp.org/specification/0-10/amqp-org-download

Mehr

1 Konzepte der Parallelverarbeitung

1 Konzepte der Parallelverarbeitung Parallelverarbeitung Folie 1-1 1 Konzepte der Parallelverarbeitung Erhöhung der Rechenleistung verbesserte Prozessorarchitekturen mit immer höheren Taktraten Vektorrechner Multiprozessorsysteme (Rechner

Mehr

Sicherer MAC für Nachrichten beliebiger Länge

Sicherer MAC für Nachrichten beliebiger Länge Sicherer MAC für Nachrichten beliebiger Länge Korollar Sicherer MAC für Nachrichten beliebiger Länge Sei F eine Pseudozufallsfunktion. Dann ist Π MAC2 für Π = Π MAC sicher. Nachteile: Für m ({0, 1} n 4

Mehr

Anwendung der Roblet -Tec hnol ogie

Anwendung der Roblet -Tec hnol ogie Anwendung der Roblet -Tec hnol ogie genrob.com Hagen Stanek stanek@genrob.com Universität Hamburg Daniel Westhoff westhoff@informatik.uni-hamburg.de Inhalt 1. Einführung 2. Roblet -Technologie: Roblets

Mehr

Parallele Prozesse. Prozeß wartet

Parallele Prozesse. Prozeß wartet Parallele Prozesse B-66 Prozeß: Ausführung eines Programmes in seinem Adressraum (zugeordneter Speicher) Parallele Prozesse: gleichzeitig auf mehreren Prozessoren laufende Prozesse p1 p2 verzahnte Prozesse:

Mehr

Thomas Schirrmann Nebenläufigkeit. Nebenläufigkeit. Vortrag Thomas Schirrmann. Seminar Systementwurf Dozentin Daniela Weinberg

Thomas Schirrmann Nebenläufigkeit. Nebenläufigkeit. Vortrag Thomas Schirrmann. Seminar Systementwurf Dozentin Daniela Weinberg Nebenläufigkeit Vortrag Seminar Systementwurf Dozentin Daniela Weinberg 1 Gliederung 1. Einführung 2. Modellierung 2.1. POMSET 2.2. Transitionssystem 2.3. Petrinetz 2.4. abstraktes nebenläufiges Programm

Mehr

Vorlesung "Verteilte Systeme" Sommersemester 1999. Verteilte Systeme. Adreßraum. Rechner. Verteilte Systeme, Sommersemester 1999 Folie 19.

Vorlesung Verteilte Systeme Sommersemester 1999. Verteilte Systeme. Adreßraum. Rechner. Verteilte Systeme, Sommersemester 1999 Folie 19. Verteilte Systeme 19. Distributed Shared Memory Sharing!! No Sharing! Sharing? Evolution der Berechnungsmodelle Vergangenheit Gemeinsamer Speicher Einzelrechner Gegenwart Nachrichtenkommunikation Verteilte

Mehr

Überblick und Aufgaben

Überblick und Aufgaben Aufgaben eines Betriebssystems Komponenten und Benutzer eines Rechnersystems Endbenutzer Applikationen Middleware Applikations- Programmierer System- Programmierer Betriebssystem Hardware 5 Aufgaben eines

Mehr

Seminar Parallele Rechnerarchitekturen SS04 \ SIMD Implementierung aktueller Prozessoren 2 (Dominik Tamm) \ Inhalt. Seite 1

Seminar Parallele Rechnerarchitekturen SS04 \ SIMD Implementierung aktueller Prozessoren 2 (Dominik Tamm) \ Inhalt. Seite 1 \ Inhalt Seite 1 \ Inhalt SIMD Kurze Rekapitulation 3Dnow! (AMD) AltiVec (PowerPC) Quellen Seite 2 \ Wir erinnern uns: Nach Flynn s Taxonomie kann man jeden Computer In eine von vier Kategorien einteilen:

Mehr

Betriebssysteme. G: Parallele Prozesse. (Teil B: Klassische Problemstellungen, Mutual Exclusion, kritische Regionen)

Betriebssysteme. G: Parallele Prozesse. (Teil B: Klassische Problemstellungen, Mutual Exclusion, kritische Regionen) Betriebssysteme G: Parallele Prozesse (Teil B: Klassische Problemstellungen, Mutual Exclusion, kritische Regionen) 1 Allgemeine Synchronisationsprobleme Wir verstehen ein BS als eine Menge von parallel

Mehr

Betriebssysteme. Thomas Fahringer. Institut für Informatik Universität Innsbruck. VO Betriebssysteme

Betriebssysteme. Thomas Fahringer. Institut für Informatik Universität Innsbruck. VO Betriebssysteme Grundzüge der Informatik IV: Betriebssysteme Thomas Fahringer Institut für Informatik Universität Innsbruck V Thomas.Fahringer@uibk.ac.at 1 Kapitel I Betriebssysteme: Aufgaben und Überblick V 2 Was ist

Mehr

UNABHÄNGIGER LASTEN. Vorlesung 9 BALANCIERUNG DYNAMISCHER. Graphenalgorithmen und lineare Algebra Hand in Hand

UNABHÄNGIGER LASTEN. Vorlesung 9 BALANCIERUNG DYNAMISCHER. Graphenalgorithmen und lineare Algebra Hand in Hand Vorlesung 9 BALANCIERUNG DYNAMISCHER UNABHÄNGIGER LASTEN 266 Lastbalancierung Motivation! Ein paralleles System besteht aus! verschiedenen Recheneinheiten,! die miteinander kommunizieren können! Warum

Mehr

Maik Zemann. Flynn s Taxonomie. Parallele Rechnerarchitekturen SS 2004 Technische Fakultät Universität Bielefeld. 3. Mai 2004 Flynn's Taxonomie 1

Maik Zemann. Flynn s Taxonomie. Parallele Rechnerarchitekturen SS 2004 Technische Fakultät Universität Bielefeld. 3. Mai 2004 Flynn's Taxonomie 1 Maik Zemann Flynn s Taxonomie Parallele Rechnerarchitekturen SS 2004 Technische Fakultät Universität Bielefeld 3. Mai 2004 Flynn's Taxonomie 1 Gliederung Einleitung Gliederung Flynn s Taxonomie Das SISD-Modell

Mehr

Vorlesung Informatik II

Vorlesung Informatik II Vorlesung Informatik II Universität Augsburg Wintersemester 2011/2012 Prof. Dr. Bernhard Bauer Folien von: Prof. Dr. Robert Lorenz Lehrprofessur für Informatik 17. JAVA Kommunikation von Threads 1 Motivation

Mehr

Rechnerarchitektur SS 2013

Rechnerarchitektur SS 2013 Rechnerarchitektur SS 2013 Parallel Random Access Machine (PRAM) Michael Engel TU Dortmund, Fakultät für Informatik Teilweise basierend auf Material von Gernot A. Fink und R. Yahyapour 6. Juni 2013 Parallel

Mehr

Hochleistungsrechnen auf dem PC

Hochleistungsrechnen auf dem PC Hochleistungsrechnen auf dem PC Steffen Börm Christian-Albrechts-Universität zu Kiel Ringvorlesung Informatik, 26. Juni 2014 S. Börm (CAU Kiel) Hochleistungsrechnen auf dem PC 26. Juni 2014 1 / 33 Übersicht

Mehr

2. Algorithmen und Algorithmisierung Algorithmen und Algorithmisierung von Aufgaben

2. Algorithmen und Algorithmisierung Algorithmen und Algorithmisierung von Aufgaben Algorithmen und Algorithmisierung von Aufgaben 2-1 Algorithmisierung: Formulierung (Entwicklung, Wahl) der Algorithmen + symbolische Darstellung von Algorithmen Formalismen für die symbolische Darstellung

Mehr

3. Übung zur Vorlesung Verteilte Betriebssysteme

3. Übung zur Vorlesung Verteilte Betriebssysteme UNIVERSITÄT ULM Fakultät für Informatik Verteilte Systeme Prof. Dr. Peter Schulthess Markus Fakler 3. Übung zur Vorlesung Verteilte Betriebssysteme 21.11.2007 Aufgabe 1: Verteilte Algorithmen (3 + 1 +

Mehr

Einführung. Rechnerarchitekturen Entwicklung und Ausführung von Programmen Betriebssysteme

Einführung. Rechnerarchitekturen Entwicklung und Ausführung von Programmen Betriebssysteme Teil I Einführung Überblick 1 2 Geschichte der Informatik 3 Technische Grundlagen der Informatik Rechnerarchitekturen Entwicklung und Ausführung von Programmen Betriebssysteme 4 Daten, Informationen, Kodierung

Mehr

Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration

Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration Algorithmen & Programmierung Steuerstrukturen im Detail Selektion und Iteration Selektion Selektion Vollständige einfache Selektion Wir kennen schon eine Möglichkeit, Selektionen in C zu formulieren: if

Mehr

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 15 Parallele Programmierung... 15-2 15.1 Die Klasse java.lang.thread... 15-2 15.2 Beispiel 0-1-Printer als Thread... 15-3 15.3 Das Interface java.lang.runnable... 15-4 15.4 Beispiel 0-1-Printer

Mehr

2 Reproduktion oder Verwendung dieser Unterlage bedarf in jedem Fall der Zustimmung des Autors.

2 Reproduktion oder Verwendung dieser Unterlage bedarf in jedem Fall der Zustimmung des Autors. 1 Definition Definition nach Tanenbaum/van Steen Ein Verteiltes System ist eine Ansammlung von unabhängigen Rechnern, die für seine enutzer wie ein einzelnes Computersystem aussieht. Verteilte Systeme

Mehr

Informatik Allgemeines Einführung

Informatik Allgemeines Einführung Informatik Allgemeines Seite 1 Allgemeines Organisation Vorlesungen / Übungen / (Programmier-) Praktikum Leistungsbewertung 2 Klausuren Seite 2 Allgemeines Dozent Dr. Th. Letschert Thema Informatik Historie,

Mehr

Hyperrekonfigurierbare Hardware - Modelle, Partitionierungsprobleme und Schedulingstrategien

Hyperrekonfigurierbare Hardware - Modelle, Partitionierungsprobleme und Schedulingstrategien Hyperrekonfigurierbare Hardware - Modelle, Partitionierungsprobleme und Schedulingstrategien Sebastian Lange Martin Middendorf Parallelverarbeitung und Komplexe Systeme Inhalt Einführung Hyperrekonfiguration

Mehr

Grundlagen: Überblick

Grundlagen: Überblick Grundlagen: Überblick Verteilte Systeme Definition Grundbegriffe Kommunikation Klassifikation von Fehlern Begriffe Fehlerarten Analyse von Algorithmen Korrektheit Komplexität Verteilte Algorithmen (VA),

Mehr

Parallele Programmabläufe: R S

Parallele Programmabläufe: R S REFERAT Parallele Programmabläufe: R S.242-246 1.Einführung 2.Synchronisation 2.1.Monitor-Konzept 2.2.Rendez-vous-Konzept 2.3.Bolt-Synchronisation 3.Behandlung Ausnahmesituationen 1.Einführung: Im Bereich

Mehr

Klausur. Betriebssysteme SS

Klausur. Betriebssysteme SS Klausur Betriebssysteme SS 2014 11.07.14 Vorname: Nachname: Matrikelnummer: Studienfach: Bitte tragen Sie auf jeder Seite Ihre Matrikelnummer ein und überprüfen Sie diese Klausur auf Vollständigkeit (19

Mehr

Betriebssysteme. Wintersemester Kapitel 2 Prozess und Threads. Patrick Kendzo

Betriebssysteme. Wintersemester Kapitel 2 Prozess und Threads. Patrick Kendzo Betriebssysteme Wintersemester 2015 Kapitel 2 Prozess und Threads Patrick Kendzo ppkendzo@gmail.com Programm Inhalt Einleitung Prozesse und Threads Speicherverwaltung Ein- / Ausgabe und Dateisysteme Zusammenfassung

Mehr

Einführung in die Informatik I Kapitel II.1: Suchen

Einführung in die Informatik I Kapitel II.1: Suchen 1 Einführung in die Informatik I Kapitel II.1: Suchen Prof. Dr.-Ing. Marcin Grzegorzek Juniorprofessur für Mustererkennung im Institut für Bildinformatik Department Elektrotechnik und Informatik Fakultät

Mehr

Architektur paralleler Plattformen

Architektur paralleler Plattformen Architektur paralleler Plattformen Freie Universität Berlin Fachbereich Informatik Wintersemester 2012/2013 Proseminar Parallele Programmierung Mirco Semper, Marco Gester Datum: 31.10.12 Inhalt I. Überblick

Mehr

Modellierung verteilter Systeme Grundlagen der Programm und Systementwicklung

Modellierung verteilter Systeme Grundlagen der Programm und Systementwicklung Modellierung verteilter Systeme Grundlagen der Programm und Systementwicklung Sommersemester 2012 Prof. Dr. Dr. h.c. Manfred Broy Unter Mitarbeit von Dr. M. Spichkova, J. Mund, P. Neubeck Lehrstuhl Software

Mehr

Klausur Informatik II

Klausur Informatik II Klausur Informatik II Sommersemester 23 Bearbeitungszeit 2 Minuten Name: Vorname: Matrikelnummer: Bei der Klausur sind keine Hilfsmittel (Skripten, Taschenrechner, etc.) erlaubt. Schreiben Sie bitte mit

Mehr

WS Parallele Prozesse. Prof. Hannelore Frank. Parallele Prozesse. PetriNetze. Synchronisation UNIX. Wettbewerb PC Krit.Abschnitt Spinlocks

WS Parallele Prozesse. Prof. Hannelore Frank. Parallele Prozesse. PetriNetze. Synchronisation UNIX. Wettbewerb PC Krit.Abschnitt Spinlocks WS 2007 Überblick 1 2 Petri-Netze als Entwurfshilfsmittel 3 nebenläufiger 4 -Systemfunktionen Literatur Eduard Glatz: Betriebssysteme. Grundlagen, Konzepte, Systemprogrammierung dpunkt.verlag, 2006, ISBN

Mehr

m-files sind Folgen von MATLAB-Anweisungen oder Daten-Files.

m-files sind Folgen von MATLAB-Anweisungen oder Daten-Files. MATLAB m-files m-files sind Folgen von MATLAB- oder Daten-Files. Erstellen von m-files Über File New M-file wird ein Texteditor geöffnet. Dort wird das m-file als ASCII-File erzeugt und unter name.m im

Mehr

Prozessdatenverarbeitung II Echtzeit-Programmierung

Prozessdatenverarbeitung II Echtzeit-Programmierung Fachhochschule Würzburg-Schweinfurt Wintersemester 2003/2004 Diplomfachprüfung im Fach Prozessdatenverarbeitung II Echtzeit-Programmierung (Prof. Dr.-Ing. Ludwig Eckert) Datum: 30. 01.2004 Dauer: 45 Minuten

Mehr

Java I Vorlesung 1 Einführung in Java

Java I Vorlesung 1 Einführung in Java Java I Vorlesung 1 Einführung in Java Alexander Koller koller@coli.uni-sb.de 26.4.2004 Problem Algorithmus Programm Programmiersprachen Warum Java? Unser erstes Java-Programm Organisatorisches Was heißt

Mehr

ECDL MODUL COMPUTING. Syllabus Version 1.0

ECDL MODUL COMPUTING. Syllabus Version 1.0 ECDL MODUL COMPUTING Syllabus Version 1.0 DLGI Dienstleistungsgesellschaft für Informatik Am Bonner Bogen 6 53227 Bonn Tel.: 0228-688-448-0 Fax: 0228-688-448-99 E-Mail: info@dlgi.de, URL: www.dlgi.de In

Mehr

11.1 Inhalte der Vorlesung Was ist ein Betriebssystem Zwei Sichten. Was ist ein Betriebssystem Zwei Sichten (Forts.) Abstraktionen

11.1 Inhalte der Vorlesung Was ist ein Betriebssystem Zwei Sichten. Was ist ein Betriebssystem Zwei Sichten (Forts.) Abstraktionen Betriebssysteme Sommersemester 2018 Betriebssysteme 11. Kapitel Resümee Was ist ein Betriebssystem Zwei Sichten 1. Virtuelle Maschine (Top-Down Sicht): Bietet dem Programmierer eine abstrakte Sicht auf

Mehr

Praktische Informatik I

Praktische Informatik I Praktische Informatik I WS 2005/2005 Prof. Dr. Wolfgang Effelsberg Lehrstuhl für Praktische Informatik IV Universität Mannheim 1. Einführung 1-1 Inhaltsverzeichnis (1) 1. Einführung 1.1 Was ist Informatik?

Mehr

Master-Thread führt Programm aus, bis durch die Direktive

Master-Thread führt Programm aus, bis durch die Direktive OpenMP seit 1998 Standard (www.openmp.org) für die Shared-Memory Programmierung; (Prä-)Compiler für viele Systeme kommerziell oder frei (z.b. Omni von phase.hpcc.jp/omni) verfügbar Idee: automatische Generierung

Mehr

Nebenläufige Programmierung in Java: Threads

Nebenläufige Programmierung in Java: Threads Nebenläufige Programmierung in Java: Threads Wahlpflicht: Fortgeschrittene Programmierung in Java Jan Henke HAW Hamburg 10. Juni 2011 J. Henke (HAW) Threads 10. Juni 2011 1 / 18 Gliederung 1 Grundlagen

Mehr

Java-Grundkurs für Wirtschaftsinformatiker

Java-Grundkurs für Wirtschaftsinformatiker Klaus-Georg Deck Herbert Neuendorf Java-Grundkurs für Wirtschaftsinformatiker Die Grundlagen verstehen - Objektorientierte Programmierung - Fortgeschrittene Konzepte kennenlernen - Betriebswirtschaftlich

Mehr

Parallel Computing. Einsatzmöglichkeiten und Grenzen. Prof. Dr. Nikolaus Wulff

Parallel Computing. Einsatzmöglichkeiten und Grenzen. Prof. Dr. Nikolaus Wulff Parallel Computing Einsatzmöglichkeiten und Grenzen Prof. Dr. Nikolaus Wulff Vorüberlegungen Wann ist paralleles Rechnen sinnvoll? Wenn die Performance/Geschwindigkeit steigt. Wenn sich größere Probleme

Mehr