Kapitel III. Prozesse. Prozessverwaltung. Was ist ein Prozess?

Größe: px
Ab Seite anzeigen:

Download "Kapitel III. Prozesse. Prozessverwaltung. Was ist ein Prozess?"

Transkript

1 Kapitel III Prozessverwaltung 1 Was ist ein Prozess? Prozesse ein exekutierendes Programm (aktive Einheit) ein Prozess benötigt Ressourcen: CPU-Zeiten, Speicher, Files, I/O Systeme Betriebssystem ist verantwortlich für: Erzeugen und Terminieren von Prozessen Scheduling von Prozessen Synchronisierung von Prozessen Kommunikation zwischen Prozessen Behandlung von Deadlocks Was ist kein Prozess? Programm (passive Einheit) auf einer Speicherplatte Mehrere unabhängige Prozesse können dasselbe Programm verwenden (z.b. Mailprogramm). Prozess kann mehrere Prozesse erzeugen. 2

2 Multiprogrammierung Systeme, die mehr als 1 Prozess unterstützen Effizientes Nutzen von Ressourcen Während ein Prozess wartet, kann ein anderer exekutiert werden. Mehrere Aktivitäten zur gleichen Zeit: Window-System, Editor, Mail-Programm, Compiler, etc. Preemptive versus non-preemptive multiprogramming 3 Preemptive: Prozess kann CPU durch Betriebssystem verlieren. Non-preemptive: Explizite Programmkonstrukte im Benutzerprogramm steuern die Zuordnung von Prozessen zur CPU. Context Switch CPU-Wechsel von einem Prozess zum anderen nennt man Context Switching: Sichern des Zustandes des aktuellen Prozesses Laden des Zustandes eines neuen Prozesses Context Switchkann nur durchgeführt werden, wenn das BS die CPU hat. Trap: Auftreten eines Fehlers Interrupt: Ursache liegt nicht beim Benutzerprozess. Kontrolle an BS (Interrupt Handler) Explizite Aufgabe der CPU durch Benutzerprozess (z.b. yield oder suspend, I/O Operation, etc.) preemptive scheduling Zeit für Context Switching ist kritisch! 5

3 CPU-Switch zwischen Prozessen Context-Switch 8 7 BS-Aktionen bei einem Interrupt

4 Prozesshierarchien Elternprozess erzeugt Kindprozess Kindprozess kann selbst wieder einen Prozess erzeugen definiert eine Hierarchie UNIX nennt das eine Prozessgruppe" Windows kennt keine Prozesshierarchien alle Prozesse sind gleichwertig ohne Hierarchie 9 Prozesshierarchie eines Unix-Systems 10

5 Prozesszustände Prozesse können in Abhängigkeit von internen und externen Ereignissen verschiedene Zustände einnehmen. Jeder Prozess befindet sich zu jedem Zeitpunkt in genau einem Zustand. Zu jedem Zeitpunkt kann immer nur 1 Prozess von der CPU exekutiert werden. Typische Zustände eines Prozesses (abhängig vom Betriebssystem): New: Prozess wurde soeben erzeugt. Running: Instruktionen werden exekutiert. Waiting: Prozess wartet auf ein Ereignis (z.b. I/O). Ready: Prozess wartet auf CPU. Terminated: Prozess ist beendet. 11 Zustandsübergänge von Prozessen new bestätigt ready beenden terminated unterbrechen running bekommt CPU I/O Operation fertig oder I/O Operation oder Ereignis eingetroffen Warten auf Ereignis waiting 12

6 Scheduling (Prozessorzuteilung) Scheduling erfolgt bei folgenden Zustandsübergängen: Prozesszustand von Running in Waiting (z.b. I/O Anforderung) non-preemptive-scheduling Prozesszustand von Running in Ready (z.b. Interrupt) preemptive-scheduling Prozesszustand von Waiting in Ready(z.B. I/O Operation fertig) preemptive-scheduling Prozesszustand von Readyin Terminated non-preemptive-scheduling 13 Komponenten eines Prozesses Speichersegmente Programm: Textsegment Daten: Globale Variablen, Static Variablen Stack: Activation Records Heap: dynamisch angeforderte Daten CPU Register Programmzähler: nächste ausführbare Programmanweisung Allgemeine CPU Register Statusregister (Resultate von Vergleichsoperationen) Register für Fließkommazahlen 14

7 Betriebssystem und Prozesse (1) BS kontrolliert die Ausführung der Prozesse. Zuteilung von Ressourcen (CPU-Zeit, Speicher, Files, I/O Devices) Vergabe von Prioritäten Verwalten des Prozesszustandes Verwalten von Prozessen in Warteschlangen gemäß Prozesszuständen Erzeugen von Prozessen BS legt Speicher für Prozess an und verwaltet PCB. Wann wird ein Prozess erzeugt? Login Benutzerprozess erzeugt neuen Prozess (Process Spawning) BS erzeugt Serviceprozess etc. 15 Betriebssystem und Prozesse (2) Wann wird ein Prozess beendet? Prozess exekutiert exit Systemaufruf. Prozess liefert eventuell Ergebnis anparent-prozess (wait Systemaufruf). Prozess terminiert anderen Prozess durch kill Systemaufruf. Laufzeitfehler bei Abarbeitung des Prozesses Logout durch Benutzer 16

8 Erzeugen eines Prozesses Wer erzeugt Prozesse? Jeder Prozess kann weitere Prozesse erzeugen. Verwende Fork- (oder Spawn-) Operation Prozessbaum Vater-Kind-Beziehungen zwischen Prozessen Welche Ressourcen (CPU-Zeit, Speicher, Files, I/O Systeme, etc.) bekommt ein Kindprozess? Neue Ressourcen vom Betriebssystem Kopie der Ressourcen (Adressraum) des Vaterprozesses Teilmenge des Vaterprozesses (geringere Gefahr der Überlastung des Systems) Welches Programm exekutiert der Kindprozess? Eine Kopie des Vaterprozesses (Unix fork) Ein Prozess kann sein Programm ändern (execve Systemaufruf in Unix) Ein neues Programm beim Erzeugen des Prozesses (DEC VMS spawn) 17 Erzeugen eines Prozesses (Fork) Erzeuge PCB für neuen Prozess Kopiere die meisten Einträge des Vaterprozesses Initialisiere Abrechnungsinformation eindeutige PID (Prozessoridentifikation) Speicherzuteilung Kopiere eventuell alle Speichersegmente des Vaterprozesses. Programmsegment normalerweise identisch mit Vaterprozess wird daher mit Vaterprozess geteilt. Verwende Speicherverwaltungs-HW Einfügen in Ready-Warteschlange 18

9 Prozessterminierung Prozess kann sich selbst terminieren. Exit Systemaufruf Prozess terminiert anderen Prozess. Kill Systemaufruf Nicht jeder Prozess kann jeden Prozess terminieren. Normalerweise kann Vorgänger- einen Nachfolgerprozess terminieren. Betriebssystem-Kernel kann Prozess terminieren bei Überschreiten der zugeteilten Ressourcen. Illegaler Operation. Vaterprozess terminiert vor Kindprozess. Kindprozess ist dann ein Orphan-Prozess. Unix: Orphan-Prozess wird Kindprozess des Root-Prozesses. VMS: Terminieren des Vaterprozesses führt zur Terminierung aller Nachfolgerprozesse. 19 Prozessterminierung in Unix Kernel Gibt Speicher frei. Speichert PCB in Terminate-Warteschlange. Beendete Prozesse Signal an Vaterprozess über Prozessende (SIGCHILD) Prozess bleibt bestehen, bis er vollständig gelöscht wird (von Vater oder Kernel) Zombie-Prozess. Vaterprozess Wait Systemaufruf wartet auf Terminierung von Kindprozess und liefert Informationen über Terminierungsstatus Abrechnungsinformation Signal Handler sammelt beendete Prozesse. 20

10 Kontrolldaten des BS Das BS verwaltet Prozesse und Ressourcen mithilfe von Tabellen: Prozesstabellen (PCBs) Speichertabellen I/O-Tabellen File-Tabellen etc. 21 Prozesskontrollblock (PCB) Für jeden Prozess verwaltet das Betriebssystem einen PCB (dynamische Datenstruktur), in dem Informationen über Prozesse gespeichert sind. Inhalt des PCB: Prozesszustand: new, ready, etc. CPU-Register Speicherverwaltungsinformation Seitentabellen, Basis- und Offsetregister für Segmente, etc. CPU Scheduling Information Prozessprioritäten, Pointer auf Prozesswarteschlangen Abrechnungsinformation Prozessidentifikation, Benutzerzeiten, Systemzeiten, verwendete Files, etc. I/O Statusinformation Liste der offenen Files Ausstehende I/O-Operationen usw. 23

11 Verwaltung von PCBs Betriebssystem verwaltet Prozesse in einer Prozesstabelle. Kollektion von PCBs nennt man Prozesstabelle. Prozesse werden in Warteschlangen basierend auf Prozesszustand abgespeichert. Ready Warteschlange P1 P2 Plattenspeicherwarteschlange P3 P4 24 Netzwerkwarteschlange P5 P6 Prozess-Scheduling Ein Prozess wandert während seiner Lebenszeit von einer Warteschlange zur nächsten. Scheduler (Teil des BS) ist für die Verwaltung der Exekution von Prozessen zuständig. kontrolliert den Übergang von Prozessen zwischen den Warteschlangen. 26

12 Maximiere CPU-Leistung: Scheduling-Kriterien (1) CPU soll zu 100 % ausgelastet sein. Maximiere Durchsatz: Anzahl der Prozesse, die pro Zeiteinheit (z.b. Stunde oder Sekunde) vollständig exekutiert werden Minimiere Turnaround-Zeiten (Durchlaufzeit): Zeit die ein Prozess benötigt, um von der Ready- in die Terminated- Warteschlange zu kommen Minimiere Wartezeiten: Zeit, die ein Prozess in der Ready-Warteschlange verbringt Minimiere Antwortzeiten: Zeit zwischen Start eines Prozesses und der ersten Antwort 27 Scheduling-Kriterien (2) Allgemeine Ziele des Schedulings: maximiere CPU-Auslastung, Durchsatz minimiere Antwortzeit, Wartezeit, Turnaround-Zeit Systemorientiert: maximiere CPU-Auslastung maximiere Durchsatz Benutzerprozessorientiert: minimiere Turnaround-Zeit minimiere Wartezeit minimiere Antwortzeit (besonders wichtig für interaktive BSe) 29

13 Prozess-Scheduling Typen 3 Arten von Scheduler: langfristiger, mittelfristiger und kurzfristiger Scheduler Scheduler unterscheiden sich dadurch, wie häufig diese aktiv (verfügen über die CPU) sind. Scheduling verändert den Zustand von Prozessen im Zustandsübergangsdiagramm. 30 Langfristiger Scheduler Langfristiger Scheduler (LS) wählt Prozesse aus Plattenspeicher für Exekution im Hauptspeicher aus. LS bekommt CPU ca. einmal pro Minute. LS kontrolliert Grad des Multiprogrammierens (Anzahl der Prozesse im Hauptspeicher). Prozess wird vom LS entweder in den Hauptspeicher geladen und in Warteschlange des kurzfristigen Schedulers eingefügt, oder Warteschlange des mittelfristigen Schedulers eingefügt und bleibt im Plattenspeicher. Wann soll ein Prozess in den Hauptspeicher geladen werden? Ein anderer Prozess terminiert. CPU-Auslastung unterschreitet Grenzwert. 31

14 Mittelfristiger Scheduler Mittelfristiger Scheduler (MS) kontrolliert das Swapping. Swapping: Auslagern von Prozessen auf einen Sekundärspeicher CPU-Belastung ist zu groß. Es ist zuwenig Speicher für alle Prozesse im Hauptspeicher vorhanden. Zuviele Prozesse im Hauptspeicher verschlechtern die Performance. Swapping wird durch 2 neue Prozesszustände realisiert. Ready, suspend Blocked, suspend 32 Kurzfristiger Scheduler (Dispatcher) Der kurzfristige Scheduler (KS) wählt Prozess aus Ready- Warteschlange aus, der die CPU bekommen soll. KS bekommt CPU ca. einmal pro 100 msec. KS muss in dieser Zeit entscheiden, welcher Prozess als nächster die CPU bekommt. KS wird jedes mal aktiviert, wenn eine Event stattfindet, das den gerade exekutierenden Prozess unterbricht (Interrupt), oder eine Möglichkeit bietet, den gerade exekutierenden Prozess zu unterbrechen. Mögliche Events: Clock Interrupt, I/O Interrupt, BS Systemaufruf, Signal, etc. KS ist sehr zeitkritisch. 33

15 Prozesszustände mit Suspend (1) new ready, suspend langfristiges Scheduling ready kurzfristiges Scheduling running blocked, suspend mittelfristiges Scheduling blocked Event Wait exit 34 Prozesszustände mit Suspend (2) Zustände: ready: Prozess ist im Hauptspeicher und wartet auf die CPU. blocked: Prozess ist im Hauptspeicher und wartet auf ein Event. blocked, suspend: Prozess ist im Plattenspeicher und wartet auf ein Event. ready, suspend: Prozess ist im Plattenspeicher und bereit für die Exekution, sobald dieser in den Hauptspeicher geladen wird. Zustandsübergänge: running > blocked: Prozess fordert etwas (z.b. File) an, das noch nicht da ist. blocked > ready und blocked, suspend > ready, suspend : Event, auf das ein Prozess wartet, findet statt. new > ready, new > ready, suspend: neuer Prozess wird erzeugt. Wenn sich zu viele Prozesse im Hauptspeicher (new > ready) befinden, kann das zu Speicherproblem führen. Im Zustand ready, suspend bleibt der Prozess vorerst im Plattenspeicher. 35

16 Auswahl eines Prozesses für die CPU Auswahl eines Prozesses aus verschiedenen Warteschlangen für die Exekution durch die CPU nennt man Scheduling. Es gibt viele Scheduling-Strategien: First-come-First-Served (FCFS) - Prozess, der am längsten in Ready-Warteschlange ist Round-RobinScheduling FCFS und preemption Shortest Process Next - Prozess mit geringster Verarbeitungszeit Shortest Remaining Time First - Prozess mit geringster Zeit bis zur Terminierung Prioritäten-Scheduling - Prozess mit höchster Priorität etc. 38 First-Come-First-Served (FCFS) Prozess, der CPU zuerst anfordert, bekommt CPU. Prozess, der am längsten in der Ready-Warteschlange ist, wird ausgewählt. BS bevorzugt bestimmte Prozesse. lange vor kurzen Prozessen CPU-intensive vor I/O-intensiven Prozessen Prozess P1 P2 Zeit 24 3 P3 3 Prozesse fordern CPU in der Reihenfolge P1, P2, P3 an: durchschnittliche Wartezeit? Prozesse fordern CPU in der Reihenfolge P2,P3,P1 an: durchschnittliche Wartezeit? 39

17 Shortest-Process-First Prozess mit kürzester Laufzeit bekommt die CPU. Verfahren ist nicht preemptive. FCFS bei gleichlangen Prozessen verbessert Antwortzeit Problem: Performance-Abschätzung Schlecht für Time-Sharing-Systeme lange Prozesse Prozess P1 P2 P3 P4 Zeit Prozess-Scheduling unter der Annahme, dass sich P1, P2, P3 und P4 in der Ready-Warteschlange befinden. durchschnittliche Wartezeit? 41 Shortest-Remaining-Time-First Bei Ankunft eines neuen Prozesses Pi kann ein Prozess Pj, der die CPU hat, unterbrochen (Preemption) werden, wenn Pi weniger CPU-Zeit benötigt als Pj. Vorteil: bessere Turnaround-Zeiten als Shortest-Process-First Nachteile: Verzögerung von langen Prozessen Performance-Abschätzung Prozess-Scheduling wie folgt: Prozess Ankunft durchschnittliche Wartezeit? P1 0 Zeit 8 43 P2 P3 P

18 Prioritäten-Scheduling Prozesse werden nach Prioritäten mit und ohne Preemption der CPU zugeteilt. CPU wird an Prozess mit höchster Priorität (kleinster Wert) vergeben. bei gleicher Priorität verwende FCFS Problem: Verhungern von Prozessen Prozess Zeit Priorität Beispiel ohne Preemption: P Prozess-Scheduling wie folgt: durchschnittliche Wartezeit? P2 P P4 P Round-Robin-Scheduling (1) FCFS mit Preemption und fixen Zeitintervallen Dispatcher geht über Warteschlange und weist jedem Prozess die CPU für eine bestimme Zeiteinheit zu. Wenn Prozess weniger als diese Zeiteinheit benötigt, dann gibt er CPU wieder ab. Wenn Prozess mehr als diese Zeiteinheit benötigt, dann erfolgtpreemption Interrupt zum BS Context-Switch Prozess ans Ende der Warteschlange Dispatcher wählt nächsten Prozess aus. 47

19 Round-Robin-Scheduling (2) Prozess, der die CPU zuerst anfordert, bekommt diese auch. Prozess P1 P2 P3 Zeit Beispiel: Zeiteinheit ist 4 und alle Prozesse fordern CPU zur gleichen Zeit an. durchschnittliche Wartezeit? 48 Round-Robin-Scheduling (3) Länge der Zeiteinheit hat Einfluss auf System-Performance. Lange Zeiteinheit realisiert FCFS. Kurze Zeiteinheit realisiert Processor Sharing: kurze Prozesse werden schneller abgearbeitet. 1 CPU für n Prozesse erscheint wie n CPUs (1/n der Geschwindigkeit des realen Prozessors) für n Prozesse. Es scheint, als ob es 10 langsame CPUs statt einer schnellen CPU gibt. Zeit für Context Switch ist auch zu berücksichtigen. Wenn Context Switch 10 % der Zeiteinheit benötigt, so werden ca. 10 % der CPU für das Context Switching benötigt. 50

20 Prozesse und Threads Ein Prozess hat Ressourcen virtuellen Adressbereich in dem das Prozess-Image geladen ist und der durch Speicherschutz abgesichert ist. Files, I/O Ressourcen, etc. definiert eine Einheit für das Scheduling Getrennte Betrachtung von Ressourcen und Scheduling-Einheit Ein Prozess entspricht einer Einheit für die Ressourcenverwaltung. Ein Thread entspricht einer Einheit für das Scheduling. Bei mehr als 1 Thread pro Prozess spricht man von Multithreading. 52 Threads (1) Thread: Leichtgewichtprozess, der aus folgenden Komponenten besteht: Programmzähler Register-Set für thread-lokale Variablen Stack Zustand Thread hat Zugriff auf Speicher und Ressourcen seines Prozesses. befindet sich in einem Ausführungszustand (Ready, etc.). kann Prioritäten haben. Eine Menge von Threads teilt sich Speicher (außer Stack) Programmcode offene Files (inkl. Daten in File-Buffer) Signale 53

21 Thread-Verwendung (1) 54 Ein Textverarbeitungsprogramm mit 3 Threads Thread-Verwendung (2) 55 Ein multithreaded Web Server

22 Thread-Verwendung (3) Code für vorherige Folie (a) Dispatcher Thread (b) Worker Thread 56 Threads Vorteile und Zustände Vorteile von Threads sehr schnelles Context Switching Datenaustausch mithilfe eines gemeinsamen Speichers (keine Kernelaufrufe für expliziten Datenaustausch) Wenn ein Thread blockiert, können andere Threads weiterarbeiten. Gilt nur für Kernel-Thread basierte Systeme. asynchrone Kommunikation mittels Threads (z.b. Java) Thread-Zustände: Spawn: Thread befindet sich in Ready-Warteschlange. Register und Stack werden angelegt. Block: Thread wartet auf Event. Unblock: Nachdem das Event eintritt, wird Thread in Ready- Warteschlange gegeben. Running: Thread wird von CPU exekutiert. Finish: Thread hat fertig exekutiert. Register und Stack werden freigegeben. 58

23 Multithreaded Prozessmodell Thread Thread Thread Process Control Block Thread Control Block User Stack Thread Control Block User Stack Thread Control Block User Stack User Address Space Kernel Stack Kernel Stack Kernel Stack 59 Thread-Modell (1) 60 (a) 3 Prozesse jeder mit einem Thread (b) 1 Prozess mit 3 Threads

24 Thread-Modell (2) Thread-Modell (3) Jeder Stack mit seinem eigenen Stack

25 Benutzer-Threads Der Kernel sieht nur den Prozess aber keine Threads. Verwaltung der Threads mittels Thread Library, die außerhalb des BS liegt. Context-Switching zwischen Threads im User Mode ohne BS. Vorteile: Applikationsspezifisches Thread Scheduling is möglich. Portabilität von Thread Libraries, da keine Änderung des Kernels vorgenommen werden muss. Benutzer-Threads sind schneller als Kernel-Threads, weil der Kernel nicht involviert ist. Nachteile: Kein Parallelismus auf Multiprozessorarchitektur Wenn ein Thread einen System Call (immer blockierend) exekutiert, dann wird der ganze Prozess blockiert. 63 Implementierung eines Threads im Benutzeradressraum 64 User-level Threads Package

26 Kernel Threads Thread Management des BS verwaltet Threads. API zum Kernel Alle Threads eines Prozesses sind für den Kernel sichtbar. Thread Scheduling durch Kernel. Vorteile: Wenn Thread blockiert, können andere Threads weiterarbeiten. Parallelismus auf Mutiprozessorarchitekturen kann ausgenutzt werden. Nachteile: Thread Context Switching erfordert Umschalten zwischen 2 Modi Erhöht die Zeit für das Context Switching. User Mode <-> Kernel Mode Ideal wäre Kombination von User mit Kernel Threads (z.b. Sun Solaris). 65 Implementierung von Kernel-Threads 66 Ein Threads-Umgebung, die vom Kernel verwaltet wird

27 Hybride Thread-Implementierung Multiplexen von User-level Threads auf Kernel-level Threads 67 Thread Implementierung Benutzer-Threads Asynchr. Kernel Calls (Digital Unix) Solaris Benutzer-Threads Leichtgewicht Prozesse Kernel Threads 68

28 Zusammenfassung Thread: Leichtgewichtprozess für schnelles Context Switching Jeder Prozess kann aus mehreren Threads bestehen. Wenn ein Thread blockiert, kann ein anderer Thread weiterarbeiten. 3 Arten von Thread-Implementierungen: Benutzer-Threads Kernel Threads hybride Threads 69 Parallelarchitekturen IBM RS/6000 SP SGI Power Challenge XL NEC SX-5multi node (8 CPUs pro Knoten) 70 Earth Simulator (540*8 CPUs)

29 72 71 Some Large Clusters

30 Architekturen 500 SIMD Constellation Cluster MPP Jun 93 Nov 93 Single Processor Jun 94 Nov 94 Jun 95 Nov 95 SMP Jun 96 Nov 96 Jun 97 Nov 97 Jun const, 28 clus, 343 mpp, 17 smp Nov 98 Jun 99 Nov 99 Jun 00 Nov 00 Verteilte und parallele Systeme: Probleme Skalierbarkeit (System & Anwendung) Verfügbarkeit (Fehlermanagement) Single System Image Schnelle Kommunikation (Netzwerk & Protokolle) Lastverteilung (CPU, Netz, Speicher, Platte) Sicherheit und Chiffrierung Verteilte Umgebung (soziale Belange ) Management (Verwaltung & Kontrolle) Softwarewerkzeuge Programmierumgebung (einfache und effiziente APIs) Anwendungen (cluster-aware & non-aware Anw.) 74

31 Entwicklung von verteilten und parallelen Programmen 75 Kooperation zwischen Prozessen Kooperierende Prozesse haben gemeinsamen Speicheradressbereich (Daten und Code) teilen sich Daten über Files oder kommunizieren über Nachrichtenaustausch. Konsistenter Zugriff auf gemeinsame Daten durch Synchronisierung. Speedup durch Parallelismus Speedup einer Anwendung = (Laufzeit von 1 Prozessor)/(Laufzeit von mehreren Prozessoren) Effizienz= Speedup/Anzahl der Prozessoren Teile Anwendung in mehrere Prozesse, die auf verschiedenen Prozessoren exekutieren. Benötige mehrere Prozessoren, um Speedup zu erzielen. Berechnungen als Module: verschiedene Prozessoren für verschiedene Funktionen 76 Editor, Debugger, Übersetzer, Linker, Assembler Moderne Betriebssysteme unterstützen gleichzeitiges Editieren, Drucken und Übersetzen.

32 Interprozess Kommunikation Methode zur Interprozesskommunikation (IPC) für einzelne Computer und verteilte Systeme Mechanismus für Synchronisierung und wechselseitiger Ausschluss Kommunikation setzt Verbindung (Link) zwischen Prozessoren voraus. Physikalischer Link: gemeinsamer Speicher, Hardware Bus, Netzwerk, usw. Logischer Link: Implementierungsaspekte Können mehr als 2 Prozesse einen Link verwenden? Können Links in 1 oder 2 Richtungen verwendet werden? Wie werden Prozesse bei Kommunikation angesprochen? Prozessidentifikation (Signale) Namen eines File-Systems (Unix Domain Sockets) Indirekt über Mailboxen (Ports) Send/ Receive Operationen für Kommunikation Send(Prozess, Nachricht) Receive(Prozess, Nachricht) 77 Anwendung: Erzeuger/Verbraucher Erzeuger generiert Daten und schickt sie an den Verbraucher. Erzeuger liest Daten und verwendet diese. Beispiel: Übersetzer (Erzeuger) Assembler (Verbraucher) Puffer-System: Lose gekoppelter Datenaustausch kommt in der Praxis häufig vor. Benötige Platz (Puffer), um generierte Daten für den Verbraucher zu speichern. Puffer kann fixe oder variable Größe haben. 78

33 Message Passing (1) Message Passing: Austausch von Nachrichten zwischen zwei oder mehreren Prozessen. Nachricht wird gesendet: Sender wartet auf Receiver, bis dieser die Nachricht erhält. Sender wartet, bis Nachricht im Netz ist. Sender wartet, bis Betriebssystem eine Kopie der Nachricht hat. Sender wartet, bis Receiver auf die Nachricht antwortet: ähnlich wie Aufruf einer Prozedur. erweiterbar auf Remote Procedure Call (RPC) System. Fehlermöglichkeiten Prozess terminiert. Receiver wartet beliebig lange. Sender könnte warten oder fortsetzen. Nachricht geht im Netzwerk verloren. Wer entdeckt diesen Fehler? Betriebssystem oder Anwendung Timeouts 79 Message Passing (2) Message Passing gibt es für Architekturen mit gemeinsamen und verteiltem Speicher sequentielle Architekturen Der Austausch von Nachrichten erfordert Synchronisation: Empfänger kann Nachricht erst empfangen, wenn diese vom Sender abgeschickt worden ist. Blockierende und nicht-blockierende Kommunikation blockierendes Send und Receive Sender und Receiver müssen warten, bis Nachricht beim Receiver ankommt. nicht-blockierendes Send und blockierendes Receive Sender ist solange blockiert, bis Nachricht im Netz ist. nicht-blockierendes Send und nicht-blockierendes Receive Weder Sender noch Receiver sind blockiert. 80

34 Kommunikationsoptimierung Message Passing ohne Optimierung send_block(p1,n) recv_block(p2,n) Message Passing mit Optimierung (Überlappung von Kommunikation mit sinnvollen Berechnungen) send_nonblock(p1,n) id = recv_nonblock(p2,n) // do some useful work if (recv_check(id)) then process_message() else // do some useful work recv_wait(id) // block for message to arrive process_message() endif 81 Direkte Kommunikation Jeder Prozess muss den Sender und Empfänger einer Nachricht explizit nennen. Beim Empfänger kann der Sender unbekannt sein (z.b. Server-Prozess) send(p,nachricht)... schicke Nachricht an Prozess P receive (Q, Nachricht)... erhalte Nachricht von Prozess Q receive (id, Nachricht)... erhalte Nachricht von beliebigem Prozess, dessen id nach Erhalt der Nachricht gegeben ist. Nachteil: Bei Änderung der Prozessnamen müssen eventuell zahlreiche Programmstellen geändert werden. 82

35 Indirekte Kommunikation (1) Nachrichten werden über Mailboxen (Ports) mit eindeutiger Identifikation übertragen. Nachrichten werden in Mailbox abgelegt und von dort gelesen. Prozesse können nur miteinander kommunizieren, wenn sie eine gemeinsame Mailbox mit eindeutiger Identifikation haben. Prozesse können daher auch über mehrere Mailboxen miteinander kommunizieren. 83 P 1 P n Mailbox Q 1 Q n Indirekte Kommunikation (2) Kommandos: send(a,nachricht) receive (A, Nachricht)... schicke Nachricht an Mailbox A... erhalte Nachricht von Mailbox A Sender-Receiver Verbindungen: statisch oder dynamisch (connect, disconnect) one-to-one, one-to-many, many-to-many 84

36 Barriers 85 Verwendung von Barriers Prozesse nähern sich einem Barrier Alle bis auf 1 Prozess bei Barrier blockiert Wenn der letzte Prozesse beim Barrier ankommt, werden alle Prozesse gleichzeitig durchgelassen. Signale (Unix) Signale ermöglichen den Austausch von 1-Bit Informationen zwischen Prozessen (oder Betriebssystem und einem Prozess). Signale: Systemänderung: Fenstergröße Zeitgrenze erreicht: Alarmnachrichten Fehlerereignisse: Segmentation Fault I/O Ereignisse: Daten stehen zur Verfügung. Signale sind ähnlich wie Interrupts. Ein Prozess wird angehalten, und eine spezielle Behandlungsfunktion wird aufgerufen. Vordefinierte Signale stehen meistens zur Verfügung. 86

37 Zusammenfassung Prozesse Multiprogrammieren und Context-Switch Prozesshierarchien Prozesszustände Prozesskontrollblock Prozess-Scheduling Threads als Alternative zu Prozessen Interaktion zwischen Prozessen Message Passing gemeinsamer Speicher Signale 87

Kapitel III. Prozessverwaltung. VO Betriebssysteme

Kapitel III. Prozessverwaltung. VO Betriebssysteme Kapitel III Prozessverwaltung V 1 Was ist ein Prozess? Prozesse ein exekutierendes Programm (aktive Einheit) ein Prozess benötigt Ressourcen: CPU-Zeiten, Speicher, Files, I/O Systeme Betriebssystem ist

Mehr

Kapitel III Prozessverwaltung VO Betriebssysteme 1

Kapitel III Prozessverwaltung VO Betriebssysteme 1 Kapitel III Prozessverwaltung VO Betriebssysteme 1 Prozesse Was ist ein Prozess? ein exekutierendes Programm (aktive Einheit) ein Prozess benötigt Ressourcen: Prozessorzeiten, Speicher, Files, I/O Systeme

Mehr

Dämon-Prozesse ( deamon )

Dämon-Prozesse ( deamon ) Prozesse unter UNIX - Prozessarten Interaktive Prozesse Shell-Prozesse arbeiten mit stdin ( Tastatur ) und stdout ( Bildschirm ) Dämon-Prozesse ( deamon ) arbeiten im Hintergrund ohne stdin und stdout

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

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

Betriebssysteme. Dipl.-Ing.(FH) Volker Schepper

Betriebssysteme. Dipl.-Ing.(FH) Volker Schepper 1. Der Prozess beginnt im Zustand Erzeugt, nachdem sein Vaterprozess den Systemaufruf fork() (s.u.) abgesetzt hat. In diesem Zustand wird der Prozess-Kontext initialisiert. 2. Ist diese Aufbauphase abgeschlossen,

Mehr

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz Systeme I: Betriebssysteme Kapitel 4 Prozesse Maren Bennewitz Version 20.11.2013 1 Begrüßung Heute ist Tag der offenen Tür Willkommen allen Schülerinnen und Schülern! 2 Wdhlg.: Attributinformationen in

Mehr

Systeme 1. Kapitel 5. Scheduling

Systeme 1. Kapitel 5. Scheduling Systeme 1 Kapitel 5 Scheduling Scheduling Verteilung und Zuweisung von begrenzten Ressourcen an konkurrierende Prozesse Beispiel: -> Zeitablaufsteuerung Zwei Prozesse zur gleichen Zeit rechenbereit auf

Mehr

Begriff: Scheduling Planung, Schedule Plan. Verplanung der CPU-Zeit an die Threads (bzw. Prozesse)

Begriff: Scheduling Planung, Schedule Plan. Verplanung der CPU-Zeit an die Threads (bzw. Prozesse) 5 CPU-Scheduling Im folgenden wird von Threads gesprochen. Bei Systemen, die keine Threads unterstützen, ist der einzige "Thread" eines Prozesses gemeint. Früher wurde dieser Thread synonym mit dem Begriff

Mehr

Formular»Fragenkatalog BIM-Server«

Formular»Fragenkatalog BIM-Server« Formular»Fragenkatalog BIM-Server«Um Ihnen so schnell wie möglich zu helfen, benötigen wir Ihre Mithilfe. Nur Sie vor Ort kennen Ihr Problem, und Ihre Installationsumgebung. Bitte füllen Sie dieses Dokument

Mehr

Bitte verwenden Sie nur dokumentenechtes Schreibmaterial!

Bitte verwenden Sie nur dokumentenechtes Schreibmaterial! VO 182.711 Prüfung Betriebssysteme 8. November 2013 KNr. MNr. Zuname, Vorname Ges.)(100) 1.)(35) 2.)(20) 3.)(45) Zusatzblätter: Bitte verwenden Sie nur dokumentenechtes Schreibmaterial! 1 Synchronisation

Mehr

Grundlagen verteilter Systeme

Grundlagen verteilter Systeme Universität Augsburg Insitut für Informatik Prof. Dr. Bernhard Bauer Wolf Fischer Christian Saad Wintersemester 08/09 Übungsblatt 3 12.11.08 Grundlagen verteilter Systeme Lösungsvorschlag Aufgabe 1: a)

Mehr

4D Server v12 64-bit Version BETA VERSION

4D Server v12 64-bit Version BETA VERSION 4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und

Mehr

Domänenanalyse Threadverwaltung/Scheduling

Domänenanalyse Threadverwaltung/Scheduling Domänenanalyse Threadverwaltung/Scheduling Johannes Handl, Marc Rößler, Christian Strengert 15. Mai 2003 Domänenanalyse Threadverwaltung/Scheduling [1] Domänendefinition Die Erzeugung, Verwaltung, Umschaltung/Wechsel,

Mehr

Übungen zum Fach Betriebssysteme Kapitel 3

Übungen zum Fach Betriebssysteme Kapitel 3 Übungen zum Fach Betriebssysteme Kapitel 3 Prof. Dr. Kern & Prof. Dr. Wienkop Prozessverwaltung 1 Prozeßauslagerung Ein Betriebssystem, das die Zustände "rechnend", "bereit" und "wartend" sowie den künstlichen

Mehr

Round-Robin Scheduling (RR)

Round-Robin Scheduling (RR) RR - Scheduling Reigen-Modell: einfachster, ältester, fairster, am weitesten verbreiteter Algorithmus Entworfen für interaktive Systeme (preemptives Scheduling) Idee: Den Prozessen in der Bereitschaftsschlange

Mehr

Prozesse und Threads. Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at

Prozesse und Threads. Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at Prozesse und Threads Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at 1 Ziel: Gleichzeitiges, kontrolliertes Ausführen von Programmen auf einem Rechner Welche Mechanismen sind

Mehr

How to do? Projekte - Zeiterfassung

How to do? Projekte - Zeiterfassung How to do? Projekte - Zeiterfassung Stand: Version 4.0.1, 18.03.2009 1. EINLEITUNG...3 2. PROJEKTE UND STAMMDATEN...4 2.1 Projekte... 4 2.2 Projektmitarbeiter... 5 2.3 Tätigkeiten... 6 2.4 Unterprojekte...

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

Domänenmodell: Fadenkommunikation und -synchronisation

Domänenmodell: Fadenkommunikation und -synchronisation Domänenmodell: Fadenkommunikation und -synchronisation Alexander Humphreys, Reinhard Rösch, Fabian Scheler 15. Mai 2003 Inhaltsverzeichnis 1 Domänendefinition 1 2 Domänenlexikon 1 3 Konzeptmodelle 4 4

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

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Diese Verbindung muss einmalig eingerichtet werden und wird benötigt, um den Zugriff vom privaten Rechner oder der Workstation im Home Office über

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

Betriebssysteme. Dipl.-Ing.(FH) Volker Schepper

Betriebssysteme. Dipl.-Ing.(FH) Volker Schepper Speicherverwaltung Real Mode Nach jedem starten eines PC befindet sich jeder x86 (8086, 80386, Pentium, AMD) CPU im sogenannten Real Mode. Datenregister (16Bit) Adressregister (20Bit) Dadurch lassen sich

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

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 UNIVERSITÄT LEIPZIG Enterprise Computing Einführung in das Betriebssystem z/os Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 Verarbeitungsgrundlagen Teil 2 Virtual Storage el0100 copyright

Mehr

SharePoint Demonstration

SharePoint Demonstration SharePoint Demonstration Was zeigt die Demonstration? Diese Demonstration soll den modernen Zugriff auf Daten und Informationen veranschaulichen und zeigen welche Vorteile sich dadurch in der Zusammenarbeit

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

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten In dem Virtuellen Seminarordner werden für die Teilnehmerinnen und Teilnehmer des Seminars alle für das Seminar wichtigen Informationen,

Mehr

Datentechnik. => Das Rechenergebnis ist nur dann sinnvoll, wenn es rechtzeitig vorliegt. Die Zeit muß daher beim Programmdesign berücksichtigt werden.

Datentechnik. => Das Rechenergebnis ist nur dann sinnvoll, wenn es rechtzeitig vorliegt. Die Zeit muß daher beim Programmdesign berücksichtigt werden. 5. Steuerung technischer Prozesse 5.1 Echtzeit (real time) Im Gegensatz zu Aufgabenstellungen aus der Büroumgebung, wo der Anwender mehr oder weniger geduldig wartet, bis der Computer ein Ergebnis liefert

Mehr

Vorl. 6: Single- und Multitasking

Vorl. 6: Single- und Multitasking Universität Bielefeld Technische Fakultät AG Rechnernetze und verteilte Systeme Vorl. 6: Single- und Multitasking Peter B. Ladkin Single Tasking Command Interpreter (ComInt) läuft wartet auf Tastatur-Eingabe

Mehr

GEZIELT MEHR SICHERHEIT MIT 4I ACCESS SERVER & 4I CONNECT CLIENT

GEZIELT MEHR SICHERHEIT MIT 4I ACCESS SERVER & 4I CONNECT CLIENT Seite 1/7 GEZIELT MEHR SICHERHEIT MIT 4I ACCESS SERVER & 4I CONNECT CLIENT ZENTRAL LOKALE MANAGEMENT-PLATTFORM FÜR EINE W ELTWEIT SICHERE INDUSTRIELLE KOMMUNIKATION. Seite 2/7 Auf den folgenden Seiten

Mehr

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank

Mehr

mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger

mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger Grundlegendes Oracle9i PostgreSQL Prevayler Memory mywms bietet umfangreiche Konfigurationsmöglichkeiten um die Daten dauerhaft zu speichern.

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

Tevalo Handbuch v 1.1 vom 10.11.2011

Tevalo Handbuch v 1.1 vom 10.11.2011 Tevalo Handbuch v 1.1 vom 10.11.2011 Inhalt Registrierung... 3 Kennwort vergessen... 3 Startseite nach dem Login... 4 Umfrage erstellen... 4 Fragebogen Vorschau... 7 Umfrage fertigstellen... 7 Öffentliche

Mehr

Root-Server für anspruchsvolle Lösungen

Root-Server für anspruchsvolle Lösungen Root-Server für anspruchsvolle Lösungen I Produktbeschreibung serverloft Internes Netzwerk / VPN Internes Netzwerk Mit dem Produkt Internes Netzwerk bietet serverloft seinen Kunden eine Möglichkeit, beliebig

Mehr

Step by Step Webserver unter Windows Server 2003. von Christian Bartl

Step by Step Webserver unter Windows Server 2003. von Christian Bartl Step by Step Webserver unter Windows Server 2003 von Webserver unter Windows Server 2003 Um den WWW-Server-Dienst IIS (Internet Information Service) zu nutzen muss dieser zunächst installiert werden (wird

Mehr

Prozessarchitektur einer Oracle-Instanz

Prozessarchitektur einer Oracle-Instanz 6. Juni 2008 Inhaltsverzeichnis Oracle Instanz 1 Oracle Instanz 2 3 Redo Log Buffer Shared Pool Java Pool & Large Pool Oracle Instanz Eine Oracle-Instanz ist Hauptbestandteil des Oracle Datenbank Management

Mehr

Es kann maximal ein Prozess die Umladestelle benutzen.

Es kann maximal ein Prozess die Umladestelle benutzen. SoSe 0 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Präsenzübung (Musterlösung) 0-06-0 bis 0-06-06 Aufgabe : Erzeuger/Verbraucher-Pattern Ein Getränkemarkt hat

Mehr

TeamSpeak3 Einrichten

TeamSpeak3 Einrichten TeamSpeak3 Einrichten Version 1.0.3 24. April 2012 StreamPlus UG Es ist untersagt dieses Dokument ohne eine schriftliche Genehmigung der StreamPlus UG vollständig oder auszugsweise zu reproduzieren, vervielfältigen

Mehr

SDD System Design Document

SDD System Design Document SDD Software Konstruktion WS01/02 Gruppe 4 1. Einleitung Das vorliegende Dokument richtet sich vor allem an die Entwickler, aber auch an den Kunden, der das enstehende System verwenden wird. Es soll einen

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

5 Speicherverwaltung. bs-5.1 1

5 Speicherverwaltung. bs-5.1 1 5 Speicherverwaltung bs-5.1 1 Pufferspeicher (cache) realer Speicher Primärspeicher/Arbeitsspeicher (memory) Sekundärspeicher/Hintergrundspeicher (backing store) (Tertiärspeicher/Archivspeicher) versus

Mehr

TCP SYN Flood - Attack. Beschreibung Auswirkungen Zuordnung zu Gefährdungskategorie und Attacken-Art Gegenmaßnahmen Quellen

TCP SYN Flood - Attack. Beschreibung Auswirkungen Zuordnung zu Gefährdungskategorie und Attacken-Art Gegenmaßnahmen Quellen TCP SYN Flood - Attack Beschreibung Auswirkungen Zuordnung zu Gefährdungskategorie und Attacken-Art Gegenmaßnahmen Quellen TCP SYN Flood - Beschreibung TCP SYN Flood Denial of Service Attacke Attacke nutzt

Mehr

Clustering (hierarchische Algorithmen)

Clustering (hierarchische Algorithmen) Clustering (hierarchische Algorithmen) Hauptseminar Kommunikation in drahtlosen Sensornetzen WS 2006/07 Benjamin Mies 1 Übersicht Clustering Allgemein Clustering in Sensornetzen Clusterheads Cluster basiertes

Mehr

Übung: Verwendung von Java-Threads

Übung: Verwendung von Java-Threads Übung: Verwendung von Java-Threads Ziel der Übung: Diese Übung dient dazu, den Umgang mit Threads in der Programmiersprache Java kennenzulernen. Ein einfaches Java-Programm, das Threads nutzt, soll zum

Mehr

S7-Hantierungsbausteine für R355, R6000 und R2700

S7-Hantierungsbausteine für R355, R6000 und R2700 S7-Hantierungsbausteine für R355, R6000 und R2700 1. FB90, Zyklus_R/W Dieser Baustein dient zur zentralen Kommunikation zwischen Anwenderprogramm und dem Modul R355 sowie den Geräten R6000 und R2700 über

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

ICS-Addin. Benutzerhandbuch. Version: 1.0

ICS-Addin. Benutzerhandbuch. Version: 1.0 ICS-Addin Benutzerhandbuch Version: 1.0 SecureGUARD GmbH, 2011 Inhalt: 1. Was ist ICS?... 3 2. ICS-Addin im Dashboard... 3 3. ICS einrichten... 4 4. ICS deaktivieren... 5 5. Adapter-Details am Server speichern...

Mehr

3. Stored Procedures und PL/SQL

3. Stored Procedures und PL/SQL 3. Stored Procedures und PL/SQL Wenn eine Anwendung auf einer Client-Maschine läuft, wird normalerweise jede SQL-Anweisung einzeln vom Client an den Server gesandt, und jedes Ergebnistupel wird einzeln

Mehr

Kurzanleitung zur Softwareverteilung von BitDefender Produkten...2

Kurzanleitung zur Softwareverteilung von BitDefender Produkten...2 Kurzanleitung zur Softwareverteilung von Kurzanleitung zur Softwareverteilung von BitDefender Produkten...2 I. BitDefender Management Agenten Verteilung...2 1.1. Allgemeine Bedingungen:... 2 1.2. Erste

Mehr

OPERATIONEN AUF EINER DATENBANK

OPERATIONEN AUF EINER DATENBANK Einführung 1 OPERATIONEN AUF EINER DATENBANK Ein Benutzer stellt eine Anfrage: Die Benutzer einer Datenbank können meist sowohl interaktiv als auch über Anwendungen Anfragen an eine Datenbank stellen:

Mehr

Welche der folgenden Aussagen gelten? a) Im allgemeinen gilt: ein Deadlock tritt auf gdw. der Resource-Allocation Graph einen Zykel

Welche der folgenden Aussagen gelten? a) Im allgemeinen gilt: ein Deadlock tritt auf gdw. der Resource-Allocation Graph einen Zykel Aufgabe 1 (5 Punkte) (Multiple Choice) Beantworten Sie folgende Fragen durch Ankreuzen der richtigen Antwort. Für jede falsche Antwort wird ein Punkt abgezogen (es werden minimal 0 Punkte vergeben). Welche

Mehr

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

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität

Mehr

Gesicherte Prozeduren

Gesicherte Prozeduren Gesicherte Prozeduren Wenn eine Anwendung auf einer Client-Maschine läuft, wird normalerweise jede SQL-Anweisung einzeln vom Client an den Server gesandt, und jedes Ergebnistupel wird einzeln zurückgeliefert.

Mehr

Prozesse und Threads. Prozess. Trace. Einfachstes Prozessmodell. Traces

Prozesse und Threads. Prozess. Trace. Einfachstes Prozessmodell. Traces Prozesse und s Begriffe und Konzepte Prozesszustände Kontrollstrukturen des BS Prozesse BS s Peter Puschner 1 Vorlesung Betriebssysteme, Prozesse; WS 05/06 2 Prozess Animated Spirit of a program ausführbares

Mehr

Seminar: Mobile Geräte QNX Einführung

Seminar: Mobile Geräte QNX Einführung Seminar: Mobile Geräte QNX Einführung Vortragender: Alex Maurer 2010/2011 Philipps Universität Marburg Echtzeitbetriebssystem QNX QNX ist ein RTOS (Real Time OS) vorhersagbares Zeitverhalten niedrige Latenz

Mehr

IBM Software Demos Tivoli Provisioning Manager for OS Deployment

IBM Software Demos Tivoli Provisioning Manager for OS Deployment Für viele Unternehmen steht ein Wechsel zu Microsoft Windows Vista an. Doch auch für gut vorbereitete Unternehmen ist der Übergang zu einem neuen Betriebssystem stets ein Wagnis. ist eine benutzerfreundliche,

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

Einführung in die technische Informatik

Einführung in die technische Informatik Einführung in die technische Informatik Christopher Kruegel chris@auto.tuwien.ac.at http://www.auto.tuwien.ac.at/~chris Betriebssysteme Aufgaben Management von Ressourcen Präsentation einer einheitlichen

Mehr

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!. 040304 Übung 9a Analysis, Abschnitt 4, Folie 8 Die Wahrscheinlichkeit, dass bei n - maliger Durchführung eines Zufallexperiments ein Ereignis A ( mit Wahrscheinlichkeit p p ( A ) ) für eine beliebige Anzahl

Mehr

Prozesse und Threads. Peter Puschner Institut für Technische Informatik 1

Prozesse und Threads. Peter Puschner Institut für Technische Informatik 1 Prozesse und Threads Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at 1 Ziel: Gleichzeitiges, kontrolliertes Ausführen von Programmen auf einem Rechner Welche Mechanismen sind

Mehr

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt Inhaltsverzeichnis Aufgabe... 1 Allgemein... 1 Active Directory... 1 Konfiguration... 2 Benutzer erstellen... 3 Eigenes Verzeichnis erstellen... 3 Benutzerkonto erstellen... 3 Profil einrichten... 5 Berechtigungen

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

Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit,

Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit, Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit, Wie kann ein PDF File angezeigt werden? kann mit Acrobat-Viewern angezeigt werden auf jeder Plattform!! (Unix,

Mehr

1. Einschränkung für Mac-User ohne Office 365. 2. Dokumente hochladen, teilen und bearbeiten

1. Einschränkung für Mac-User ohne Office 365. 2. Dokumente hochladen, teilen und bearbeiten 1. Einschränkung für Mac-User ohne Office 365 Mac-User ohne Office 365 müssen die Dateien herunterladen; sie können die Dateien nicht direkt öffnen und bearbeiten. Wenn die Datei heruntergeladen wurde,

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

SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen

SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen Um die maximale Sicherheit für das Betriebssystem und Ihre persönlichen Daten zu gewährleisten, können Sie Programme von Drittherstellern

Mehr

Virtual Desktop Infrasstructure - VDI

Virtual Desktop Infrasstructure - VDI Virtual Desktop Infrasstructure - VDI Jörg Kastning Universität Bielefeld Hochschulrechenzentrum 5. August 2015 1/ 17 Inhaltsverzeichnis Was versteht man unter VDI? Welchen Nutzen bringt VDI? Wie funktioniert

Mehr

CMS.R. Bedienungsanleitung. Modul Cron. Copyright 10.09.2009. www.sruttloff.de CMS.R. - 1 - Revision 1

CMS.R. Bedienungsanleitung. Modul Cron. Copyright 10.09.2009. www.sruttloff.de CMS.R. - 1 - Revision 1 CMS.R. Bedienungsanleitung Modul Cron Revision 1 Copyright 10.09.2009 www.sruttloff.de CMS.R. - 1 - WOZU CRON...3 VERWENDUNG...3 EINSTELLUNGEN...5 TASK ERSTELLEN / BEARBEITEN...6 RECHTE...7 EREIGNISSE...7

Mehr

Acceptor-Connector. Acceptor-Connector

Acceptor-Connector. Acceptor-Connector Acceptor-Connector Das Acceptor-Connector Pattern trennt den Verbindungsaufbau zwischen zwei Peer-Services und der Verarbeitung, welche bei bestehender Verbindung durchgeführt wird. Kontext Ein Netzwerksystem

Mehr

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Wolfram Burgard

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Wolfram Burgard Systeme I: Betriebssysteme Kapitel 4 Prozesse Wolfram Burgard Version 18.11.2015 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen

Mehr

Task A Zündung. Task B Einspritzung. Task C Erfassung Pedalwert. J. Schäuffele, Th. Zurawka: Automotive Software Engineering, Vieweg, 2003

Task A Zündung. Task B Einspritzung. Task C Erfassung Pedalwert. J. Schäuffele, Th. Zurawka: Automotive Software Engineering, Vieweg, 2003 Task! evt. parallel zu bearbeitende Ausführungseinheit! Beispiel: Task A Zündung Task B Einspritzung Task C Erfassung Pedalwert Zeit t J. Schäuffele, Th. Zurawka:, Vieweg, 2003 Echtzeitbetriebssysteme

Mehr

Windows Server 2008 (R2): Anwendungsplattform

Windows Server 2008 (R2): Anwendungsplattform Mag. Christian Zahler, Stand: August 2011 13 14 Mag. Christian Zahler, Stand: August 2011 Mag. Christian Zahler, Stand: August 2011 15 1.5.2 Remotedesktop-Webverbindung Windows Server 2008 (R2): Anwendungsplattform

Mehr

Systemsoftware (SYS) Fakultät für Informatik WS 2008/2009 Christian Baun. Übungsklausur

Systemsoftware (SYS) Fakultät für Informatik WS 2008/2009 Christian Baun. Übungsklausur Hochschule Mannheim Systemsoftware (SYS) Fakultät für Informatik WS 2008/2009 Christian Baun Übungsklausur Aufgabe 1: Definieren Sie den Begriff der Systemsoftware. Nennen Sie die Aufgaben und Komponenten

Mehr

Avira Management Console 2.6.1 Optimierung für großes Netzwerk. Kurzanleitung

Avira Management Console 2.6.1 Optimierung für großes Netzwerk. Kurzanleitung Avira Management Console 2.6.1 Optimierung für großes Netzwerk Kurzanleitung Inhaltsverzeichnis 1. Einleitung... 3 2. Aktivieren des Pull-Modus für den AMC Agent... 3 3. Ereignisse des AMC Agent festlegen...

Mehr

Führen Sie zum Einstieg in die Materie einige Systemdiagnosen durch. Benutzen Sie dabei winmsd.exe.

Führen Sie zum Einstieg in die Materie einige Systemdiagnosen durch. Benutzen Sie dabei winmsd.exe. Aufgabe 1.1: Systeminformationen Führen Sie zum Einstieg in die Materie einige Systemdiagnosen durch. Benutzen Sie dabei winmsd.exe. a) Wie lautet der Name des von Ihnen verwendeten Rechners? Der Systemname

Mehr

Adami CRM - Outlook Replikation User Dokumentation

Adami CRM - Outlook Replikation User Dokumentation Adami CRM - Outlook Replikation User Dokumentation Die neue Eigenschaft der Adami CRM Applikation macht den Information Austausch mit Microsoft Outlook auf vier Ebenen möglich: Kontakte, Aufgaben, Termine

Mehr

Whitepaper. Produkt: combit Relationship Manager / address manager. Dateiabgleich im Netzwerk über Offlinedateien

Whitepaper. Produkt: combit Relationship Manager / address manager. Dateiabgleich im Netzwerk über Offlinedateien combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager / address manager Dateiabgleich im Netzwerk über Offlinedateien Dateiabgleich im Netzwerk über Offlinedateien

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

Prozesse und Prozessmanagement des BS. 1 Unterschied Prozess, Threads. 1.1 Prozess. 1.2 Threads

Prozesse und Prozessmanagement des BS. 1 Unterschied Prozess, Threads. 1.1 Prozess. 1.2 Threads Prozesse und Prozessmanagement des BS 1 Unterschied Prozess, Threads 1.1 Prozess Bei jedem Programm muss gespeichert werden, welche Betriebsmittel (Speicherplatz, CPU- Zeit, CPU-Inhalt,...) es benötigt.

Mehr

PROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN

PROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN PROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN 2. UNIX/Linux-Prozessverwaltung und zugehörige Systemaufrufe Wintersemester 2015/16 2. Die UNIX/LINUX-Prozessverwaltung Aufgaben: 1. Erzeugen neuer Prozesse

Mehr

terra CLOUD IaaS Handbuch Stand: 02/2015

terra CLOUD IaaS Handbuch Stand: 02/2015 terra CLOUD IaaS Handbuch Stand: 02/2015 Inhaltsverzeichnis 1 Einleitung... 3 2 Voraussetzungen für den Zugriff... 3 3 VPN-Daten herunterladen... 4 4 Verbindung zur IaaS Firewall herstellen... 4 4.1 Ersteinrichtung

Mehr

Lizenzen auschecken. Was ist zu tun?

Lizenzen auschecken. Was ist zu tun? Use case Lizenzen auschecken Ihr Unternehmen hat eine Netzwerk-Commuterlizenz mit beispielsweise 4 Lizenzen. Am Freitag wollen Sie Ihren Laptop mit nach Hause nehmen, um dort am Wochenende weiter zu arbeiten.

Mehr

Kommunikationsübersicht XIMA FORMCYCLE Inhaltsverzeichnis

Kommunikationsübersicht XIMA FORMCYCLE Inhaltsverzeichnis Kommunikationsübersicht Inhaltsverzeichnis Kommunikation bei Einsatz eines MasterServer... 2 Installation im... 2 Installation in der... 3 Kommunikation bei Einsatz eines MasterServer und FrontendServer...

Mehr

Prozeß P1 Prozeß P2. Zur Synchronisation stehen den beiden Prozessen binäre Semaphore und die beiden Funktionen

Prozeß P1 Prozeß P2. Zur Synchronisation stehen den beiden Prozessen binäre Semaphore und die beiden Funktionen Seite 8 A UFGABE 11 INTERP ROZEßKOMMUNIKATION Das folgende Petrinetz zeigt zwei verkoppelte Prozesse P1 und P2. Die Transitionen a und b beschreiben Aktionen von P1, die Transitionen c und d Aktionen von

Mehr

Integrated Services Realtime Remote Network

Integrated Services Realtime Remote Network Integrated Services Realtime Remote Network How to CEyeClon Viewer V2 HT-A-003-V2-DE-2013-02-17-TZ-TZ CEyeClon AG Reitschulstrasse 5 2502 Biel / Bienne info@ceyeclon.com www.ceyeclon.com CEyeClon AG, Biel

Mehr

TIMI: Technische Informatik für Medieninformatiker

TIMI: Technische Informatik für Medieninformatiker TIMI: Technische Informatik für Medieninformatiker Bachelor-Studiengang Digitale Medien Medieninformatik SS 2004 Niels Pollem Arbeitsgruppe Rechnernetze (Prof. Dr.-Ing. Ute Bormann) Scheduling:

Mehr

OP-LOG www.op-log.de

OP-LOG www.op-log.de Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server

Mehr

Moderne Betriebssysteme. Kapitel 8. Kapitel 8. Folie: 1. Multiprozessorsysteme. Autor: Andrew S. Tanenbaum

Moderne Betriebssysteme. Kapitel 8. Kapitel 8. Folie: 1. Multiprozessorsysteme. Autor: Andrew S. Tanenbaum Moderne Betriebssysteme Kapitel 8 Multiprozessorsysteme Kapitel 8 Folie: 1 Multiprozessorsysteme Autor: Andrew S. Tanenbaum Pearson Studium 2009 2 3 4 5 6 7 Betriebssystemarten für Multiprozessoren Jede

Mehr

Um dies zu tun, öffnen Sie in den Systemeinstellungen das Kontrollfeld "Sharing". Auf dem Bildschirm sollte folgendes Fenster erscheinen:

Um dies zu tun, öffnen Sie in den Systemeinstellungen das Kontrollfeld Sharing. Auf dem Bildschirm sollte folgendes Fenster erscheinen: Einleitung Unter MacOS X hat Apple die Freigabe standardmäßig auf den "Public" Ordner eines Benutzers beschränkt. Mit SharePoints wird diese Beschränkung beseitigt. SharePoints erlaubt auch die Kontrolle

Mehr

Rechnernetzwerke. Rechnernetze sind Verbünde von einzelnen Computern, die Daten auf elektronischem Weg miteinander austauschen können.

Rechnernetzwerke. Rechnernetze sind Verbünde von einzelnen Computern, die Daten auf elektronischem Weg miteinander austauschen können. Rechnernetzwerke Rechnernetze sind Verbünde von einzelnen Computern, die Daten auf elektronischem Weg miteinander austauschen können. Im Gegensatz zu klassischen Methoden des Datenaustauschs (Diskette,

Mehr

OSEK-OS. Oliver Botschkowski. oliver.botschkowski@udo.edu. PG AutoLab Seminarwochenende 21.-23. Oktober 2007. AutoLab

OSEK-OS. Oliver Botschkowski. oliver.botschkowski@udo.edu. PG AutoLab Seminarwochenende 21.-23. Oktober 2007. AutoLab OSEK-OS Oliver Botschkowski oliver.botschkowski@udo.edu PG Seminarwochenende 21.-23. Oktober 2007 1 Überblick Einleitung Motivation Ziele Vorteile Einführung in OSEK-OS Architektur Task Management Interrupt

Mehr

Workshop: Eigenes Image ohne VMware-Programme erstellen

Workshop: Eigenes Image ohne VMware-Programme erstellen Workshop: Eigenes Image ohne VMware-Programme erstellen Normalerweise sind zum Erstellen neuer, kompatibler Images VMware-Programme wie die Workstation, der ESX-Server oder VMware ACE notwendig. Die Community

Mehr

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten Was sind Berechtigungen? Unter Berechtigungen werden ganz allgemein die Zugriffsrechte auf Dateien und Verzeichnisse (Ordner) verstanden.

Mehr

Loggen Sie sich in Ihrem teamspace Team ein, wechseln Sie bitte zur Verwaltung und klicken Sie dort auf den Punkt Synchronisation.

Loggen Sie sich in Ihrem teamspace Team ein, wechseln Sie bitte zur Verwaltung und klicken Sie dort auf den Punkt Synchronisation. Ihre Welt spricht teamspace! Anleitung zur Synchronisation 1. Schritt: Loggen Sie sich in Ihrem teamspace Team ein, wechseln Sie bitte zur Verwaltung und klicken Sie dort auf den Punkt Synchronisation.

Mehr