Paralleles Programmieren mit MPI und OpenMP

Größe: px
Ab Seite anzeigen:

Download "Paralleles Programmieren mit MPI und OpenMP"

Transkript

1 Paralleles Programmieren mit MPI und OpenMP Vorlesung «Algorithmen für das wissenschaftliche Rechnen» Olaf Schenk, Michael Hagemann Algorithmen des wissenschaftlichen Rechnens 1 Organisatorisches Teilnahme an den Übungen - Teilnahme ist verpflichtend für den Erhalt des Scheins - Gruppenarbeit in 2er- oder 3er-Gruppen - Praktikumsraum ist jeden Montag von Uhr zugänglich - Alle zwei Wochen Besprechung des Aufgabenblattes Bitte eine Mail mit den Namen der Gruppenmitglieder bis Mittwoch an - [email protected] - Zusammen mit Lösung der 1. Aufgabe, falls noch nicht abgegeben Algorithmen des wissenschaftlichen Rechnens 2 1

2 Übersicht Motivation - Warum paralleles Rechnen Parallele Hardware - Auch hier: Speicher-Organisation Überblick OpenMP - Rechenmodell Einführung MPI - Rechenmodelle - Programmiermodelle Algorithmen des wissenschaftlichen Rechnens 3 Motivation Wissenschaftliches Rechnen heisst immer öfter Paralleles Rechnen Einzelne Prozessoren stossen an physikalische Grenzen Netzwerke werden immer schneller Gesucht: Einheitliche Modelle und Methoden zur Programmierung paralleler und verteilter Systeme Algorithmen des wissenschaftlichen Rechnens 4 2

3 Grundlegende Fragestellungen Hardware: - Wie schaltet man möglichst viele schnelle Gleitkomma- Einheiten zusammen? - Wie gewährleistet man schnellen Speicherzugriff für alle Prozessoren? - Bus-/Netzwerk-Technologie, Topologien - Sonderentwicklungen? (Vektorrechner, aktuell: Earth Simulator «Computenik») - Wirtschaftlichkeit (Benutzung marktüblicher Teile)? Software - Wie nutzt man die Hardware optimal? - Wie bleiben die Programme portabel? (für den nächsten Rechner) - Gute Kompromisse zwischen dem Aufwand der Parallelisierung und dem «Speedup» Algorithmen des wissenschaftlichen Rechnens 5 Parallele Hardware (1) Einordnung nach Speicher-Organisation: Uniform Memory Access; Cache coherent (cc-uma) - SMPs (Shared Memory Parallel, ursprünglich: Symmetric Multi- Processors) - z.b. 2-CPUs Intel SMP Non-uniform MA; not cache coherent (ncc-numa) - MPPs (Massively Parallel Processing), Cluster - z.b. Cray T3E, Beowulf-Cluster Non-uniform MA; cache coherent (cc-numa) - «Virtual Shared Memory» - z.b.: SGI Origin, HP SuperDome - Verteilter Speicher, aber global addressierbar Algorithmen des wissenschaftlichen Rechnens 6 3

4 Parallele Hardware (2) Cache-Kohärenz - Problem: Ein Prozessor liest ein Datum aus dem Speicher und verändert es (im Cache). Ein anderer tut das gleiche. Wenn der erste Proz. das Datum noch nicht in den Speicher zurückgeschrieben hat, ist das Ergebnis falsch. - Abhilfe: Cache/Bus-Snooping. Jeder Cache überprüft, ob andere Prozesse auf «seine» Inhalte zugreifen. Uniform Memory Access - Alle Speicherzugriffe sind gleich schnell - Der Speicher ist global adressierbar Algorithmen des wissenschaftlichen Rechnens 7 Parallele Hardware (3) Shared Memory (cc-uma): Cache P1 Cache P1 P2 Memory Distributed Memory: (ncc-numa) Memory P1 Memory P1 P2 Network Distributed-Shared Memory: (cc-numa) Memory Cache P1 Memory Cache P1 P2 Network Algorithmen des wissenschaftlichen Rechnens 8 4

5 Grenzen von Shared-Memory Eigentlich möchte man nur Shared-Memory haben Zur Zeit sind aber nur bis zu 16 Prozessoren praktikabel Wichtige Einschränkungen sind - Speicherbandbreite - Cache-Kohärenz Deshalb Trend zu Distributed-Shared Memory Systemen - MPP-Systeme mit Shared-Memory Knoten (z.b. IBM SP) - teilweise: cc-numa Algorithmen des wissenschaftlichen Rechnens 9 Übersicht Motivation - Warum paralleles Rechnen Parallele Hardware - Auch hier: Speicher-Organisation Überblick OpenMP - Rechenmodell Einführung MPI - Rechenmodelle - Programmiermodelle Algorithmen des wissenschaftlichen Rechnens 10 5

6 Rechenmodell: Threads Annahmen: - Ein Prozess kann aus mehreren Threads («Fäden») bestehen - Alle Threads teilen den Status (die Variablen) des Programms - Jeder Thread kann zusätzlich private Variablen haben - Die Threads können auf verschiedenen Prozessoren laufen - Es gibt Synchronisations- und Sperr-(Locking) Mechanismen Algorithmen des wissenschaftlichen Rechnens 11 Was ist OpenMP? API zum Schreiben von «Multi-Threaded Applications» - Compiler-Direktiven und Bibliotheksfunktionen - Standardisiert für C und Fortran Neuer Standard (neuer Versuch einer Standardisierung) Wichtig, weil (fast) alle wichtigen Hersteller beteiligt Ansatz: - Programme werden schrittweise parallelisiert - Ausgangspunkt ist die serielle Version, die meist «erhalten» wird - Parallelität wird nicht direkt programmiert, sondern durch Direktiven beeinflusst Algorithmen des wissenschaftlichen Rechnens 12 6

7 Einfaches Beispiel: Hallo Welt Das ursprüngliche Programm bleibt bestehen void main(void) { #pragma omp parallel { printf( Hallo Welt\n ); } } Ausführen (mit Umgebungsvariable): (~): export OMP_NUM_THREADS=4 (~):./hello-openmp Hallo Welt Hallo Welt Hallo Welt Hallo Welt Algorithmen des wissenschaftlichen Rechnens 13 Parallele Regionen (Blöcke) Durch die Compiler-Direktive #pragma omg parallel wird der folgende Block parallel ausgeführt Es wird dafür ein «Team von Threads» gestartet - Die Anzahl ist abhängig von der Umgebungsvariablen OMP_NUM_THREADS, kann aber auch im Programm geändert werden - «Fork-Join-Parallelism» Nachdem alle Threads fertig sind, werden sie entweder gelöscht oder bleiben in Wartestellung Algorithmen des wissenschaftlichen Rechnens 14 7

8 Parallele Schleifen Hauptanwendung von OpenMP ist es, Schleifen zu parallelisieren #pragma omp parallel for - Die direkt folgende Schleife wird parallelisiert Matrix-Matrix Multiplikation: #pragma omp parallel for for (i = 0; i < M; i++) for (j = 0; j < N; j++) for (k = 0; k < K; k++) C[i,j] = A[i,k] * B[k,j]; Die «i»-schleife wird von OMP_NUM_THREADS Threads gleichzeitig ausgeführt Algorithmen des wissenschaftlichen Rechnens 15 Race Conditions Wenn mehrere Threads eine Variable lesen und schreiben, kann es zu Inkonsistenzen kommen Beispiel: Skalar-Produkt: sum = 0.0; #pragma omp parallel for for (i = 0; i < N; i++) sum = sum + x[i] * y[i]; Dies ist analog zu den Cache-Inkonsistenzen in der Hardware Algorithmen des wissenschaftlichen Rechnens 16 8

9 Lösung 1: Locking Um die Addition vor anderen Threads zu schützen, kann man sie als «atomar» oder «kritisch» ausweisen sum = 0.0; #pragma omp parallel for for (i = 0; i < N; i++) #pragma omp critical { sum = sum + x[i] * y[i]; } Dies ist aber ineffizient, weil die Threads nicht mehr «parallel» arbeiten können Algorithmen des wissenschaftlichen Rechnens 17 Lösung 2: Private Variablen Man kann daher in parallelen Regionen bestimmte Variablen als «privat» deklarieren: sum = 0.0; #pragma omp parallel private(local_sum) { local_sum = 0.0; #pragma omp parallel for for (i = 0; i < N; i++) local_sum = local_sum + x[i] * y[i]; #pragma omp critical { sum = sum + local_sum; } } (Dies lässt sich auch etwas knapper formulieren) Algorithmen des wissenschaftlichen Rechnens 18 9

10 Lösung 3: Reduction Variables Da solche Fälle typisch sind, kann man die «kritischen» Variablen als Reduction-Variables ausweisen In den Threads werden sie privat angelegt und am Ende der Schleife mit der entsprechenden Operation verknüpft sum = 0.0; #pragma omp parallel for reduction (+ : sum) for (i = 0; i < N; i++) sum = sum + x[i] * y[i]; Algorithmen des wissenschaftlichen Rechnens 19 Übersicht OpenMP (1) Direktiven (in C, wie alles weitere): - #pragma omp [Klauseln ] - Werden von nicht-openmp Compilern überlesen Parallele Regionen (Blöcke) - #pragma omp parallel - Der folgende Block ( { } ) wird parallel ausgeführt Variable Scoping - #pragma omp private(..) shared(..) reduction(..) firstprivate(..) lastprivat(..) - Legt fest, welche Variablen gemeinsam genutzt werden und welche in jedem Thread als Kopie verwendet werden - shared ist der Default-Wert Algorithmen des wissenschaftlichen Rechnens 20 10

11 Übersicht OpenMP (2) Synchronisierung - #pragma omp atomic, critical, ordered, barrier, flush - Essentiell für die Korrektheit der Programme Parallele Schleifen (work-sharing) - #pragma omp parallel for - Das nachfolgende «for» wird parallelisiert - Art der Aufteilung kann mit der schedule-klausel bestimmt werden - z.b. schedule(dynamic,4): Jeder Thread kriegt vier Schleifendurchläufe (1..4, 5..8, ) zugewiesen und bekommt neue, sobald er fertig ist - Andere Varianten sind static, guided und runtime Algorithmen des wissenschaftlichen Rechnens 21 Übersicht OpenMP (3) Laufzeit-Umgebung: - Anzahl Prozessoren - omp_get_num_procs() - Anzahl Threads: - omp_set_num_threads(int); - int omp_get_num_threads(); - Entspricht der Variablen OMP_NUM_THREADS - int omp_get_thread_num(); Algorithmen des wissenschaftlichen Rechnens 22 11

12 Übersicht OpenMP (4) - Dynamic-Mode: Dürfen in verschiedenen Blocks verschieden viele Threads erzeugt werden? - omp_set_dynamic, omp_get_dynamic - Entspricht: OMP_DYNAMIC (TRUE / FALSE) - Nesting: Dürfen in parallelen Regionen neue Thread-Teams erzeugt werden (verschachtelte Threads)? - omp_set_nested, omp_get_nested - Entspricht: OMP_NESTED (TRUE / FALSE) Algorithmen des wissenschaftlichen Rechnens 23 Einschätzung zu OpenMP Ermöglicht sehr leichte Parallelisierung von bestehenden Programmen Hat genügend Unterstützung um wirklicher Standard zu werden Beschränkt sich aber auf Shared-Memory Systeme Programmierung von Distributed-Memory Systemen verlangt mehr - Identifizierung einer optimalen Datenverteilung auf die Prozessoren (und angeschlossenen Speicher) Minimierung der Kommunikation - Noch nicht befriedigend durch Direktiven lösbar Algorithmen des wissenschaftlichen Rechnens 24 12

13 Übersicht Vorlesung Motivation - Warum paralleles Rechnen Parallele Hardware - Auch hier: Speicher-Organisation Überblick OpenMP - Rechenmodell - Race Conditions Einführung MPI - Rechenmodell - Programmiermodelle Algorithmen des wissenschaftlichen Rechnens 25 Rechenmodell: Message Passing Annahmen: - Es gibt eine Menge von Prozessen - Prozesse laufen nebenläufig - Prozesse können untereinander Nachrichten austauschen (evtl. über Umwege) - An der Kommunikation sind beide Seiten beteiligt (kooperativ, explizites Empfangen) «Schwächer» als Thread-Modell, dafür allgemeingültiger Algorithmen des wissenschaftlichen Rechnens 26 13

14 Vorteile des Message Passing Modells Allgemeingültigkeit - Von Shared-Memory bis Ausdruckskraft - Datentypen, kollektive Kommunikation - «Anthropomorpher» Ansatz («Ich schicke Dir...») Relativ einfach zu «Debuggen» - Kommunikation immer explizit Performance - Optimierung auf verschiedene Plattformen möglich Algorithmen des wissenschaftlichen Rechnens 27 Nachteile Das Programm ist nicht wiederzuerkennen Erfordert hohen Aufwand und Fachwissen (PhD- Programming) Algorithmen des wissenschaftlichen Rechnens 28 14

15 Was ist MPI? Message Passing Interface Syntaktische und semantische Spezifikation von Bibliotheksfunktionen zum Nachrichtenaustausch (ursprünglich für Fortran, C und C++) - Für verschiedene Plattformen gibt es verschiedene Implementierungen dieser Funktionen MPI Explizites Programmieren von Kommunikation Algorithmen des wissenschaftlichen Rechnens 29 Bereiche von MPI MPI basiert auf wenigen Konzepten, die kombiniert werden können. Direkte Kommunikation («Punkt-zu-Punkt») Kollektive Kommunikation («Alle-mit-Allen») Synchronisation Gruppierung von Prozessen Algorithmen des wissenschaftlichen Rechnens 30 15

16 Einstieg: hallo-welt (1) int main(int argc, char* argv[]) { int my_rank; /* Rang *dieses* Prozesses */ int num_procs; /* Prozesse insgesamt */ MPI_Init(&argc, &argv);/* MPI initialisieren */ MPI_Comm_rank(MPI_COMM_WORLD, &my_rank); MPI_Comm_size(MPI_COMM_WORLD, &num_procs); printf("ich bin der %d. von %d Prozessen.\n", my_rank, num_procs); } MPI_Finalize(); /* MPI beenden */ Algorithmen des wissenschaftlichen Rechnens 31 hallo-welt (2) Starten des Programms in n Prozessen: (~): mpicc -o hallo-welt hallo-welt.c (~): mpirun -np 2 hallo-welt Ich bin der 0. von 2 Prozessen. Ich bin der 1. von 2 Prozessen. (~): mpirun -np 4 hallo-welt Ich bin der 2. von 4 Prozessen. Ich bin der 1. von 4 Prozessen. Ich bin der 3. von 4 Prozessen. Ich bin der 0. von 4 Prozessen. Reihenfolge der Ausgabe steht nicht fest! Algorithmen des wissenschaftlichen Rechnens 32 16

17 Programmier-Modell SPMD «Single Program Multiple Data» Es gibt nur ein Programm, das aber in n Prozessen gleichzeitig gestartet wird - Normalerweise auf n Prozessoren (nicht notwendig) Jeder Prozess arbeitet auf seinen Daten (my_rank) Der Programmablauf kann unterschiedlich sein (meist abhängig von der Prozessnummer) Andere Modelle: MPMD: Multiple Programs Multiple Data - Oft: Master Slaves, Frontend Backends Algorithmen des wissenschaftlichen Rechnens 33 Grundlegende Funktionen: Senden MPI_Send(buffer, length, type, destination, tag, communicator) - buffer: Adresse des Puffers - type: MPI-Datentyp (z.b. MPI_INT) - destination: Nummer (Rang, Id) des Ziels - tag: Zusätzliche Identifikation der Nachricht - communicator: Menge der beteiligten Prozesse - Alle Prozesse: MPI_COMM_WORLD Blockiert, bis Übertragung tatsächlich beginnt Algorithmen des wissenschaftlichen Rechnens 34 17

18 Grundlegende Funktionen: Empfangen MPI_Recv(buffer, length, type, source, tag, comm, status) - source: Von wem wird die Nachricht erwartet? - egal: MPI_SOURCE_ANY - status: Wie ist die Nachricht angekommen? - Enthält immer: MPI_SOURCE, MPI_TAG und MPI_ERROR Blockiert, bis vollständig empfangen Algorithmen des wissenschaftlichen Rechnens 35 int char MPI_Status my_rank, num_procs; message[20]; status; MPI_Init(&argc, &argv); MPI_Comm_rank(MPI_COMM_WORLD, &my_rank); MPI_Comm_size(MPI_COMM_WORLD, &num_procs); if (my_rank == 0) { strcpy(message, "Grüezi!"); MPI_Send(&message, strlen(message)+1, MPI_CHAR, 1, 77, MPI_COMM_WORLD); } if (my_rank == 1) { MPI_Recv(&message, 20, MPI_CHAR, 0, 77, MPI_COMM_WORLD, &status); printf("received: %s from %d\n", message, status.mpi_source); } MPI_Finalize(); 18

19 Datentypen in MPI Erhöhen die Portabilität - Verschiedene Repräsentationen auf verschiedenen Plattformen (Grösse, Big/Little-Endian) Erlauben Rechenoperationen (reduce) Zusammengesetzte Datentypen - Array-Spalten und -Zeilen, Vektoren - Zusammengesetzte Strukturen - z.b.: komplexe Zahlen: MPI_Datatype *complex; MPI_Type_contiguous(2, MPI_DOUBLE, complex); MPI_Type_commit(complex); Algorithmen des wissenschaftlichen Rechnens 37 Synchronisation Explizit: Barriere. Alle beteiligten Prozesse warten, bis jeder an dieser Barriere angekommen ist - MPI_Barrier(MPI_Comm comm) Implizit: Blockierendes Empfangen. Der Prozess läuft erst dann weiter, wenn alle Daten empfangen wurden - MPI kennt auch nicht-blockierendes Empfangen Algorithmen des wissenschaftlichen Rechnens 38 19

20 Gruppierung von Prozessen Aufteilung der Prozesse in Gruppen - Verschiedene Programmteile können ungestört voneinander arbeiten - Wichtig für Bibliotheken, die ungestört kommunizieren müssen - Jeder Programmteil erhält (definiert sich) eigenen Communicator Anordnung der Prozesse in Topologien - Abbildung der Prozesse auf die zugrundeliegende Topologie des Netzwerks - Sind die Nachbarn physikalisch miteinander verbunden? - Wie heissen die Nachbar-Prozesse? (Numerierung) - Topologie die für Algorithmus optimal ist (MPI sucht dann Abbildung auf Netzwerk) Algorithmen des wissenschaftlichen Rechnens 39 Beispiele für Prozess-Topologien Feld (Array) (0,0) (0) (0,1) (1) (0,2) (2) (0,3) (3) Gitter (Grid) (0,0) (0,1) (0,2) (0,3) (1,0) (1,1) (1,2) (1,3) (2,0) (2,1) (2,2) (2,3) Würfel (Cube) (0,1,0) (0,1,1) (1,1,1) (0,0,1) (1,0,1) (0,0,0) (1,1,0) (1,0,0) (3,0) (3,1) (3,2) (3,3) Algorithmen des wissenschaftlichen Rechnens 40 20

21 Kollektive Kommunikation Alle Prozesse beteiligen sich an der Kommunikation Verteilung von Daten: - broadcast: Verteile ein Datum vollständig an alle Prozesse - scatter: Verteile ein Datum in Teilen an alle Prozesse - gather: Sammle die Teile in einem Prozess Berechnung: - reduce: Verknüpfe Daten mit kommutativer Operation, z.b.: +, *, max, min Algorithmen des wissenschaftlichen Rechnens 41 Beispiel: Eine Zahl an Alle int my_rank, data; MPI_Init(&argc, &argv); MPI_Comm_rank(MPI_COMM_WORLD, &my_rank); if (my_rank == 0) data = 17; MPI_Broadcast(&data, 1, MPI_INT, 0, /* Sender (Root) */ MPI_COMM_WORLD); if (my_rank!= 0) printf("received: %d \n", data); Algorithmen des wissenschaftlichen Rechnens 42 21

22 Warum kollektive Kommunikation? Höhere Ausdrucksebene Vereinfacht oft den Code Effizienter (z.b. durch Baumalgorithmen): N Transfers log 2 (N) Tr N Algorithmen des wissenschaftlichen Rechnens 43 Kollektive Kommunikation (scatter) kollektiv: MPI_Scatter (send_buf, 4, MPI_INT, recv_buf, 4, MPI_INT, 0, comm); Prozess 0 send_buf (Root-Prozess 0) recv_buf (in allen Prozessen) Algorithmen des wissenschaftlichen Rechnens 44 22

23 Beispiel: α * Vektor 1. Verteilung des Vektors und des Skalars int dim_local = dim / P; double vec[dim]; double vec_local[dim_local]; double alpha; if (my_rank == 0) { /* Initialisiere vec und alpha*/ } MPI_Broadcast (alpha, 1, MPI_Double, 0, MPI_COMM_WORLD); MPI_Scatter(vec, dim_local, MPI_Double, vec_local, dim_local, MPI_Double, 0, MPI_COMM_WORLD); Algorithmen des wissenschaftlichen Rechnens 45 Beispiel: α * Vektor (2) 2. Berechnung der lokalen Produkte for (a = 0; a < dim_local; a++) vec_local[a] *= alpha; 3. Sammlung des Vektors im Root-Prozess: MPI_Gather(vec, dim_local, MPI_Double, vec_local, dim_local, MPI_Double, 0, MPI_COMM_WORLD); Algorithmen des wissenschaftlichen Rechnens 46 23

24 Nicht-Blockierende Kommunikation Wichtig um nebenläufig zu Senden Überlappung von Berechnung und Kommunikation Prinzip: Aufteilen in Initiierung und Statusabfrage MPI_Send kann aufgeteilt werden in - MPI_ISend: Startet die Übertragung («Immediate») - MPI_Wait: Wartet auf die vollständige Übertragung (blockiert) MPI_ISend(buffer, length, type, destination, tag, comm, request) - request: Transaktions-Nummer - Warten auf Beendigung mit MPI_Wait, MPI_Waitall, MPI_Waitsome oder MPI_Waitany Algorithmen des wissenschaftlichen Rechnens 47 Communication Modes Sind «orthogonal» zum nicht-blockierenden Senden (z.b.: MPI_Rsend und MPI_Irsend) Standard - «nicht-lokal» Wartet auf ein Receive des Empfängers Buffered - Daten werden vor dem Senden kopiert, «lokal» Synchronous - Wartet, bis Empfänger anfängt zu Empfangen Ready - MPI_Rrecv vor MPI_Rsend ( kein Handshake) Algorithmen des wissenschaftlichen Rechnens 48 24

25 Communication Modes (2) Der Standard-Modus bietet in den meisten Implementierungen den besten Kompromiss Gepuffertes Senden kann helfen, Deadlocks zu vermeiden - Verschlechtert aber oft Performance (Durchsatz) Besser: Nicht-Blockierendes Senden Algorithmen des wissenschaftlichen Rechnens 49 Freie Implementierungen MPICH - Argonne National Lab, Mississippi State Univ Sowohl für Cluster als auch für MPPs LAM (Local Area Multicomputer) - Ohio Supercomputer Center Nicht für MPPs verfügbar - Teile von MPI Algorithmen des wissenschaftlichen Rechnens 50 25

26 Literatur Offizielle Seite zu OpenMP: Offizielle Seite zu MPI: - Dokumentation zu MPI-1.1 W. Gropp, E. Lusk und A. Skjellum. Using MPI. Portable Parallel Programming with the Message Passing Interface. MIT Press, The History of Parallel Computing: Survey of High Performance Computing Systems: Top 500 Supercomputers: Algorithmen des wissenschaftlichen Rechnens 51 26

OpenMP am Beispiel der Matrizenmultiplikation

OpenMP am Beispiel der Matrizenmultiplikation OpenMP am Beispiel der Matrizenmultiplikation David J. Meder, Dr. Victor Pankratius IPD Tichy Lehrstuhl für Programmiersysteme KIT die Kooperation von Forschungszentrum Karlsruhe GmbH und Universität Karlsruhe

Mehr

Parallele Programmierung mit OpenMP

Parallele Programmierung mit OpenMP Parallele Programmierung mit OpenMP - Eine kurze Einführung - 11.06.2003 RRZN Kolloquium SS 2003 1 Gliederung 1. Grundlagen 2. Programmiermodell 3. Sprachkonstrukte 4. Vergleich MPI und OpenMP 11.06.2003

Mehr

Parallele Programmierung mit MPI

Parallele Programmierung mit MPI Parallele Programmierung mit MPI Marc-Oliver Straub entstanden aus: Parallele Programmierung mit MPI - ein Praktikum Warum Parallelprogrammierung große numerische Probleme (Simulation) optische Bildverarbeitung

Mehr

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss Systeme 1 Kapitel 6 Nebenläufigkeit und wechselseitiger Ausschluss Threads Die Adressräume verschiedener Prozesse sind getrennt und geschützt gegen den Zugriff anderer Prozesse. Threads sind leichtgewichtige

Mehr

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

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

4.4. MPI Message Passing Interface

4.4. MPI Message Passing Interface 4.4. MPI Message Passing Interface Ferienakademie 2009 Franz Diebold Agenda 1. Einführung, Motivation 2. Kommunikationsmodell 3. Punkt-Zu-Punkt-Kommunikation 4. Globale Kommunikation 5. Vergleich MPI und

Mehr

Anleitung zur Nutzung des SharePort Utility

Anleitung zur Nutzung des SharePort Utility Anleitung zur Nutzung des SharePort Utility Um die am USB Port des Routers angeschlossenen Geräte wie Drucker, Speicherstick oder Festplatte am Rechner zu nutzen, muss das SharePort Utility auf jedem Rechner

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Man liest sich: POP3/IMAP

Man liest sich: POP3/IMAP Man liest sich: POP3/IMAP Gliederung 1. Einführung 1.1 Allgemeiner Nachrichtenfluss beim Versenden von E-Mails 1.2 Client und Server 1.2.1 Client 1.2.2 Server 2. POP3 2.1 Definition 2.2 Geschichte und

Mehr

Bedienungsanleitung. Stand: 26.05.2011. Copyright 2011 by GEVITAS GmbH www.gevitas.de

Bedienungsanleitung. Stand: 26.05.2011. Copyright 2011 by GEVITAS GmbH www.gevitas.de GEVITAS-Sync Bedienungsanleitung Stand: 26.05.2011 Copyright 2011 by GEVITAS GmbH www.gevitas.de Inhalt 1. Einleitung... 3 1.1. Installation... 3 1.2. Zugriffsrechte... 3 1.3. Starten... 4 1.4. Die Menü-Leiste...

Mehr

Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten

Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten Das große x -4 Alles über das Wer kann beantragen? Generell kann jeder beantragen! Eltern (Mütter UND Väter), die schon während ihrer Elternzeit wieder in Teilzeit arbeiten möchten. Eltern, die während

Mehr

Anlegen eines DLRG Accounts

Anlegen eines DLRG Accounts Anlegen eines DLRG Accounts Seite 1 von 6 Auf der Startseite des Internet Service Centers (https:\\dlrg.de) führt der Link DLRG-Account anlegen zu einer Eingabemaske, mit der sich jedes DLRG-Mitglied genau

Mehr

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben.

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben. Aufgabe 1.30 : Schreibe ein Programm DM_in_Euro.java zur Umrechnung eines DM-Betrags in Euro unter Verwendung einer Konstanten für den Umrechnungsfaktor. Das Programm soll den DM-Betrag als Parameter verarbeiten.

Mehr

Version 0.3. Installation von MinGW und Eclipse CDT

Version 0.3. Installation von MinGW und Eclipse CDT Version 0.3 Installation von MinGW und Eclipse CDT 1. Stellen Sie fest, ob Sie Windows in der 32 Bit Version oder in der 64 Bit Version installiert haben. 2. Prüfen Sie, welche Java Runtime vorhanden ist.

Mehr

Einführung in PHP. (mit Aufgaben)

Einführung in PHP. (mit Aufgaben) Einführung in PHP (mit Aufgaben) Dynamische Inhalte mit PHP? 2 Aus der Wikipedia (verkürzt): PHP wird auf etwa 244 Millionen Websites eingesetzt (Stand: Januar 2013) und wird auf etwa 80 % aller Websites

Mehr

Wir unterscheiden folgende drei Schritte im Design paralleler Algorithmen:

Wir unterscheiden folgende drei Schritte im Design paralleler Algorithmen: 1 Parallele Algorithmen Grundlagen Parallele Algorithmen Grundlagen Wir unterscheiden folgende drei Schritte im Design paralleler Algorithmen: Dekomposition eines Problems in unabhängige Teilaufgaben.

Mehr

Konfiguration des ewon GSM Modems Kurzbeschreibung zum Aufbau einer GSM Verbindung

Konfiguration des ewon GSM Modems Kurzbeschreibung zum Aufbau einer GSM Verbindung ewon - Technical Note Nr. 004 Version 1.2 Konfiguration des ewon GSM Modems Kurzbeschreibung zum Aufbau einer GSM Verbindung 08.08.2006/SI Übersicht: 1. Thema 2. Benötigte Komponenten 3. Modemkonfiguration

Mehr

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche

Mehr

Erstellen einer E-Mail in OWA (Outlook Web App)

Erstellen einer E-Mail in OWA (Outlook Web App) Erstellen einer E-Mail in OWA (Outlook Web App) Partner: 2/12 Versionshistorie: Datum Version Name Status 13.09.2011 1.1 J. Bodeit Punkte 7 hinzugefügt, alle Mailempfänger unkenntlich gemacht 09.09.2011

Mehr

Nach der Anmeldung im Backend Bereich landen Sie im Kontrollzentrum, welches so aussieht:

Nach der Anmeldung im Backend Bereich landen Sie im Kontrollzentrum, welches so aussieht: Beiträge erstellen in Joomla Nach der Anmeldung im Backend Bereich landen Sie im Kontrollzentrum, welches so aussieht: Abbildung 1 - Kontrollzentrum Von hier aus kann man zu verschiedene Einstellungen

Mehr

Idimager ein Bildverwaltungsprogramm-DAM Software

Idimager ein Bildverwaltungsprogramm-DAM Software Idimager ein Bildverwaltungsprogramm-DAM Software Nachdem hie im Forum zu Bildverwaltung anscheinend noch nichts steht, will ich mal eine kurze Beschreibung meines Bildverwaltungsprogramms zeigen. Idimager

Mehr

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.

Mehr

Konfiguration VLAN's. Konfiguration VLAN's IACBOX.COM. Version 2.0.1 Deutsch 01.07.2014

Konfiguration VLAN's. Konfiguration VLAN's IACBOX.COM. Version 2.0.1 Deutsch 01.07.2014 Konfiguration VLAN's Version 2.0.1 Deutsch 01.07.2014 In diesem HOWTO wird die Konfiguration der VLAN's für das Surf-LAN der IAC-BOX beschrieben. Konfiguration VLAN's TITEL Inhaltsverzeichnis Inhaltsverzeichnis...

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion

Mehr

Threads und OpenMP. Frank Mietke <[email protected]> Cluster- & Gridcomputing Frank Mietke 7/4/04

Threads und OpenMP. Frank Mietke <frank.mietke@informatik.tu-chemnitz.de> Cluster- & Gridcomputing Frank Mietke 7/4/04 Threads und OpenMP Frank Mietke 1 Ziel der Vorlesungen Einführung in Threads Programmierung mit Threads Einführung in OpenMP Programmierung mit OpenMP 2 Was ist

Mehr

8. Bintec Router Redundancy Protocol (BRRP) 8.1 Einleitung

8. Bintec Router Redundancy Protocol (BRRP) 8.1 Einleitung 8. Bintec Router Redundancy Protocol (BRRP) 8.1 Einleitung Im Folgenden wird die Konfiguration von BRRP gezeigt. Beide Router sind jeweils über Ihr Ethernet 1 Interface am LAN angeschlossen. Das Ethernet

Mehr

SJ OFFICE - Update 3.0

SJ OFFICE - Update 3.0 SJ OFFICE - Update 3.0 Das Update auf die vorherige Version 2.0 kostet netto Euro 75,00 für die erste Lizenz. Das Update für weitere Lizenzen kostet jeweils netto Euro 18,75 (25%). inkl. Programmsupport

Mehr

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen Übungen if / else / else if... 2... 2 Aufgabe 2:... 2 Aufgabe 3:... 2 Aufgabe 4:... 2 Aufgabe 5:... 2 Aufgabe 6:... 2 Aufgabe 7:... 3 Aufgabe 8:... 3 Aufgabe 9:... 3 Aufgabe 10:... 3 switch... 4... 4 Aufgabe

Mehr

Architektur Verteilter Systeme Teil 2: Prozesse und Threads

Architektur Verteilter Systeme Teil 2: Prozesse und Threads Architektur Verteilter Systeme Teil 2: Prozesse und Threads 21.10.15 1 Übersicht Prozess Thread Scheduler Time Sharing 2 Begriff Prozess und Thread I Prozess = Sequentiell ablaufendes Programm Thread =

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

Internet Explorer Version 6

Internet Explorer Version 6 Internet Explorer Version 6 Java Runtime Ist Java Runtime nicht installiert, öffnet sich ein PopUp-Fenster, welches auf das benötigte Plugin aufmerksam macht. Nach Klicken auf die OK-Taste im PopUp-Fenster

Mehr

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER Inhalt 1 Einleitung... 1 2 Einrichtung der Aufgabe für die automatische Sicherung... 2 2.1 Die Aufgabenplanung... 2 2.2 Der erste Testlauf... 9 3 Problembehebung...

Mehr

Speicher in der Cloud

Speicher in der Cloud Speicher in der Cloud Kostenbremse, Sicherheitsrisiko oder Basis für die unternehmensweite Kollaboration? von Cornelius Höchel-Winter 2013 ComConsult Research GmbH, Aachen 3 SYNCHRONISATION TEUFELSZEUG

Mehr

ARCO Software - Anleitung zur Umstellung der MWSt

ARCO Software - Anleitung zur Umstellung der MWSt ARCO Software - Anleitung zur Umstellung der MWSt Wieder einmal beschert uns die Bundesverwaltung auf Ende Jahr mit zusätzlicher Arbeit, statt mit den immer wieder versprochenen Erleichterungen für KMU.

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 15: Reguläre Ausdrücke und rechtslineare Grammatiken Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/25 Was kann man mit endlichen

Mehr

Updatehinweise für die Version forma 5.5.5

Updatehinweise für die Version forma 5.5.5 Updatehinweise für die Version forma 5.5.5 Seit der Version forma 5.5.0 aus 2012 gibt es nur noch eine Office-Version und keine StandAlone-Version mehr. Wenn Sie noch mit der alten Version forma 5.0.x

Mehr

FORUM HANDREICHUNG (STAND: AUGUST 2013)

FORUM HANDREICHUNG (STAND: AUGUST 2013) FORUM HANDREICHUNG (STAND: AUGUST 2013) Seite 2, Forum Inhalt Ein Forum anlegen... 3 Forumstypen... 4 Beiträge im Forum schreiben... 5 Beiträge im Forum beantworten... 6 Besondere Rechte der Leitung...

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

Installation der SAS Foundation Software auf Windows

Installation der SAS Foundation Software auf Windows Installation der SAS Foundation Software auf Windows Der installierende Benutzer unter Windows muss Mitglied der lokalen Gruppe Administratoren / Administrators sein und damit das Recht besitzen, Software

Mehr

1 Vom Problem zum Programm

1 Vom Problem zum Programm Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren

Mehr

EasyWk DAS Schwimmwettkampfprogramm

EasyWk DAS Schwimmwettkampfprogramm EasyWk DAS Schwimmwettkampfprogramm Arbeiten mit OMEGA ARES 21 EasyWk - DAS Schwimmwettkampfprogramm 1 Einleitung Diese Präsentation dient zur Darstellung der Zusammenarbeit zwischen EasyWk und der Zeitmessanlage

Mehr

Tapps mit XP-Mode unter Windows 7 64 bit (V2.0)

Tapps mit XP-Mode unter Windows 7 64 bit (V2.0) Tapps mit XP-Mode unter Windows 7 64 bit (V2.0) 1 Einleitung... 2 2 Download und Installation... 3 2.1 Installation von WindowsXPMode_de-de.exe... 4 2.2 Installation von Windows6.1-KB958559-x64.msu...

Mehr

Installation / Aktualisierung von Druckertreibern unter Windows 7

Installation / Aktualisierung von Druckertreibern unter Windows 7 Rechenzentrum Installation / Aktualisierung von Druckertreibern unter Windows 7 Es gibt drei verschiedene Wege, um HP-Druckertreiber unter Windows7 zu installieren: (Seite) 1. Automatische Installation...

Mehr

40-Tage-Wunder- Kurs. Umarme, was Du nicht ändern kannst.

40-Tage-Wunder- Kurs. Umarme, was Du nicht ändern kannst. 40-Tage-Wunder- Kurs Umarme, was Du nicht ändern kannst. Das sagt Wikipedia: Als Wunder (griechisch thauma) gilt umgangssprachlich ein Ereignis, dessen Zustandekommen man sich nicht erklären kann, so dass

Mehr

Modelle der Parallelverarbeitung

Modelle der Parallelverarbeitung Modelle der Parallelverarbeitung Modelle der Parallelverarbeitung 12. Message Passing Interface Thomas Worsch Fakultät für Informatik Karlsruher Institut für Technologie Sommersemester 2017 1 / 36 Überblick

Mehr

ZfP-Sonderpreis der DGZfP beim Regionalwettbewerb Jugend forscht BREMERHAVEN. Der Zauberwürfel-Roboter. Paul Giese. Schule: Wilhelm-Raabe-Schule

ZfP-Sonderpreis der DGZfP beim Regionalwettbewerb Jugend forscht BREMERHAVEN. Der Zauberwürfel-Roboter. Paul Giese. Schule: Wilhelm-Raabe-Schule ZfP-Sonderpreis der DGZfP beim Regionalwettbewerb Jugend forscht BREMERHAVEN Der Zauberwürfel-Roboter Paul Giese Schule: Wilhelm-Raabe-Schule Jugend forscht 2013 Kurzfassung Regionalwettbewerb Bremerhaven

Mehr

M. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung

M. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung M. Graefenhan 2000-12-07 Aufgabe Lösungsweg Übungen zu C Blatt 3 Musterlösung Schreiben Sie ein Programm, das die Häufigkeit von Zeichen in einem eingelesenen String feststellt. Benutzen Sie dazu ein zweidimensionales

Mehr

Übung 9 - Lösungsvorschlag

Übung 9 - Lösungsvorschlag Universität Innsbruck - Institut für Informatik Datenbanken und Informationssysteme Prof. Günther Specht, Eva Zangerle Besprechung: 15.12.2008 Einführung in die Informatik Übung 9 - Lösungsvorschlag Aufgabe

Mehr

Kommunikations-Management

Kommunikations-Management Tutorial: Wie kann ich E-Mails schreiben? Im vorliegenden Tutorial lernen Sie, wie Sie in myfactory E-Mails schreiben können. In myfactory können Sie jederzeit schnell und einfach E-Mails verfassen egal

Mehr

Grundlagen von Python

Grundlagen von Python Einführung in Python Grundlagen von Python Felix Döring, Felix Wittwer November 17, 2015 Scriptcharakter Programmierparadigmen Imperatives Programmieren Das Scoping Problem Objektorientiertes Programmieren

Mehr

Leichte-Sprache-Bilder

Leichte-Sprache-Bilder Leichte-Sprache-Bilder Reinhild Kassing Information - So geht es 1. Bilder gucken 2. anmelden für Probe-Bilder 3. Bilder bestellen 4. Rechnung bezahlen 5. Bilder runterladen 6. neue Bilder vorschlagen

Mehr

Update und Konfiguraton mit dem ANTLOG Konfigurations-Assistenten

Update und Konfiguraton mit dem ANTLOG Konfigurations-Assistenten Update und Konfiguraton mit dem ANTLOG Konfigurations-Assistenten Der Konfigurations-Assistent wurde entwickelt, um die unterschiedlichen ANTLOG-Anwendungen auf den verschiedensten Umgebungen automatisiert

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

Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer

Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer Allgemein: Das RSA-Verschlüsselungsverfahren ist ein häufig benutztes Verschlüsselungsverfahren, weil es sehr sicher ist. Es gehört zu der Klasse der

Mehr

Ein Hinweis vorab: Mailkonfiguration am Beispiel von Thunderbird

Ein Hinweis vorab: Mailkonfiguration am Beispiel von Thunderbird Mailkonfiguration am Beispiel von Thunderbird Ein Hinweis vorab: Sie können beliebig viele verschiedene Mailkonten für Ihre Domain anlegen oder löschen. Das einzige Konto, das nicht gelöscht werden kann,

Mehr

SEP 114. Design by Contract

SEP 114. Design by Contract Design by Contract SEP 114 Design by Contract Teile das zu entwickelnde Programm in kleine Einheiten (Klassen, Methoden), die unabhängig voneinander entwickelt und überprüft werden können. Einheiten mit

Mehr

Softwarelösungen: Versuch 4

Softwarelösungen: Versuch 4 Softwarelösungen: Versuch 4 Nichtstun in Schleife wird ersetzt durch zeitweilige Zurücknahme der Anforderung, um es anderen Prozessen zu erlauben, die Ressource zu belegen: /* Prozess 0 */ wiederhole flag[0]

Mehr

Anleitung über den Umgang mit Schildern

Anleitung über den Umgang mit Schildern Anleitung über den Umgang mit Schildern -Vorwort -Wo bekommt man Schilder? -Wo und wie speichert man die Schilder? -Wie füge ich die Schilder in meinen Track ein? -Welche Bauteile kann man noch für Schilder

Mehr

Standard XPersonenstand - Version 1.4.3 - Verbindliche Handlungsanweisungen

Standard XPersonenstand - Version 1.4.3 - Verbindliche Handlungsanweisungen Standard XPersonenstand - Version 1.4.3 - Verbindliche Handlungsanweisungen Stand: 19. September 2013 1 Mit diesem Dokument werden verbindliche Handlungsanweisungen für die Implementierung des Standards

Mehr

Beispiel: Schleifenparallelisierung

Beispiel: Schleifenparallelisierung Beispiel: Schleifenparallelisierung for (i = 0; i high) { printf ( Exiting during iteration %d\n,i); break; for (j=low;j

Mehr

Modellierung und Programmierung 1

Modellierung und Programmierung 1 Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 19. November 2015 Gültigkeitsbereich (Scope) von Variablen { int m; {

Mehr

Online-Prüfungs-ABC. ABC Vertriebsberatung GmbH Bahnhofstraße 94 69151 Neckargemünd

Online-Prüfungs-ABC. ABC Vertriebsberatung GmbH Bahnhofstraße 94 69151 Neckargemünd Online-Prüfungs-ABC ABC Vertriebsberatung GmbH Bahnhofstraße 94 69151 Neckargemünd Telefon Support: 0 62 23 / 86 55 55 Telefon Vertrieb: 0 62 23 / 86 55 00 Fax: 0 62 23 / 80 55 45 (c) 2003 ABC Vertriebsberatung

Mehr

Lieber SPAMRobin -Kunde!

Lieber SPAMRobin -Kunde! Lieber SPAMRobin -Kunde! Wir freuen uns, dass Sie sich für SPAMRobin entschieden haben. Mit diesem Leitfaden möchten wir Ihnen die Kontoeinrichtung erleichtern und die Funktionen näher bringen. Bitte führen

Mehr

DOKUMENTATION VOGELZUCHT 2015 PLUS

DOKUMENTATION VOGELZUCHT 2015 PLUS DOKUMENTATION VOGELZUCHT 2015 PLUS Vogelzucht2015 App für Geräte mit Android Betriebssystemen Läuft nur in Zusammenhang mit einer Vollversion vogelzucht2015 auf einem PC. Zusammenfassung: a. Mit der APP

Mehr

Urlaubsregel in David

Urlaubsregel in David Urlaubsregel in David Inhaltsverzeichnis KlickDown Beitrag von Tobit...3 Präambel...3 Benachrichtigung externer Absender...3 Erstellen oder Anpassen des Anworttextes...3 Erstellen oder Anpassen der Auto-Reply-Regel...5

Mehr

Dokumentation zur Versendung der Statistik Daten

Dokumentation zur Versendung der Statistik Daten Dokumentation zur Versendung der Statistik Daten Achtung: gem. 57a KFG 1967 (i.d.f. der 28. Novelle) ist es seit dem 01. August 2007 verpflichtend, die Statistikdaten zur statistischen Auswertung Quartalsmäßig

Mehr

Kommunikations-Parameter

Kommunikations-Parameter KNX App knxpresso für Android Tablets/Phones Kommunikations-Parameter Ausgabe Dokumentation: Mai. 2015 Doku Version V1.0.0 - Seite 1/8 Inhaltsverzeichnis 1.1 Nützliche Links... 3 1.2 Beschreibung der Kommunikations-Datei...

Mehr

Wirtschaftsinformatik I

Wirtschaftsinformatik I Wirtschaftsinformatik I - Tutorium 6/ 7 (April 2010) Zusatzinformationen - Lösungsvorschläge Wirtschaftsinformatik I Tutorium Jochen Daum (4.Semester BWL) Universität Mannheim Rechtshinweis: Diese Präsentation

Mehr

Übungen zu C++ Kapitel 1

Übungen zu C++ Kapitel 1 Übungen zu C++ Kapitel 1 Aufgabe 1 Ergänze den Text. a) Die sechs logischen Einheiten eines Computers sind Eingabe-Einheit, Ausgabe-Einheit, RAM, ALU, CPU, Plattenspeicher. b) Die Programme, welche Hochsprachenprogramme

Mehr

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze Ihre Interessentendatensätze bei inobroker Wenn Sie oder Ihre Kunden die Prozesse von inobroker nutzen, werden Interessentendatensätze erzeugt. Diese können Sie direkt über inobroker bearbeiten oder mit

Mehr

Virtual Private Network

Virtual Private Network Virtual Private Network Allgemeines zu VPN-Verbindungen WLAN und VPN-TUNNEL Der VPN-Tunnel ist ein Programm, das eine sichere Verbindung zur Universität herstellt. Dabei übernimmt der eigene Rechner eine

Mehr

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen Open Source professionell einsetzen 1 Mein Background Ich bin überzeugt von Open Source. Ich verwende fast nur Open Source privat und beruflich. Ich arbeite seit mehr als 10 Jahren mit Linux und Open Source.

Mehr

Produktionsplanung und steuerung (SS 2011)

Produktionsplanung und steuerung (SS 2011) Produktionsplanung und steuerung (SS 2011) Teil 1 Sie arbeiten seit 6 Monaten als Wirtschaftsingenieur in einem mittelständischen Unternehmen in Mittelhessen. Das Unternehmen Möbel-Meier liefert die Büroaustattung

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund - mit / ohne Parameter - mit / ohne Rückgabewerte

Mehr

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag Ludwig-Maximilians-Universität München WS 2015/16 Institut für Informatik Übungsblatt 9 Prof. Dr. R. Hennicker, A. Klarl Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung:

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

CL-Mini-ABF. Kurzbeschreibung. Installation und Vorbereitung. Stand 30.01.2012. Ihre HTK-Filiale Michelstadt

CL-Mini-ABF. Kurzbeschreibung. Installation und Vorbereitung. Stand 30.01.2012. Ihre HTK-Filiale Michelstadt 64720 email : [email protected] Stand 30.01.2012 CL-Mini-ABF Inhaltsverzeichnis Kurzbeschreibung... 1 Installation und Vorbereitung...1 ODBC-Zugriff... 2 ODBC-Einrichtung unter Windows XP...2 ODBC-Einrichtung

Mehr

Die allerwichtigsten Raid Systeme

Die allerwichtigsten Raid Systeme Die allerwichtigsten Raid Systeme Michael Dienert 4. Mai 2009 Vorbemerkung Dieser Artikel gibt eine knappe Übersicht über die wichtigsten RAID Systeme. Inhaltsverzeichnis 1 Die Abkürzung RAID 2 1.1 Fehlerraten

Mehr

Verwendung des IDS Backup Systems unter Windows 2000

Verwendung des IDS Backup Systems unter Windows 2000 Verwendung des IDS Backup Systems unter Windows 2000 1. Download der Software Netbackup2000 Unter der Adresse http://www.ids-mannheim.de/zdv/lokal/dienste/backup finden Sie die Software Netbackup2000.

Mehr

crm-now/ps Webforms Webdesigner Handbuch Erste Ausgabe

crm-now/ps Webforms Webdesigner Handbuch Erste Ausgabe crm-now/ps Webforms Webdesigner Handbuch Erste Ausgabe crm-now/ps Webforms: Webdesigner Handbuch Copyright 2006 crm-now Versionsgeschichte Version 01 2006-08-21 Release Version crm-now c/o im-netz Neue

Mehr

icloud nicht neu, aber doch irgendwie anders

icloud nicht neu, aber doch irgendwie anders Kapitel 6 In diesem Kapitel zeigen wir Ihnen, welche Dienste die icloud beim Abgleich von Dateien und Informationen anbietet. Sie lernen icloud Drive kennen, den Fotostream, den icloud-schlüsselbund und

Mehr

Motivation. Motivation

Motivation. Motivation Vorlesung Modellierung nebenläufiger Systeme Sommersemester 2012 Universität Duisburg-Essen Was sind nebenläufige Systeme? Ganz allgemein: Systeme, bei denen mehrere Komponenten/Prozesse nebenläufig arbeiten

Mehr

Mikrocontroller Grundlagen. Markus Koch April 2011

Mikrocontroller Grundlagen. Markus Koch April 2011 Mikrocontroller Grundlagen Markus Koch April 2011 Übersicht Was ist ein Mikrocontroller Aufbau (CPU/RAM/ROM/Takt/Peripherie) Unterschied zum Mikroprozessor Unterschiede der Controllerarten Unterschiede

Mehr

Internet-Wissen. Browser:

Internet-Wissen. Browser: Internet-Wissen Browser: Ein Browser ist ein Computerprogramm, mit dem du dir Seiten im Internet anschauen kannst. Browser ist ein englisches Wort. To browse kann man mit schmökern und durchstöbern übersetzen.

Mehr

Kapitalerhöhung - Verbuchung

Kapitalerhöhung - Verbuchung Kapitalerhöhung - Verbuchung Beschreibung Eine Kapitalerhöhung ist eine Erhöhung des Aktienkapitals einer Aktiengesellschaft durch Emission von en Aktien. Es gibt unterschiedliche Formen von Kapitalerhöhung.

Mehr

Objektorientierte Programmierung. Kapitel 12: Interfaces

Objektorientierte Programmierung. Kapitel 12: Interfaces 12. Interfaces 1/14 Objektorientierte Programmierung Kapitel 12: Interfaces Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2012/13 http://www.informatik.uni-halle.de/ brass/oop12/

Mehr

Parallel Processing in a Nutshell OpenMP & MPI kurz vorgestellt

Parallel Processing in a Nutshell OpenMP & MPI kurz vorgestellt Parallel Processing in a Nutshell & kurz vorgestellt 16. Juni 2009 1 / 29 1 Das Problem 2 2 / 29 1 Das Problem 2 3 2 / 29 1 Das Problem 2 3 4 2 / 29 1 Das Problem 2 3 4 2 / 29 Multi-Core Prozessoren halten

Mehr

Über Arrays und verkettete Listen Listen in Delphi

Über Arrays und verkettete Listen Listen in Delphi Über Arrays und verkettete Listen Listen in Delphi Michael Puff [email protected] 2010-03-26 Inhaltsverzeichnis Inhaltsverzeichnis 1 Einführung 3 2 Arrays 4 3 Einfach verkettete Listen 7 4 Doppelt verkettete

Mehr

Benutzerverwaltung Business- & Company-Paket

Benutzerverwaltung Business- & Company-Paket Benutzerverwaltung Business- & Company-Paket Gemeinsames Arbeiten mit der easyfeedback Umfragesoftware. Inhaltsübersicht Freischaltung des Business- oder Company-Paketes... 3 Benutzerverwaltung Business-Paket...

Mehr

Einführung in Eclipse und Java

Einführung in Eclipse und Java Universität Bayreuth Lehrstuhl für Angewandte Informatik IV Datenbanken und Informationssysteme Prof. Dr.-Ing. Jablonski Einführung in Eclipse und Java Dipl.Inf. Manuel Götz Lehrstuhl für Angewandte Informatik

Mehr

2 Darstellung von Zahlen und Zeichen

2 Darstellung von Zahlen und Zeichen 2.1 Analoge und digitale Darstellung von Werten 79 2 Darstellung von Zahlen und Zeichen Computer- bzw. Prozessorsysteme führen Transformationen durch, die Eingaben X auf Ausgaben Y abbilden, d.h. Y = f

Mehr

Konfigurationsanleitung Access Control Lists (ACL) Funkwerk. Copyright Stefan Dahler - www.neo-one.de 13. Oktober 2008 Version 1.0.

Konfigurationsanleitung Access Control Lists (ACL) Funkwerk. Copyright Stefan Dahler - www.neo-one.de 13. Oktober 2008 Version 1.0. Konfigurationsanleitung Access Control Lists (ACL) Funkwerk Copyright Stefan Dahler - www.neo-one.de 13. Oktober 2008 Version 1.0 Seite - 1 - 1. Konfiguration der Access Listen 1.1 Einleitung Im Folgenden

Mehr

Einführung in. Logische Schaltungen

Einführung in. Logische Schaltungen Einführung in Logische Schaltungen 1/7 Inhaltsverzeichnis 1. Einführung 1. Was sind logische Schaltungen 2. Grundlegende Elemente 3. Weitere Elemente 4. Beispiel einer logischen Schaltung 2. Notation von

Mehr

Powermanager Server- Client- Installation

Powermanager Server- Client- Installation Client A Server Client B Die Server- Client- Funktion ermöglicht es ein zentrales Powermanager Projekt von verschiedenen Client Rechnern aus zu bedienen. 1.0 Benötigte Voraussetzungen 1.1 Sowohl am Server

Mehr