Betriebssysteme 13/14

Größe: px
Ab Seite anzeigen:

Download "Betriebssysteme 13/14"

Transkript

1 Betriebssysteme 13/14 Prozesse und Threads 2 Oktober /72

2 Was ist ein Prozess? Was ist ein Thread? typischer Bootvorgang Bootloader (Grub,...) Kernel und initramfs Filesysteme, Devices init-prozess Wieso Prozess? Was ist ein Prozess überhaupt? Und wie entsteht er? 2/72

3 Am Anfang... main_console = new TextConsole ( 4 );... Scheduler :: instance () - > addnewthread ( main_console );... void TextConsole :: Run ( void ) // vereinfacht { } do { getkeyfromkbd ( key ) handlekey ( key ); Scheduler :: instance () - > yield (); } while ( 1 ); // until the end of time 3/72

4 Programm und Thread Ein Programm ist zuerstmal Code: vielleicht kompilierbar vielleicht lauähig vielleicht fehleranfällig Ein Prozess oder ein Thread ist eine Aktivität: die CPU führt programmierte Befehle aus Besteht aus Programmcode Input Output Zustand 4/72

5 Mehrere Prozesse oder Threads Eine CPU - zu einem Zeitpunkt ein aktiver Prozess bzw. Thread Wechsel zwischen Threads - wie macht das die CPU? 5/72

6 Mehrere Prozesse oder Threads Eine CPU - zu einem Zeitpunkt ein aktiver Prozess bzw. Thread Wechsel zwischen Threads - wie macht das die CPU? IP / PC woanders hinsetzen... 6/72

7 Mehrere Prozesse oder Threads (2) IP / PC woanders hinsetzen... Also so: JMP Thread2 Funktioniert das? 7/72

8 Mehrere Prozesse oder Threads (2) IP / PC woanders hinsetzen... Also so: JMP Thread2 Funktioniert das? Nein... Wohin genau? Wie zurück? Sicherheitsfragen... Schaun wir uns das mal in SWEB an. 7/72

9 switch.s (aus SWEB) mov ebx, dword [ currentthreadinfo ]... push dword [ ebx + 8] ; push eflags push dword [ ebx + 4] ; push cs push dword [ ebx + 0] ; push eip push dword [ ebx + 24] pop ebx ; restore ebx iretd ; switch to next Was passiert hier? 8/72

10 Switch currentthreadinfo gesetzt in schedule.cpp Datenstruktur mit Menge von Registern, die den Zustand der CPU zu einem vergangenen Zeitpunkt widerspiegeln Wieso iretd? 9/72

11 was macht IRETD? IRETD - Interrupt Return Returns program control from an exception or interrupt handler to a program or procedure that was interrupted by an exception, an external interrupt, or a software generated interrupt. komplexe Instruktion vereinfachte Darstellung: EIP <-- Pop(); CS <-- Pop(); EFLAGS <-- Pop(); 10/72

12 was macht IRETD? push dword [ ebx + 8] ; push eflags push dword [ ebx + 4] ; push cs push dword [ ebx + 0] ; push eip IRETD 11/72

13 was macht IRETD? push dword [ ebx + 8] ; push eflags push dword [ ebx + 4] ; push cs push dword [ ebx + 0] ; push eip EIP <-- Pop () ; CS <-- Pop () ; EFLAGS <-- Pop () ; 12/72

14 was macht IRETD? push dword[ebx + 8] ;push eflags push dword[ebx + 4] ;push cs push dword[ebx + 0] ;push eip EIP <-- Pop(); CS <-- Pop(); EFLAGS <-- Pop(); 13/72

15 Wieso Interrupt Return wenn wir doch nur zu einem neuen Thread wechseln wollen... CPU beherrscht viele nützliche Instruktionen manche davon haben - bei falscher Anwendung - unangenehme Nebenwirkungen z.b. CLI - Clear Interrupt Flag keine externen Interrupts mehr akzeptiert gefährlich! Anwenderprogramme sollen diese Instruktionen nicht ausführen dürfen 14/72

16 Privileged Instructions - Intel LGDT Load GDT register LLDT Load LDT register LTR Load task register LIDT Load IDT register MOV (control registers) Load and store control registers. LMSW Load machine status word. CLTS Clear task-switched ag in register CR0 MOV (debug registers) Load and store debug registers INVD Invalidate cache, without writeback WBINVD Invalidate cache, with writeback INVLPG Invalidate TLB entry HLT Halt processor RDMSR Read Model-Specic Registers WRMSR Write Model-Specic Registers RDPMC Read Performance-Monitoring Counter RDTSC Read Time-Stamp Counter. 15/72

17 User und Kernel Mode Wir unterscheiden unterschiedliche Privilege-Ebenen User Mode Kernel (oder supervisor) Mode Arbeitsmodus der CPU Manche CPUs: 2 Ebenen (MIPS) andere mehrere (Intel) 16/72

18 IA32 - Ringe 17/72

19 Ringwechsel Wechsel von Ring 3 auf Ring 0 muss überwacht werden Kontrollierter Übergang System Calls Intel: INT 0x80 oder SYSENTER/SYSCALL Unterschied: Geschwindigkeit In Sweb: INT 0x80 18/72

20 Wieso Interrupt Return 19/72

21 Wieso Interrupt Return 20/72

22 Wieso Interrupt Return 21/72

23 Wieso Interrupt Return 22/72

24 Wieso Interrupt Return Wechsel in Kernel-mode ursprünglich über Interrupt Instruktionsadresse über Tupel CS (Code Segment Selector) und EIP (Instruction Pointer) referenziert Rücksetzen des Zustandes des Prozessors (EFLAGS) wesentlich Gleichzeitiges Setzen von CS und EIP nötig IRET macht die Dinge in einem Schritt... (POP EIP; POP CS; POP EFLAGS) 23/72

25 Switch.s (aus SWEB) mov ebx, dword [ currentthreadinfo ]... push dword [ ebx + 8] ; push eflags push dword [ ebx + 4] ; push cs push dword [ ebx + 0] ; push eip push dword [ ebx + 24] pop ebx ; restore ebx iretd ; switch to next... das ist also der Kern des Wechsels zwischen zwei threads... 24/72

26 Threads Etwas vereinfacht: Wechsel zwischen threads durch Laden neuer Werte in CS/EIP thread A läuft bedeutet, CPU führt Code von thread A aus kernel läuft bedeutet, CPU führt Code vom kernel aus virtuell - threads sind ein Konzept, dass es uns erleichtert, uns Abläufe vorzustellen, diese zu steuern und zu programmieren CPU muss wenig bis nichts über threads wissen 25/72

27 Tasks (IA32) Threads auch ohne speziellen CPU-Support implementierbar CPU-support erleichternd IA32: Tasks unit of work that a processor can dispatch, execute, and suspend. task besteht aus execution space code segment stack segment (für jeden priviliege level eines) ein oder mehrere data segments task state segment (TSS) In SWEB nicht extensiv genutzt... 26/72

28 TSS 27/72

29 TSS 28/72

30 Thread, Prozess Thread benötigt genau das, was im TSS steht zwei Threads, die zusammenarbeiten: gleichen Speicher, unterschiedliche Statusinformationen / Stacks / Register... 29/72

31 Thread, Prozess einer oder mehrere zusammengehörige Threads und deren Ressourcen: Prozess typisch: Programm wird gestartet, nur ein thread aktiv Programm startet weitere threads nach Bedarf 30/72

32 Wann entsteht ein Prozess? BS muss sicherstellen, dass alle wichtigen Prozesse existieren. Manchmal: alle Prozesse die jemals benötigt werden beim Startup erzeugt Im allgemeinen: Möglichkeit zur Erzeugung / Beendigung erforderlich Wichtigste Ereignisse, die Prozess- Erzeugung veranlassen 1 System-Initialisierung (boot) 2 Ausführung eines process creation system calls 3 Benutzeranforderung 4 Start eines Batch-Jobs 31/72

33 Booten Mehrere Prozesse werden gestartet Prozesse zur Interaktion mit Anwender Prozesse für bestimmte Funktionen -service Drucker-Warteschlange Firewall 32/72

34 Prozesserzeugung Auch später... Technisch: Immer ein systemcall Unix: fork Windows: CreateProcess SWEB: existiert noch nicht (dann aber: fork) Beide Prozesse separaten Adressraum Bei Unix: vorerst exakte Kopie Bei Windows: von Beginn getrennt 33/72

35 fork - exec Unix / Linux / SWEB pid_t fork(void) Rückgabewerte: 0 an den neu gestarteten Prozess (child) Prozess-ID an den aufrufenden Prozess (parent) Jetzt laufen zwei beinahe idente Kopien desselben Programmes Unterschied nur im Rückgabewert 34/72

36 fork - exec Über den Rückgabewert unterscheidbar: bin ich der Vater oder das Kind Kindprozess überlagert seinen Speicher jetzt mit Code des neuen, zu startenden Programmes pid_t childpid ; childpid = fork (); if ( childpid < 0) { // Fehler bei fork } else if ( childpid == 0) { // ich bin das Kind, mach ein exec if ( execv (...)) { // execv fehlgeschlagen } } else { // ich bin der Parent, tu was immer nötig ist } 35/72

37 Prozess Terminierung Normal exit(freiwillig) Error exit (freiwillig) Fatal error (unfreiwillig) Killed by another process (unfreiwillig) 36/72

38 Process Hierarchies Parent erzeugt einen child process, die können wieder Prozesse erzeugen Bildet Hierarchie die können wieder Prozesse erzeugen... UNIX nennt das "process group" Windows kennt keine Hierarchie Alle Prozesse sind gleich 37/72

39 Process Hierarchies A forkt B,C B forkt D,E,F C forkt G D forkt H Abbildung: Prozesshierarchien 38/72

40 Prozesszustände Grep muster *.c sort Sort muss eventuell auf input warten Blockieren sinnvoll 39/72

41 Prozesszustände 40/72

42 Prozesszustände 41/72

43 Prozesszustände 42/72

44 Prozesszustände 43/72

45 Prozesszustände 44/72

46 Prozesszustände 45/72

47 Prozesszustände 46/72

48 Threads Traditionelles Modell: Prozess hat einen Adressraum einen Ausführungsfaden Manchmal wünschenswert, mehrere Ausführungsfäden parallel zu haben wie eigene Prozesse, aber gemeinsamer Adressraum 47/72

49 Threads Prozess ist Verwaltungseinheit - bündelt zusammengehörige Ressourcen. Ressourcen: Adressraum Oene Files Child Processes Accounting... 48/72

50 Threads Prozess besitzt einen Ausführungsfaden (thread) Threads: werden für die Ausführung auf CPU verwaltet besitzen: Befehlszähler (PC) Register Stack 49/72

51 Threads Erlaubt es, mehrere Fäden innerhalb eines Prozesses laufen zu lassen Hohe Unabhängigkeit Leichtgewichtige Prozesse (lightweight processes) Multithreading 50/72

52 Threads Weniger unabhängig als Prozesse Zugri auf Speicher der anderen Threads! Kein Schutz voreinander! Sollen kooperieren, nicht kämpfen! Zustände: ähnlich wie bei Prozessen - Ready Running Blocked Terminiert 51/72

53 Multithreading Üblich: zuerst nur ein Thread Startet weitere threads (z.b.pthread_create(...)) Manchmal hierarchisch, manchmal ach Wenn thread fertig: pthread_exit Warten auf thread-ende: pthread_wait CPU freiwillig hergeben: pthread_yield 52/72

54 Thread - Probleme Entstehen leicht durch die gemeinsamen Datenbereiche Gleichzeitiger Zugri auf gemeinsamen Speicher? Thread schlieÿt File, von dem ein anderer noch liest? Synchronisation! 53/72

55 Fork-Problem Prozess hat >1 thread Ein Thread eines Prozesses macht fork Neuer Prozess: auch mehrere threads? Wenn ja: Ein thread ist blockiert und wartet auf I/O was macht dieser thread im neuen Prozess? Design-Entscheidungen! Für KU - abzuraten, mehr als einen Thread zu haben! 54/72

56 Warum überhaupt threads Oft sollen Dinge parallel ablaufen Manche der Dinge blockieren Threads erzeugen einfacheres Programmiermodell Eigentlich dasselbe Argument wie für Prozesse Aber: threads haben Daten gemeinsam Ermöglicht Lösungen, die mit Prozessen nicht möglich oder nicht einfach wären 55/72

57 Warum überhaupt threads Weniger Ressourcen: einfacher zu Erzeugen und Zerstören Wechsel zwischen Threads eines Prozesses schneller als zwischen Prozessen Performancegewinn möglich Nicht wenn alle CPU-lastig Mehrprozessormaschinen 56/72

58 Beispiele Textverarbeitung Benutzereingabe Bildschirmanzeige Formattierung Rechtschreibprüfung Autosave Keine Chance mit mehreren Prozessen! 57/72

59 Beispiel Webserver Sammlung von sequentiellen threads Alle sehr einfach 58/72

60 Beispiel while ( TRUE ) { get_next_request (& buf ); handoff_work (& buf ); } while ( TRUE ) { wait_for_work (& buf ); look_for_page_in_cache (& buf,& page )); if ( page_not_in_cache (& page )) read_page_from_disk (& buf,& page ); return_page (& page ); } 59/72

61 Alternative Ein Thread Muss File von Platte lesen Prozess wird blockiert Schlechtere Performance Mögliche Alternative: Non-blocking read 60/72

62 Non-blocking read while ( TRUE ) { // sehr schematische Darstellung!! get_next_event (& buf ); if is_request_event (& buf ) { if ( page_not_in_cache (& page )) request_page_from_disk (& buf,& page ); save_request_in_table (& buf ); } else { return_page (& page ); } } else if is_disk_event (& buf ) { find_request_in_table ; mark_request_as_done ; return_page (& page ); // no error handling e. g. } else if is_... } 61/72

63 Non-blocking read Kein sequentieller Prozess mehr Finite-state-machine! Eigentlich werden threads simuliert! Daher: gleich threads! 62/72

64 Implementierung Zwei Möglichkeiten: Im User-Space Im Kernel (eventuell auch Hybrid) 63/72

65 User-Space threads Kernel weiÿ nichts von Threads - für Kernel nur ein Prozess Kann in allen BS realisiert werden, auch wenn sie keinen thread- support haben. Früher waren das alle... 64/72

66 User-Space threads 65/72

67 User-Space threads Thread table pro Prozess Analog zur Prozess-Tabelle im Kernel Von User-Mode-Runtime-System verwaltet Wenn Thread Funktion ausführt, die den Prozess blockieren könnte_ Aufruf einer Routine im Runtime-System Routine prüft: wird Thread blockieren? Ja: Sichern der Register in Thread-Table Anderen Thread im Zustand ready suchen, Register mit dessen Werten laden. SP und PC wechseln neuer thread ist aktiv Thread-switch auf diese Art: sehr schnell! 66/72

68 User-Space threads Vorteile: Kein Systemcall nötig Daher sehr schnell Kein context-switch memory-cache ush unnötig etc. Eigenes Scheduling verwendbar Nachteile Thread darf keine System-Calls machen könnte blockiert werden 67/72

69 User-Space threads : Lösungsmöglichkeit: Alle system-calls non-blocking Änderungen am BS nicht attraktiv Soll ja mit bestehenden BS arbeiten... Auch Auswirkungen auf Userprogramme Manchmal feststellbar ob Call blockiert Select-Systemcall Vor read: select (in library-routine) Wenn read blockieren würde: anderen thread wählen, und dann später wieder nachschauen Inezient und wenig elegant. 68/72

70 Andere Probleme Page-faults Nicht das gesamte Programm im Speicher Wenn nicht geladene Speicheradresse referenziert wird: page fault BS holt fehlenden Bereich von Platte Prozess: blockiert! (nicht nur thread!) Wenn Thread CPU nicht hergibt... Keine Chance gegen Bösewichte! 69/72

71 Kernel-Mode threads Kein runtime-system mehr Thread-Table im Kernel Infos wie vorher Tabelle Teil des Prozesstabelleneintrags Thread-Erzeugung etc. system-call Hauptnachteil: Aufwand für Systemcalls viel höher als vorher Thread-recycling 70/72

72 Kernel-Space threads 71/72

73 Hyrbride 72/72

Betriebssysteme KU - Einführungstutorium

Betriebssysteme KU - Einführungstutorium Betriebssysteme KU - Einführungstutorium SWEB-Tutoren irc://irc.at.euirc.net/bs Teamwork Arbeitsaufteilung? Zeiteinteilung? Codeeinteilung? Kommunikation! Kommunikation Kommunikation mit dem Team Gruppentreffen

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

Embedded-Linux-Seminare. Linux als Betriebssystem

Embedded-Linux-Seminare. Linux als Betriebssystem Embedded-Linux-Seminare Linux als Betriebssystem http://www.embedded-linux-seminare.de Diplom-Physiker Peter Börner Spandauer Weg 4 37085 Göttingen Tel.: 0551-7703465 Mail: info@embedded-linux-seminare.de

Mehr

Prozesse. Stefan Janssen. sjanssen@cebitec.uni-bielefeld.de. Alexander Sczyrba asczyrba@cebitec.uni-bielefeld.de

Prozesse. Stefan Janssen. sjanssen@cebitec.uni-bielefeld.de. Alexander Sczyrba asczyrba@cebitec.uni-bielefeld.de Netzwerk - Programmierung Prozesse Stefan Janssen sjanssen@cebitec.uni-bielefeld.de Alexander Sczyrba asczyrba@cebitec.uni-bielefeld.de Madis Rumming mrumming@cebitec.uni-bielefeld.de Übersicht Prozesse

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

Die L4-Mikrokern. Mikrokern-Familie. Hauptseminar Ansätze für Betriebssysteme der Zukunft. Michael Steil. Michael Steil 18.04.2002

Die L4-Mikrokern. Mikrokern-Familie. Hauptseminar Ansätze für Betriebssysteme der Zukunft. Michael Steil. Michael Steil 18.04.2002 Die L4-Mikrokern Mikrokern-Familie Hauptseminar Ansätze für Betriebssysteme der Zukunft 18.04.2002 Folie 1 Aufbau des Vortrags 1. Mikrokerne: Idee und Geschichte 2. L4: ein schneller Mikrokern 3. L4Linux:

Mehr

A Kompilieren des Kernels... 247. B Lineare Listen in Linux... 251. C Glossar... 257. Interessante WWW-Adressen... 277. Literaturverzeichnis...

A Kompilieren des Kernels... 247. B Lineare Listen in Linux... 251. C Glossar... 257. Interessante WWW-Adressen... 277. Literaturverzeichnis... 1 Einführung................................................ 1 1.1 Was ist ein Betriebssystem?............................... 1 1.1.1 Betriebssystemkern................................ 2 1.1.2 Systemmodule....................................

Mehr

x86 Open Source Virtualisierungstechniken Thomas Glanzmann

x86 Open Source Virtualisierungstechniken Thomas Glanzmann <thomas@glanzmann.de> x86 Open Source Virtualisierungstechniken März 2006 Zu meiner Person Informatik Student an der Universität Erlangen im 9. Semester 4 jährige Mitarbeit an dem Projekt FAUmachine der

Mehr

Prüfung VO Betriebssysteme SS2008 / 7. Juli 2008

Prüfung VO Betriebssysteme SS2008 / 7. Juli 2008 Name: Matrikel-Nr: Prüfung VO Betriebssysteme SS2008 / 7. Juli 2008 Bitte schreiben Sie leserlich und antworten Sie kurz und präzise. 1. Zeichnen Sie das Schichten-Modell eines Computersystems und markieren

Mehr

3. Unix Prozesse. Betriebssysteme Harald Kosch Seite 57

3. Unix Prozesse. Betriebssysteme Harald Kosch Seite 57 3. Unix Prozesse Ein Prozeß ist die Umgebung eines laufenden Programms. Ein bißchen Analogie. Wer kocht gerne? Papa möchte mit Hilfe eines Rezeptes eine Torte für seine Tochter backen. Das Rezept ist das

Mehr

13. Übung mit Musterlösung

13. Übung mit Musterlösung 13. Übung mit Musterlösung 1 Lösung 1 Teil 1.Multiple Choice) Bewertung: Ein Punkt für richtige Antwort, für jede falsche Antwort ein Punktabzug. a) Für die Exponentialverteilung ist die Zeit bis zum nächsten

Mehr

Betriebssysteme. 4y Springer. Eine kompakte Einführung mit Linux. Albrecht Achilles. Mit 31 Abbildungen

Betriebssysteme. 4y Springer. Eine kompakte Einführung mit Linux. Albrecht Achilles. Mit 31 Abbildungen Albrecht Achilles 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Betriebssysteme Eine kompakte Einführung mit Linux

Mehr

Instruktionssatz-Architektur

Instruktionssatz-Architektur Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2005/2006 Übersicht 1 Einleitung 2 Bestandteile der ISA 3 CISC / RISC Übersicht 1 Einleitung 2 Bestandteile

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

Rechnerarchitektur und Betriebssysteme (CS201): Semaphor, Monitor, Deadlocks, Re-Entrance

Rechnerarchitektur und Betriebssysteme (CS201): Semaphor, Monitor, Deadlocks, Re-Entrance Rechnerarchitektur und Betriebssysteme (CS201): Semaphor, Monitor, Deadlocks, Re-Entrance 5. November 2013 Prof. Dr. Christian Tschudin Departement Mathematik und Informatik, Universität Basel Repetition

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

Hardware-basierte Virtualisierung

Hardware-basierte Virtualisierung Hardware-basierte Virtualisierung Dr.-Ing. Volkmar Sieh Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2014/2015 V. Sieh Hardware-basierte

Mehr

Hardware-basierte Virtualisierung

Hardware-basierte Virtualisierung Hardware-basierte Virtualisierung Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2011/2012 Hardware-basierte Virtualisierung 1/22

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 3 Betriebssystem Überwacher

Mehr

Die Mikroprogrammebene eines Rechners

Die Mikroprogrammebene eines Rechners Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl holen Befehl dekodieren Operanden holen etc.

Mehr

B.5 Prozessverwaltung B.5. Prozessverwaltung. 2002 Prof. Dr. Rainer Manthey Informatik II 1

B.5 Prozessverwaltung B.5. Prozessverwaltung. 2002 Prof. Dr. Rainer Manthey Informatik II 1 Prozessverwaltung Prozessverwaltung 2002 Prof. Dr. Rainer Manthey Informatik II 1 Prozesse Programme werden durch den Ablauf eines oder mehrerer Prozesse (engl.: process, task) ) von einem Rechner abgearbeitet.

Mehr

Hardware Virtualisierungs Support für PikeOS

Hardware Virtualisierungs Support für PikeOS Virtualisierungs Support für PikeOS Design eines Virtual Machine Monitors auf Basis eines Mikrokernels Tobias Stumpf SYSGO AG, Am Pfaenstein 14, 55270 Klein-Winternheim HS Furtwangen, Fakultät Computer

Mehr

Prozesse und Scheduling

Prozesse und Scheduling Betriebssysteme für Wirtschaftsinformatiker SS04 KLAUSUR Vorbereitung mit Lösungen / Blatt 1 Prozesse und Scheduling Aufgabe 1 : Scheduling Gegeben seien die folgenden Prozesse und die Längen des jeweiligen

Mehr

Programme werden durch den Ablauf eines oder mehrerer Prozesse (engl.: process, task) von einem Rechner abgearbeitet.

Programme werden durch den Ablauf eines oder mehrerer Prozesse (engl.: process, task) von einem Rechner abgearbeitet. Prozessverwaltung Prozesse Programme werden durch den Ablauf eines oder mehrerer Prozesse (engl.: process, task) von einem Rechner abgearbeitet. Prozesse sind Abfolgen von Aktionen, die unter Kontrolle

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

Frage 1: Betriebssysteme Gesammelte Prüfungsfragen des Jahres 2013 Stand Jänner 2014

Frage 1: Betriebssysteme Gesammelte Prüfungsfragen des Jahres 2013 Stand Jänner 2014 Betriebssysteme Gesammelte Prüfungsfragen des Jahres 2013 Stand Jänner 2014 Frage 1: Intel IA32-Architektur. Folgende Infos haben wir uns aus dem Intel IA-32 Architectures Developer's Manual: Vol. 3A herausgesucht:

Mehr

Inhaltsverzeichnis. 2.4 Thread-Systeme. 2.1 Was ist ein Prozess? 2.2 Scheduling. 2.3 Interprozesskommunikation

Inhaltsverzeichnis. 2.4 Thread-Systeme. 2.1 Was ist ein Prozess? 2.2 Scheduling. 2.3 Interprozesskommunikation Inhaltsverzeichnis Systemprogrammierung - Kapitel 2 Prozessverwaltung 1/21 2.1 Was ist ein Prozess? Definition Prozesszustände Prozesskontrollblöcke 2.4 Thread-Systeme Sinn und Zweck Thread-Arten Thread-Management

Mehr

Parallelverarbeitung mit Ruby

Parallelverarbeitung mit Ruby Fachhochschule Wiesbaden - Fachbereich DCSM Parallelverarbeitung mit Ruby Prozess-Ebene Multithreading 04.12.2008 2003, 2008 H. Werntges, FB Design Informatik Medien (DCSM), FH Wiesbaden 1 Fachhochschule

Mehr

Embedded OS für ARM Cortex Microcontroller

Embedded OS für ARM Cortex Microcontroller Embedded OS für ARM Cortex Microcontroller RTOS Design, Timinganalyse und Test mit Core Simulation und Hardware Debugger Entscheidende Fragen für oder gegen RTOS Lohnt sich der Einsatz eines RTOS auch

Mehr

6.Vorlesung Betriebssysteme Hochschule Mannheim

6.Vorlesung Betriebssysteme Hochschule Mannheim Christian Baun 6.Vorlesung Betriebssysteme Hochschule Mannheim SS2011 1/40 6.Vorlesung Betriebssysteme Hochschule Mannheim Christian Baun Karlsruher Institut für Technologie Steinbuch Centre for Computing

Mehr

Kap. 2. Prozesse. Version vom 05.10.2009. Kap. 2 - Inhalt. Definition Prozeßzustände Threads Scheduling Beispiele. Folie 2

Kap. 2. Prozesse. Version vom 05.10.2009. Kap. 2 - Inhalt. Definition Prozeßzustände Threads Scheduling Beispiele. Folie 2 Kap. 2 Prozesse Version vom 05.10.2009 Kap. 2 - Inhalt Definition Prozeßzustände Threads Scheduling Beispiele Folie 2 Definition I - Woraus bestehen Prozesse? Prozeß ist ein Programm in seiner Ausführung,

Mehr

Hyperthreads in Itanium - Prozessoren

Hyperthreads in Itanium - Prozessoren Hyperthreads in Itanium - Prozessoren und wie OpenVMS damit umgeht Thilo Lauer Technical Consultant Account Support Center 2006 Hewlett-Packard Development Company, L.P. The information contained herein

Mehr

C. Betriebssystem-Strukturen C.1 Monolithische Betriebssysteme

C. Betriebssystem-Strukturen C.1 Monolithische Betriebssysteme C. Betriebssystem-Strukturen C.1 Monolithische Betriebssysteme Sammlung von Routinen, ohne Hierarchie, Kapselung und Schichtung. Jede Prozedur kann beliebige andere Prozeduren aufrufen und Datenstrukturen

Mehr

11: Echtzeitbetriebssystem ucos-ii

11: Echtzeitbetriebssystem ucos-ii 11: Echtzeitbetriebssystem ucos-ii Sie lernen anhand aufeinander aufbauender Übungen, welche Möglichkeiten ein Echtzeitbetriebssystem wie das ucosii bietet und wie sich damit MC-Applikationen realisieren

Mehr

Betriebssysteme Kap B: Hardwaremechanismen

Betriebssysteme Kap B: Hardwaremechanismen 1 Betriebssysteme Kap B: Hardwaremechanismen 2 Beispielprozessor Ein- / Ausgabe p[ ] ir Leitwerk pc Register a f sp Rechenwerk Speicher m[ ] Spezielle Register Flagregister f f.i: Interrupt-Enable-Flag

Mehr

(Prüfungs-)Aufgaben zum Thema Scheduling

(Prüfungs-)Aufgaben zum Thema Scheduling (Prüfungs-)Aufgaben zum Thema Scheduling 1) Geben Sie die beiden wichtigsten Kriterien bei der Wahl der Größe des Quantums beim Round-Robin-Scheduling an. 2) In welchen Situationen und von welchen (Betriebssystem-)Routinen

Mehr

Projekt für Systemprogrammierung WS 06/07

Projekt für Systemprogrammierung WS 06/07 Dienstag 30.01.2007 Projekt für Systemprogrammierung WS 06/07 Von: Hassan Bellamin E-Mail: h_bellamin@web.de Gliederung: 1. Geschichte und Definition 2. Was ist Virtualisierung? 3. Welche Virtualisierungssoftware

Mehr

3. Betriebssystemorganisation

3. Betriebssystemorganisation 3. Betriebssystemorganisation 3.1 Monolithische Betriebssysteme Sammlung von Routinen, ohne Hierarchie, Kapselung und Schichtung. Jede Prozedur kann beliebige andere aufrufen und Datenstrukturen ändern.

Mehr

Technische Informatik II

Technische Informatik II Institut für Technische Informatik und Kommunikationsnetze Technische Informatik II Übung 1: Prozesse und Threads Aufgabe 1: Prozesse und Threads a) Wie verhält sich eine Applikation die aus mehreren Prozessen

Mehr

RTEMS- Echtzeitbetriebssystem

RTEMS- Echtzeitbetriebssystem RTEMS- Echtzeitbetriebssystem Name: Hussein Hammoud Matrikel- Nr.: 230768 Studiengang: Technische Informatik Fach: Projekt Eingebettete Kommunikation Technische Universität Berlin Sommersemester 2006 RTEMS-

Mehr

Betriebssysteme WS 2012/13 Peter Klingebiel, DVZ. Zusammenfassung Kapitel 4 - Datenträger/Dateiverwaltung

Betriebssysteme WS 2012/13 Peter Klingebiel, DVZ. Zusammenfassung Kapitel 4 - Datenträger/Dateiverwaltung Betriebssysteme WS 2012/13 Peter Klingebiel, DVZ Zusammenfassung Kapitel 4 - Datenträger/Dateiverwaltung Zusammenfassung Kapitel 4 Dateiverwaltung 1 Datei logisch zusammengehörende Daten i.d.r. permanent

Mehr

Teil VIII Von Neumann Rechner 1

Teil VIII Von Neumann Rechner 1 Teil VIII Von Neumann Rechner 1 Grundlegende Architektur Zentraleinheit: Central Processing Unit (CPU) Ausführen von Befehlen und Ablaufsteuerung Speicher: Memory Ablage von Daten und Programmen Read Only

Mehr

B1 Stapelspeicher (stack)

B1 Stapelspeicher (stack) B1 Stapelspeicher (stack) Arbeitsweise des LIFO-Stapelspeichers Im Kapitel "Unterprogramme" wurde schon erwähnt, dass Unterprogramme einen so genannten Stapelspeicher (Kellerspeicher, Stapel, stack) benötigen

Mehr

IT-Infrastruktur, WS 2014/15, Hans-Georg Eßer

IT-Infrastruktur, WS 2014/15, Hans-Georg Eßer ITIS-D'' IT-Infrastruktur WS 2014/15 Hans-Georg Eßer Dipl.-Math., Dipl.-Inform. Foliensatz D'': Rechnerstrukturen, Teil 3 v1.0, 2014/11/27 Folie D''-1 Dieser Foliensatz Vorlesungsübersicht Seminar Wiss.

Mehr

fork () Hans-Georg Eßer, Hochschule München Betriebssysteme I, SS 2008 2. Prozesse (2/2) Folie 4

fork () Hans-Georg Eßer, Hochschule München Betriebssysteme I, SS 2008 2. Prozesse (2/2) Folie 4 Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: SAS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)

Mehr

Rechnernutzung in der Physik. Betriebssysteme

Rechnernutzung in der Physik. Betriebssysteme Rechnernutzung in der Physik Betriebssysteme 1 Betriebssysteme Anwendungsprogramme Betriebssystem Treiber BIOS Direkter Zugriff von Anwenderprogrammen auf Hardware nur in Ausnahmefällen sinnvoll / möglich:

Mehr

Betriebssysteme KU Tutorium zu Assignment 1

Betriebssysteme KU Tutorium zu Assignment 1 Betriebssysteme KU Tutorium zu Assignment 1 SWEB-Tutoren irc://irc.at.euirc.net/bs 17. Oktober 2013 1 Multiprogramming in SWEB (Wiederholung) Memorymanagement Prozesse und Threads Erstellen von Prozessen

Mehr

Betriebssysteme (BS)

Betriebssysteme (BS) Betriebssysteme (BS) Prozesse Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund Olaf.Spinczyk@tu-dortmund.de http://ess.cs.uni-dortmund.de/~os/ http://ess.cs.tu-dortmund.de/de/teaching/ss2011/bs/

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

AFS / OpenAFS. Bastian Steinert. Robert Schuppenies. Präsentiert von. Und

AFS / OpenAFS. Bastian Steinert. Robert Schuppenies. Präsentiert von. Und AFS / OpenAFS Präsentiert von Bastian Steinert Und obert Schuppenies Agenda AFS Verteilte Dateisysteme, allg. Aufbau Sicherheit und Zugriffsrechte Installation Demo Vergleich zu anderen DFs Diskussion

Mehr

Grundlagen zur nebenläufigen Programmierung in Java

Grundlagen zur nebenläufigen Programmierung in Java Grundlagen zur nebenläufigen Programmierung in Java Karlsruher Entwicklertag 2013 5. Juni 2013 Referent: Christian Kumpe Inhalt des Vortrags Was zeigt dieser Vortrag? Ein einfaches Beispiel mit allerlei

Mehr

Betriebssystembau (BSB)

Betriebssystembau (BSB) Betriebssystembau (BSB) 6. Übung http://ess.cs.tu-.de/de/teaching/ws2013/bsb/ Olaf Spinczyk olaf.spinczyk@tu-.de http://ess.cs.tu-.de/~os AG Eingebettete System Informatik 12, TU Dortmund Agenda Vorstellung

Mehr

Rapid I/O Toolkit. http://projects.spamt.net/riot. Alexander Bernauer alex@copton.net 08.12.08

Rapid I/O Toolkit. http://projects.spamt.net/riot. Alexander Bernauer alex@copton.net 08.12.08 Rapid I/O Toolkit http://projects.spamt.net/riot Alexander Bernauer alex@copton.net 08.12.08 Inhalt Motivation Architektur Beispiel I/O Features Ausblick Motivation Problemstellung Vorgaben Datenverarbeitung

Mehr

Übung zu Grundlagen der Betriebssysteme. 7. Übung 27.11.2012

Übung zu Grundlagen der Betriebssysteme. 7. Übung 27.11.2012 Übung zu Grundlagen der Betriebssysteme 7. Übung 27.11.2012 Threads Thread (Faden des (Kontrollflusses)): ist ein sequentieller Abarbeitungsablauf (Kontrollfluss) innerhalb eines Prozesses. Umfasst ein

Mehr

5. Threads, Serverprozesse und Benachrichtigungen

5. Threads, Serverprozesse und Benachrichtigungen 5. Threads, Serverprozesse und Benachrichtigungen Threads allgemein Threads in Android: Handler und Messages Services: Local, Remote, Binding Benachrichtigungen Entwicklung mobiler Anwendungen Europäische

Mehr

Slothful Linux: An Efficient Hybrid Real-Time System by Hardware-Based Task Dispatching. Rainer Müller

Slothful Linux: An Efficient Hybrid Real-Time System by Hardware-Based Task Dispatching. Rainer Müller Slothful Linux: An Efficient Hybrid Real-Time System by Hardware-Based Task Dispatching Rainer Müller 21. November 2013 Spezialisierung von Betriebssystemen Vielzweckbetriebssysteme (General Purpose OS,

Mehr

Technische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou (ggeorgia@tik.ee.ethz.ch) 22./23. Oktober 2015

Technische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou (ggeorgia@tik.ee.ethz.ch) 22./23. Oktober 2015 Technische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou (ggeorgia@tik.ee.ethz.ch) 22./23. Oktober 2015 Ziele der Übung Aufgabe 1 Aufbau und Aufruf von Funktionen in Assembler Codeanalyse

Mehr

Aktuelle Themen der Informatik: Virtualisierung

Aktuelle Themen der Informatik: Virtualisierung Aktuelle Themen der Informatik: Virtualisierung Sebastian Siewior 15 Mai 2006 1 / 22 1 Überblick 2 Techniken 3 Paravirtualisierung 4 Ende 2 / 22 Wieso Virtualisieren Wieso mehrere Betriebsysteme auf einer

Mehr

Wie benutzt der NetWorker Remote Procedure Calls (RPC)?

Wie benutzt der NetWorker Remote Procedure Calls (RPC)? NetWorker - Allgemein Tip 298, Seite 1/7 Wie benutzt der NetWorker Remote Procedure Calls (RPC)? Der NetWorker - wie jede andere Client/Server (Backup) Software - benutzt immer diese zwei grundlegenden

Mehr

Projektaufgabe Peer-To-Peer Chat Programm

Projektaufgabe Peer-To-Peer Chat Programm Projektaufgabe Peer-To-Peer Chat Programm Betreuer: Dipl. Ing. Thomas Kehrt kehrt@cs.tu-dortmund.de September 10, 2014 1 Einführung Im Rahmen des Vorkurses wird für fortgeschrittene Studenten eine Projektarbeit

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

Servervirtualisierung mit Xen Möglichkeiten der Netzwerkkonfiguration

Servervirtualisierung mit Xen Möglichkeiten der Netzwerkkonfiguration Servervirtualisierung mit Xen Möglichkeiten der Netzwerkkonfiguration Studiengang Informatik Anwendung-Rechnernetze Übersicht Virtualisierungstechniken Virtualisierungsmodelle in Xen Netzwerkkonzepte und

Mehr

AFS Backup und Recover nicht nur für (Legato) NetWorker

AFS Backup und Recover nicht nur für (Legato) NetWorker AFS Backup und Recover nicht nur für (Legato) NetWorker Wolfgang Friebel, DESY 28.9.2006 1 Backup Inhalt Schematischer Ablauf Volle und inkrementelle Backups Backup auf Disk Backup auf Tape Recover Recover

Mehr

Military Air Systems

Military Air Systems Trennung von Applikationen unterschiedlicher Kritikalität in der Luftfahrt durch Software en am Beispiel des Real-time Operating Systems PikeOS Dr. Bert Feldmann DGLR Workshop Garching, 09.10.2007 Seite

Mehr

2.2 Rechnerorganisation: Aufbau und Funktionsweise

2.2 Rechnerorganisation: Aufbau und Funktionsweise 2.2 Rechnerorganisation: Aufbau und Funktionsweise é Hardware, Software und Firmware é grober Aufbau eines von-neumann-rechners é Arbeitsspeicher, Speicherzelle, Bit, Byte é Prozessor é grobe Arbeitsweise

Mehr

Availability Manager Overview

Availability Manager Overview DECUS Symposium 2007 Availability Manager Overview Günter Kriebel Senior Consultant OpenVMS guenter.kriebel@hp.com GET CONNECTED People. Training. Technology. 2006 Hewlett-Packard Development Company,

Mehr

Brückenkurs / Computer

Brückenkurs / Computer Brückenkurs / Computer Sebastian Stabinger IIS 23 September 2013 Sebastian Stabinger (IIS) Brückenkurs / Computer 23 September 2013 1 / 20 Content 1 Allgemeines zum Studium 2 Was ist ein Computer? 3 Geschichte

Mehr

Kap 4. 4 Die Mikroprogrammebene eines Rechners

Kap 4. 4 Die Mikroprogrammebene eines Rechners 4 Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten (Befehl holen, Befehl dekodieren, Operanden holen etc.).

Mehr

Archive / Backup System für OpenVMS

Archive / Backup System für OpenVMS Archive / Backup System für OpenVMS DECUS Symposium 2002 Bonn Vortrag-Nr. 3C04 Günther Fröhlin Compaq Computer Corporation Colorado Springs, USA 1 Highlights V4.0 Auslieferung Januar 2002 Hauptversion

Mehr

The Unbreakable Database System

The Unbreakable Database System The Unbreakable Database System Real Application Cluster Unterföhring, 04.2005 M. Kühn 1 Comparisson HA - HA Ziele, DataGuard, HA Oracle, RAC RAC Features - Cache Fusion, TAF, Load Balancing RAC on Solaris

Mehr

Enterprise Computing

Enterprise Computing Enterprise Computing Prof. Dr.-Ing. Wilhelm G. Spruth WS 2011/12 Teil 2 Verarbeitungsablauf Systemarchitektur Multiprogrammierung Virtueller Speicher Überwacher (Supervisor) Cache CPU s Hauptspeicher I/O

Mehr

Gliederung Hardware fuer die Zeitmessung Zeitmanagement auf Uniprozessorsystemen. Timing Measurements. Timo Schneider. 4.

Gliederung Hardware fuer die Zeitmessung Zeitmanagement auf Uniprozessorsystemen. Timing Measurements. Timo Schneider. 4. 4. Juni 2005 1 2 Timer Interrupts Software Timer System Calls Die Real Time Clock befindet sich zusammen mit CMOS-RAM (Bios) auf einem Chip, zb Motorola 1416818. Wenn der PC ausgeschaltet wird, wird die

Mehr

Betriebssysteme Kap A: Grundlagen

Betriebssysteme Kap A: Grundlagen Betriebssysteme Kap A: Grundlagen 1 Betriebssystem Definition DIN 44300 Die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften dieser Rechenanlage die Basis der möglichen Betriebsarten

Mehr

INSTALLATION und BENUTZUNG von REAL VNC 3.3.5-7

INSTALLATION und BENUTZUNG von REAL VNC 3.3.5-7 INSTALLATION und BENUTZUNG von REAL VNC 3.3.5-7 Einleitung: Real VNC ist ein Remote Programm das zur Fernwartung von PCs über das Internet verwendet werden kann. It is fully cross-platform das heißt man

Mehr

Effizientes Memory Debugging in C/C++

Effizientes Memory Debugging in C/C++ Effizientes Memory Debugging in C/C++ Adam Szalkowski Embedded Computing Conference 2014 Ursachen/ Symptome Debugging Tools Ursachen / Symptome Was habe ich falsch gemacht? Was kann denn passieren im schlimmsten

Mehr

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

Kapitel III. Prozesse. Prozessverwaltung. Was ist ein Prozess? 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

Mehr

Karlsruher Institut für Technologie

Karlsruher Institut für Technologie Karlsruher Institut für Technologie Lehrstuhl für Programmierparadigmen Sprachtechnologie und Compiler WS 2010/2011 Dozent: Prof. Dr.-Ing. G. Snelting Übungsleiter: Matthias Braun Lösung zu Übungsblatt

Mehr

IDS Lizenzierung für IDS und HDR. Primärserver IDS Lizenz HDR Lizenz

IDS Lizenzierung für IDS und HDR. Primärserver IDS Lizenz HDR Lizenz IDS Lizenzierung für IDS und HDR Primärserver IDS Lizenz HDR Lizenz Workgroup V7.3x oder V9.x Required Not Available Primärserver Express V10.0 Workgroup V10.0 Enterprise V7.3x, V9.x or V10.0 IDS Lizenz

Mehr

Systeme 1. Kapitel 9.2. Interaktion von Hardware und Betriebssystem Linux-Kernel und x86 Systeme

Systeme 1. Kapitel 9.2. Interaktion von Hardware und Betriebssystem Linux-Kernel und x86 Systeme Systeme 1 Kapitel 9.2 Interaktion von Hardware und Betriebssystem Linux-Kernel und x86 Systeme Speicherzugriffe auf x86 Systemen Auf x86 Systemen existieren drei Arten von Speicheradressen Logische Adresse

Mehr

Erklären Sie kurz die Begriffe Handle und Prozess/Thread im Kontext von Windows 2000.

Erklären Sie kurz die Begriffe Handle und Prozess/Thread im Kontext von Windows 2000. Aufgabe 1 Erklären Sie kurz die Begriffe Handle und Prozess/Thread im Kontext von Windows 2000. Im MSDN-Glossary findet sich zum Thema Handle die Erklärung (englisch): 1. A pointer to a pointer; that is,

Mehr

VT und Pacifica. Vortrag zum Seminar Virtuelle Maschinen und Emulatoren. Alexander Würstlein arw@arw.name

VT und Pacifica. Vortrag zum Seminar Virtuelle Maschinen und Emulatoren. Alexander Würstlein arw@arw.name VT und Pacifica Vortrag zum Seminar Virtuelle Maschinen und Emulatoren Alexander Würstlein arw@arw.name Friedrich-Alexander-Universität Erlangen-Nürnberg 28. Mai 2007 arw (FAU) VT & SVM 28. Mai 2007 1

Mehr

1. Prozesse & Threads (10 Punkte)

1. Prozesse & Threads (10 Punkte) Fachbereich Informatik/Mathematik Seite 1/9 1. Prozesse & Threads (10 Punkte) a) Erklären Sie den Unterschied zwischen Prozessen und Threads. [4 P.] Der wesentliche Unterschied ist, dass Prozesse über

Mehr

Grundlagen der Informatik Ausnahmebehandlung & Threads

Grundlagen der Informatik Ausnahmebehandlung & Threads Grundlagen der Informatik Ausnahmebehandlung & Threads Prof. Dr. Bernhard Schiefer (basierend auf Unterlagen von Prof. Dr. Duque-Antón) bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Inhalt Ausnahmebehandlung

Mehr

Webserver Performance Tuning

Webserver Performance Tuning Webserver Performance Tuning Jan Kneschke jan.kneschke@incremental.de incremental Intro Manche Webangebote werden erfolgreicher als ihre Schöpfer je eingeplant haben. Der Apache gibt sich die Kugel, das

Mehr

Kernel Programmierung unter Linux. Programmierung von Kernelmodulen. Referent Klaus Ruhwinkel

Kernel Programmierung unter Linux. Programmierung von Kernelmodulen. Referent Klaus Ruhwinkel Kernel Programmierung unter Linux Programmierung von Kernelmodulen Referent Klaus Ruhwinkel Das Betriebssystem Aufbau des Betriebssystem: Es besteht aus den Betriebssystemkern und den sonstigen Betriebssystemkomponenten

Mehr

Thema: Systemsoftware

Thema: Systemsoftware Teil II 25.02.05 10 Uhr Thema: Systemsoftware»Inhalt» Servermanagement auf BladeEbene» Features der ManagementSoftware» Eskalationsmanagement» Einrichten des Betriebssystems» Steuerung und Überwachung»

Mehr

Prozesse und Logs Linux-Kurs der Unix-AG

Prozesse und Logs Linux-Kurs der Unix-AG Prozesse und Logs Linux-Kurs der Unix-AG Benjamin Eberle 22. Januar 2015 Prozesse unter Linux gestartete Programme laufen unter Linux als Prozesse jeder Prozess hat eine eindeutige Prozess-ID (PID) jeder

Mehr

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

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/2013 UNIVERSITÄT LEIPZIG Enterprise Computing Einführung in das Betriebssystem z/os Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/2013 CICS Transaktionsserver Teil 3 CICS Nucleus el0100 copyright

Mehr

1. Links. 2. Bemerkung zu Unix und anderen Unices

1. Links. 2. Bemerkung zu Unix und anderen Unices time Dipl. Math. F. Braun Universität Regensburg Rechenzentrum http://www.uni-regensburg.de/edv/kurs_info/brf09510/hpc/time.html http://www.uni-regensburg.de/edv/kurs_info/brf09510/hpc/time.pdf http://www.uni-regensburg.de/edv/kurs_info/brf09510/hpc/time.dvi

Mehr

Eine hochverfügbare Firewall mit Linux-HA, iptables und fwbuilder

Eine hochverfügbare Firewall mit Linux-HA, iptables und fwbuilder Eine hochverfügbare Firewall mit Linux-HA, iptables und fwbuilder FROSCON, 23.8.2009 Dr. Michael Schwartzkopff HA Firewall mit fwbuilder, Seite 1 Eine einfache Firewall Eine einfache Firewall mit Linux

Mehr

Grundlagen der Rechnerarchitektur

Grundlagen der Rechnerarchitektur Grundlagen der Rechnerarchitektur Ein und Ausgabe Übersicht Grundbegriffe Hard Disks und Flash RAM Zugriff auf IO Geräte RAID Systeme SS 2012 Grundlagen der Rechnerarchitektur Ein und Ausgabe 2 Grundbegriffe

Mehr

Einführung in die Programmiersprache C

Einführung in die Programmiersprache C Einführung in die Programmiersprache C 10 Sicheres Programmieren Alexander Sczyrba Robert Homann Georg Sauthoff Universität Bielefeld, Technische Fakultät Literatur Klein, Buffer Overflows und Format-String-Schwachstellen.

Mehr

Betriebssysteme 2013/2014

Betriebssysteme 2013/2014 Betriebssysteme 2013/2014 Synchronisation 2. Oktober 2013 1/98 Gleichzeitigkeit Moderne Computer machen mehrere Dinge gleichzeitig - Multithreading Beispiel: Textverarbeitung Benutzereingaben verarbeiten

Mehr

POSIX Echtzeit: Kernel 2.6 und Preempt-RT

POSIX Echtzeit: Kernel 2.6 und Preempt-RT POSIX Echtzeit: Kernel 2.6 und Preempt-RT Slide 1 - http://www.pengutronix.de - 21.01.2007 Echtzeit-Systemplanung Wenn das zeitliche Verhalten spezifiziert ist, kann auch spezifiziert werden, welche Applikationsteile

Mehr

Prozesse und Logs Linux-Kurs der Unix-AG

Prozesse und Logs Linux-Kurs der Unix-AG Prozesse und Logs Linux-Kurs der Unix-AG Andreas Teuchert 27./28. Juni 2012 Prozesse unter Linux gestartete Programme laufen unter Linux als Prozesse jeder Prozess hat eine eindeutige Prozess-ID (PID)

Mehr

Topsy Compendium. Threads Topsy is a multi-threaded operating system (i.e. multiple threads are able to run quasiparallel)

Topsy Compendium. Threads Topsy is a multi-threaded operating system (i.e. multiple threads are able to run quasiparallel) Topsy Compendium Martin Wirz wirzma@ee.ethz.ch Overview Characteristics Threads Topsy is a multi-threaded operating system (i.e. multiple threads are able to run quasiparallel) Process: a program in execution

Mehr

Lab 13: Multi Processor Systems II

Lab 13: Multi Processor Systems II Lab 13: Multi Processor Systems II 1. Können Sie sich erklären warum die Summe nicht 200% ergibt? Warum entspricht die Auslastung nicht 100% pro Prozessor? 100% ist die gesamte Auslastung vom System alle

Mehr

Virtualisierung. Seminarvortrag SS 2005. Niels Burkhardt

Virtualisierung. Seminarvortrag SS 2005. Niels Burkhardt Seminarvortrag SS 2005 Niels Burkhardt Inhalt Einleitung Wofür? Voraussetzungen Klassifizierung Emulation, ABI, Virtuelle Maschinen Virtuelle Maschinen Aufbau Eigenschaften Aufteilung der Befehle VMM Module

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

Dynamische Plug-ins mit Eclipse 3. Martin Lippert (martin.lippert@it-agile.de, www.it-agile.de) Tammo Freese (freese@acm.org)

Dynamische Plug-ins mit Eclipse 3. Martin Lippert (martin.lippert@it-agile.de, www.it-agile.de) Tammo Freese (freese@acm.org) Dynamische Plug-ins mit Eclipse 3 Martin Lippert (martin.lippert@it-agile.de, www.it-agile.de) Tammo Freese (freese@acm.org) Überblick Die Ausgangslage Dynamische Plug-ins Warum? Eclipse 3 Die OSGi-basierte

Mehr