Diplomarbeit. Implementierung eines Schedulings mit dynamischer Lastverteilung für die SHAP-Mehrkernarchitektur

Größe: px
Ab Seite anzeigen:

Download "Diplomarbeit. Implementierung eines Schedulings mit dynamischer Lastverteilung für die SHAP-Mehrkernarchitektur"

Transkript

1 Implementierung eines Schedulings mit dynamischer Lastverteilung für die SHAP-Mehrkernarchitektur Diplomarbeit an der FAKULTÄT INFORMATIK DER TECHNISCHEN UNIVERSITÄT DRESDEN eingereicht am: INSTITUT FÜR TECHNISCHE INFORMATIK PROFESSUR FÜR VLSI-ENTWURFSSYSTEME, DIAGNOSTIK UND ARCHITEKTUR von: Peter Ebert geboren am 19. Sep in Dresden Matrikel-Nr.: Bearbeitungszeitraum: vom bis Betr. HSL: Betreuer: Prof. Dr.-Ing. habil. Rainer G. Spallek Dr.-Ing. Martin Zabel Dresden, 15. Januar 2013

2

3 Ehrenwörtliche Erklärung Ehrenwörtliche Erklärung Hiermit erkläre ich, dass ich die vorliegende Arbeit selbständig und ohne Benutzung anderer als der angegebenen Hilfsmittel angefertigt sowie die aus fremden Quellen direkt oder indirekt übernommenen Gedanken als solche kenntlich gemacht habe. Die Arbeit wurde bisher in gleicher oder ähnlicher Form keiner anderen Prüfungsbehörde vorgelegt und auch noch nicht veröffentlicht. Peter Ebert, Dresden, 15. Januar 2013

4

5 Inhaltsverzeichnis I. Inhaltsverzeichnis I. Inhaltsverzeichnis... i II. Tabellenverzeichnis... iii III. Abbildungsverzeichnis... v IV. Abkürzungsverzeichnis... vii 1 Einleitung Die SHAP-Mehrkernarchitektur Zielsetzung Arbeitsumgebung Struktur der Arbeit Grundlagen Überblick: Load-Balancing Überblick: Thread-Scheduling Terminologie und Charakteristika Klassische Scheduling-Strategien Scheduling in Java Scheduling auf Mehrkernprozessoren Scheduling von Threadgruppen Distributed Weighted Round-Robin Relevante Organisation des SHAP-Mehrkernprozessors Architektur des SHAP-Mehrkernprozessors Scheduling auf dem SHAP Mehrkernprozessor Entwurf Ambitionen Fortführung des aktuellen Ansatzes Auswahl des Algorithmus Klassische Algorithmen Gang Scheduling Distributed Weighted Round-Robin Hardwarearchitektur der Lastmigration Basisentscheidung Kommunikationskonzept i

6 Inhaltsverzeichnis 4 Implementierung Der Scheduler Beginn der Migration Migration- und Yield-Lock Garbage-Collector-Lock Kern- und Thread-Auswahl Dialog der Kerne GC-parallele Buskommunikation Anrede des Lastkerns Vorbereitung der Stackübertragung Stackübertragung Abschluss der Stackübertragung Nachbehandlung Rückkehr in den Java-Code Umtragen des migrierten Threads Aufhebung der Locks Evaluation Funktionalität Ressourcen Leistungsbewertung Benchmarkbasis Test des ungünstigsten Falls Test des günstigsten Falls Abschlussbetrachtung Ausbaumöglichkeiten und Ausblick Transparente Migration Wichtige Nachbesserungen Weitere Nachbesserungen Zusammenfassung und Fazit V. Literaturverzeichnis VI. Anhang ii

7 Tabellenverzeichnis II. Tabellenverzeichnis Tab. 2-1: Klassifikation dynamischer Lastverteilungsverfahren nach Pollak... 4 Tab. 5-1: Tab. 5-2: Tab. 5-3: Überblick über die wichtigsten Änderungen im absol. und relat. Hardware- Verbrauch LUT-Verbrauch ausgewählter veränderter bzw. neu erstellter VHDL- Komponenten Vergleich des Speed-Ups der alten Version mit dem maximalen theoretischen und dem durch Migration erreichten Speed-Up iii

8 iv

9 Abbildungsverzeichnis III. Abbildungsverzeichnis Abb. 2-1: Klassifikation von Lastbalancierungsverfahren nach Casavant und Kuhl... 5 Abb. 2-2: Architektur des SHAP auf dem Virtex-5 LXT ML505 FPGA Abb. 2-3: Architektur eines SHAP-Prozessorkerns unter bes. Berücksichtigung des Stacks Abb. 3-1: Threadverteilung nach aktuellem Ansatz (a) und nach Rundenlänge (b) Abb. 3-2: Gang Scheduling mit optimalem Packen vor (a) und nach (b) der Terminierung von Programm B und je einem Thread der Programme A und C. Quantum = 1 ms Abb. 3-3: Benchmark-Ergebnisse zur Anzahl von Migrationen pro Runde verschiedener Varianten des abgewandelten DWRR-Algorithmus Abb. 3-4: Diagramm des Kommunikationsablaufs einer erfolgreichen Migration Abb. 3-5: Verkettung der Stackblöcke bei Migration von Thread Abb. 4-1: Ablaufdiagramm des Schedulers im Mikrocode Abb. 4-2: Ablauf der Kommunikation über den GC-Bus und der zur Migration wichtige Ausschnitt des GC-Bus-Protokolls Abb. 4-3: Aufbau eines Datenregisters bei dessen Migration Abb. 4-4: Zustandsabfolge während der Stackübertragung Abb. 4-5: Architektur des neuen SHAP-Prozessorkerns mit Lastmigration (rote Linien: Änderung; rote Bezeichnungen: Neuerstellung) Abb. 4-6: Zeitlicher Kommunikationsablauf einer erfolgreichen Thread-Migration über die Programmierungsebenen Java-Code, Mikrocode und Hardware Abb. 5-1: Vergleich des Ressourcenverbrauchs im Mikrocode zwischen der ursprünglichen (Original) und der neuen, migrationsfähigen Version (Migration) v

10 Abbildungsverzeichnis Abb. 5-2: Vergleich des relativen Hardware-Verbrauchs zwischen der ursprünglichen und der neuen, migrationsfähigen Version Abb. 5-3: Vergleich der Berechnungszeiten von Crypt zwischen alter (Original) und neuer Version (Migration) im Fall der günstigsten Bedingungen für die alte Version Abb. 5-4: Vergleich der Berechnungszeiten von SparseMatmult zwischen alter (Original) und neuer Version (Migration) im Fall der günstigsten Bedingungen für die alte Version Abb. 5-5: Vergleich der Berechnungszeiten von Crypt zwischen alter (Original) und neuer Version (Migration) im Fall der günstigsten Bedingungen für die neue Version Abb. 5-6: Vergleich der Berechnungszeiten von SparseMatmult zwischen alter (Original) und neuer Version (Migration) im Fall der günstigsten Bedingungen für die neue Version vi

11 Abkürzungsverzeichnis IV. Abkürzungsverzeichnis API ASIC CPU CVS CWB DMA DMS DPRR DWRR EDF EWB FCFS FFD FIFO FPGA GC GCB HRRN IDEA IWB JDK JRE JVM JVM-CP LCD LED LLF LUT MC MLFBQ Application Programming Interface Anwendungsspezifische Integrierte Schaltungen Central Processing Unit Concurrent Versions System Core-Wishbone-Bus Direct Memory Access Deadline Monotonic Scheduling Dynamic Priority Round-Robin Distributed Weighted Round-Robin Earliest Deadline First Externer Wishbone-Bus First Come First Serve First Fit Decreasing First In First Out Field Programmable Gate Arrays Garbage Collector Garbage-Collector-Bus Highest Response Ratio Next International Data Encryption Algorithm Interner Wishbone-Bus Java Development Kit Java Runtime Environment Java-Virtual-Machine JVM Constant Pool Liquid Crystal Display Leuchtdiode Least Laxity First Lookup-Tabelle Mikrocode Multilevel Feedback Queue Scheduling vii

12 Abkürzungsverzeichnis MLQ MMU NOS RAM RMS RR SHAP SJF SMP SPF SPT SRTF TLB TOS UART UMA VHDL VLSI VRR Wichtg. WRR verbl. Qu. ZPU Multilevel Queue Scheduling Memory Management Unit Next on Stack Random Access Memory Rate Monotonic Scheduling Round-Robin Secure Hardware Agent Platform Shortest Job First Symmetric Multi-Processing Shortest Process First Shortest Processing Time Shortest Remaining Time First Translation Look-Aside Buffer Top of Stack Universal Asynchronous Receiver Transmitter Uniform Memory Access Very High Speed Integrated Circuit Hardware Description Language Very-Large-Scale Integration Virtual Round-Robin Wichtung Weighted Round-Robin verbleibende Quanten Zylin CPU viii

13 Einleitung 1 Einleitung 1.1 Die SHAP-Mehrkernarchitektur SHAP ist ein Projekt des Lehrstuhls VLSI-Entwurfssysteme, Diagnostik und Architektur der Technischen Universität Dresden, das 2006 ins Leben gerufen wurde und bedeutet: Secure Hardware Agent Platform. Bereits im Namen stehen die drei wesentlichen Aspekte von SHAP. Ziel des Projekts ist die Entwicklung einer Agenten-Plattform, welche komplexe Aufgaben verteilt lösen soll. Dazu wird die Programmiersprache Java genutzt. Sie bietet neben Plattformunabhängigkeit auch wichtige Sicherheitsmerkmale. Um echtzeitfähig zu sein, wird SHAP direkt in Hardware implementiert und ersetzt somit die originale Java-Virtual-Machine (JVM), die gewöhnlich auf einem Betriebssystem aufsetzt. Anwendungsspezifische Integrierte Schaltungen (ASICs) können diese Hardware stellen. Aus Forschungsgründen werden aktuell programmierbare Schaltkreise, um genau zu sein Field Programmable Gate Arrays (FPGAs), verwendet. Bei der Prozessorentwicklung geht der Trend zur Steigerung der Leistung in den letzten Jahren weg von der Erhöhung der Taktfrequenz hin zur Erhöhung der Kernanzahl. Analog zu konkurrierenden Java-Prozessor-Ansätzen verfolgte auch das SHAP-Projekt seit 2007 das Ziel mehrere Prozessorkerne zu verwenden. Die Dissertation von Martin Zabel aus dem Jahr 2011 mit dem Titel Effiziente Mehrkernarchitektur für eingebettete Java-Bytecode-Prozessoren [Zab11] beschreibt ausführlich den Werdegang dieser Entwicklung, die Unterschiede zum Einkernprozessor von 2006 und eine umfassende Leistungsbewertung. 1.2 Zielsetzung Die Motivation dieser Arbeit im großen Kontext ist die Verbesserung der SHAP- Mehrkernarchitektur. Die oben erwähnte Doktorarbeit selbst formuliert dafür bereits Ansatzpunkte. Einer dieser Vorschläge ist die Einbindung einer Lastverteilung durch eine dynamische Umverteilung der Threads auf den Kernen. Zusätzlich dazu muss auch eine Anpassung der Thread-Scheduling-Strategie in Betracht gezogen werden, da Scheduling und Load-Balancing auf Mehrkernprozessoren eng miteinander zusammenhängen. Allerdings wurde während dem Literaturstudium ersichtlich, dass zumindest in einigen Quellen die Begriffe Load-Balancing und Load-Migration disjunkte Bedeutungen 1

14 Einleitung besitzen, und das Ziel dieser Arbeit laut den persönlichen Absprachen mit Load- Migration besser beschrieben ist. Die Realisierung einer Lastmigration ist im Folgenden daher das primäre Vorhaben. 1.3 Arbeitsumgebung Im Rahmen dieser Diplomarbeit wird die aktuelle SHAP-Version, vom lehrstuhlinternen CVS-Server, vom 12. Juni 2012 auf einem Virtex-5 LXT ML505 FPGA der Firma Xilinx genutzt und erweitert. Inbegriffen sind darin sämtliche für die Arbeit relevanten und zu modifizierenden Komponenten, wie die VHDL-Beschreibungen (Very High Speed Integrated Circuit Hardware Description Language), die aktuellen Byte- und Mikrocodes und die Klassenbibliothek. Der Arbeitsplatzrechner besitzt einen 64 Bit Intel Core 2 Duo E8400 Prozessor und wurde mit Microsoft Windows 7 Professional 64 Bit + Service Pack 1 ausgestattet. Jede Kommunikation mit dem Board wird über die serielle UART-Schnittstelle (Universal Asynchronous Receiver Transmitter) bewältigt, wobei das Programm HTerm 0.8.1beta zum Einsatz kam. Java Runtime Environment (JRE) und Java Development Kit (JDK) sind in der Version 1.7.0_03 installiert und als Entwicklungsumgebung wird Eclipse 4.2 (Juno) verwendet. Zur Programmierung des Virtex-5 Boards wird Xilinx ISE Design Suite 13.4 benutzt. 1.4 Struktur der Arbeit Zunächst sollen in Kapitel 2 die theoretischen Grundlagen geklärt werden. Dazu gehören die Auseinandersetzung mit dem gegenwärtigen Stand des SHAP-Projekts sowie ein umfangreiches Studium zur Theorie von Scheduling- und Lastverteilungsstrategien, aber auch bereits bestehender konkreter Algorithmen. Anschließend wird in Kapitel 3 der Weg der Entscheidungsfindung beschrieben, wie und aus welchen Gründen heraus die gestellte Aufgabe gelöst werden soll. Mit der tatsächlichen Implementierung dieser Lösung in die SHAP-Plattform beschäftigt sich Kapitel 4. Kapitel 5 stellt die Ergebnisse der Leistungstests der entstandenen Modifikation dar und vergleicht diese mit der Ausgangsversion. Abschließend wird in Kapitel 6 die gesamte Arbeit auf ihre wichtigsten Bestandteile und Erkenntnisse zusammengefasst und ferner auch durchaus kritisch über etwaige verbesserungsfähige und verbesserungsbedürftige Punkte gesprochen. 2

15 Grundlagen 2 Grundlagen Zum Verständnis, welchen Möglichkeiten, aber auch Grenzen man bei der Arbeit an einem Scheduling-Algorithmus begegnet, sollen zunächst etablierte Begriffe und Kategorisierungen vorgestellt werden. Eine Vollständigkeit der Angaben wird dabei nicht beansprucht. Zumal die Vollzähligkeit in Anbetracht der gebräuchlichen Bezeichnungen und Einordnungen und der Menge verschiedener Lösungen gar nicht möglich ist. Abschließend wird die Architektur der Mehrkernversion des SHAP-Bytecode-Prozessors vorgestellt, in der der neue Scheduler mit Lastverteilung integriert werden soll. 2.1 Überblick: Load-Balancing Lastverteilung wird im allgemeinen Sinn in sehr vielen Bereichen angewendet. Zur Lösung der Aufgabenstellung interessiert speziell die Verteilung der Rechenlast auf Recheneinheiten. Die Weiterentwicklung des SHAP-Einkernprozessors hin zum Mehrkernprozessor schuf die Notwendigkeit für ein Verteilungsverfahren der Threads. Zum Thema Lastverteilung soll vorerst die geläufige Theorie geklärt und zusammengefasst werden. Dabei sollen asymmetrische Systeme vernachlässigt und nur UMA- (Uniform Memory Access) und gleichzeitig SMP-Architekturen (Symmetric Multi Processing) betrachtet werden, auf denen Threads auf allen Kernen gleichartig ausgeführt werden und auf den Hauptspeicher gleich zugreifen können, wie es auch bei der SHAP- Mehrkernarchitektur der Fall ist. Verfahren zur dynamischen Lastbalancierung müssen folgende fünf Teilentscheidungen treffen [Pol99]. Informationsbasis: Aufgrund welcher Informationen wird die Entscheidung getroffen, Last umzuverteilen? 1 Transferentscheidung: Wann und von wem wird entschieden, ob der Ausgleich stattfindet? Migrationsraum: Gibt es abgegrenzte Bereiche, wohin Last verschoben werden darf oder wohin nicht? Lokationsentscheidung: Zwischen welchen Knoten wird die Last übergeben? Auswahlentscheidung: Wie viel Last und welcher Teil davon wird abgegeben? 11 Das Kapitel 3 der Dissertation von Pollak beschäftigt sich intensiv mit der Beantwortung dieser Frage und stellt dazu ein theoretisches Konzept der Informationsebenen auf. [Pol99] 3

16 Grundlagen Aufbauend auf den Möglichkeiten und Variationen diese Fragen zu beantworten, entstehen verschiedene Strategien. Um sie einzuordnen, wurden mehrere Klassifikationsschemata entwickelt, von denen nun zwei vorgestellt werden sollen. Die von Rainer Pollak in seiner Dissertation [Pol99] verwendete Taxonomie setzt kongruent auf den fünf oben erwähnten Teilentscheidungen auf und ist in Tabelle 2-1 schematisch mit den jeweils möglichen Ausprägungen dargestellt. Tab. 2-1: Klassifikation dynamischer Lastverteilungsverfahren nach Pollak Informationsbasis Transferentschei- Migrationsraum Lokationsent- Auswahlentschei- dung scheidung dung lokal zentral bereichsbe- zentral zentral bereichsbe- dezentral schränkt dezentral dezentral schränkt global global Die wohl meist verbreitete [Pol99] alternative Klassifikation wurde 1988 von Casavant und Kuhl aufgestellt [CK88] und mit den Jahren erweitert [Pol99]. Sie betrachtet alle Lastbalancierungsverfahren. Gewöhnlich bezieht man sich dabei aber nur auf den in Abbildung 2-1 dargestellten konsistenten, hierarchischen Teil der Gliederung. Für die vorliegende Arbeit ist deren Teilbaum der dynamischen Lastbalancierungsverfahren wichtig. Dabei werden dezentrale Verfahren, bei welchen Knoten ohne Lastinformationen anderer Knoten entscheiden, als autonom bezeichnet. Im Gegensatz dazu nutzen kooperative Verfahren diese Informationen für ihre Entscheidung. Auf der untersten Ebene werden approximative Methoden abgegrenzt. Sie basieren auf einem vollständigen Modell, das in der Lage ist eine optimale Lösung zu generieren, geben sich aber mit einer akzeptabel guten Lösung zufrieden, um sich Zeit für die Suche zu sparen. Die weiteren Unterkategorien sollten bekannt bzw. selbsterklärend sein. 4

17 Grundlagen Lastverteilung lokal global statisch dynamisch optimal suboptimal zentral dezentral approximativ heuristisch empfängerinitiiert senderinitiiert hybrid kooperativ autonom verschiedene Modelle optimal suboptimal approximativ heuristisch Abb. 2-1: Klassifikation von Lastbalancierungsverfahren nach Casavant und Kuhl Als dynamisches Load-Balancing wird in Anbetracht einer geradezu babylonische[n] Sprachverwirrung [Pol99] eigentlich die Verteilung bei Entstehung von Threads bezeichnet. Im Gegensatz dazu bedeutet Lastmigration die Umverteilung nach Änderung des Lastgleichgewichts. Wenn auch eine gute initiale Zuweisung von hohem Wert ist, ist besonders die komplexere Lastmigration interessant und wesentlich, um auf Dauer hohe Performance zu erreichen. Migriert werden muss lediglich in Systemen mit privaten Thread-Warteschlangen ( ready -Queues) pro Kern. Gibt es eine gemeinsame Warteschlange für das ganze System, nimmt sich ein unbenutzter Kern einfach den ersten Thread aus der Schlange. Private ready -Queues werden jedoch gerade in modernen SMP-Systemen fast ausschließlich genutzt [SGG05]. In einem solchen Umfeld kann Lastmigration auf zwei Arten erfolgen. Entweder überwacht ein einziger, globaler Thread das Gleichgewicht und entscheidet zentral über den empfangenden Kern (push-migration) oder eben dieser Kern sucht sich im Leerlauf eigenständig einen wartenden Thread eines ausgelasteten Kerns (pull-migration). Diese Betrachtungsweise deckt sich nicht ganz mit der Taxonomie von Casavant und Kuhl. Zwar entspricht die empfängerinitiierte Kategorie der pullmigration, die meisten Quellen ordnen jedoch push-migration als dessen Komplement ein, also eine übergeordnete Entscheidungsstelle und nicht die senderinitiierte Kategorie. Pull- und push-migration können auch nebeneinander (hybrid) eingesetzt werden. Es ist allerdings darauf zu achten, dass sogenanntes Thrashing (engl.: das Flattern, das Zittern) vermieden wird, bei dem Kerne überwiegend damit beschäftigt 5

18 Grundlagen sind Last abzustoßen, weil zum Beispiel alle Kerne überlastet sind [Web01]. Der Schwellwert einer Migration sollte sorgfältig festgelegt werden, da die Last im Allgemeinen immer ein wenig ungleich verteilt ist und dabei schnell schwankt. Außerdem beschränken sich die Kosten der Überführung eines Threads nicht nur auf die benötigte Zeit des Datentransfers. Besonders eventuell auftretende Cache- und TLB-Misses auf dem neuen Kern und die Verzögerung beim Nachladen der Daten aus einem Speicher tieferer Hierarchieebene schlagen sich negativ auf die Gesamtleistung nieder. Um Cache-Misses zu vermeiden, werden sogenannte Prozessor-Affinitys (engl.: affinity = Vorliebe, Zugehörigkeit) verwendet [TMu03]. Threads werden dabei bestimmten Kernen zugeteilt, die sie bei harten Affinitäten nicht mehr, oder bei weichen Affinitäten nur im Extremfall verlassen. Load-Migration kann den Affinitäten allerdings entgegenwirken, was noch ein Grund ist, die Migrationsschwelle mit Vorsicht festzulegen. Der Ablauf einer Thread-Migration hat wesentlichen Einfluss auf die benötigte Zeit und damit auf die Gesamtleistung. Hierbei müssen einige Bedingungen eingehalten werden, um eine exaktes Abbild zu erzeugen. Zuerst muss der Speicherinhalt übertragen werden, was die meiste Zeit beansprucht [DG97], und im Folgenden auch der Zustand des Threads. Gleichzeitig müssen seine Kommunikationsbeziehungen aufrechterhalten werden. Nachfolgend werden drei allgemeine Migrationsabläufe vorgeschlagen, die jeweils mit der Migrationsentscheidung beginnen [Web00]. Intuitiv: Es wird ein günstiger Zeitpunkt für das Einfrieren des Threads abgewartet. Anschließend wird der Threadspeicher und der Threadstatus kopiert. Bevor der originale Thread entfernt wird, werden alle bis dato gesammelten Nachrichten zum Duplikat übertragen und die Kommunikationskanäle umgeleitet. Erst dann kann die Kopie aktiviert werden. Pre-Copying: Im Vergleich zur intuitiven Methode gibt es nur einen Unterschied. Das Ziel ist hierbei die Verkürzung der Totzeit. Noch vor dem Einfrieren des Threads wird sein Speicherinhalt kopiert, weshalb bearbeitete Seiten zwar nach dem Anhalten noch aktualisiert werden müssen. Dies kostet alles in allem aber weniger Zeit als im gestoppten Zustand. Post-Copying/Copy-on-Reference: Zunächst werden alle Speicherseitenzugriffe gesperrt. Beim nächsten auftretenden Seitenfehler wird der Thread gestoppt und diese Seite samt Threadstatus zum Zielknoten kopiert. Dort wird der Thread sofort aktiviert. Bei weiteren Seitenfehlern werden diese vom Quellknoten nachgeladen, sodass ein minimaler neuer Threadspeicher entsteht. 6

19 Grundlagen 2.2 Überblick: Thread-Scheduling Terminologie und Charakteristika Unter Scheduling (engl.: schedule = Ablaufplan; to schedule = einteilen) wird das Erstellen eines Ablaufplans verstanden, der eine begrenzte Ressource zuweist. Im Falle des Thread-Scheduling (oft auch Prozess-Scheduling) wird die Rechenzeit eines Prozessors unter mehreren Programm-Threads verteilt. Der Scheduler ist allerdings nur für die Auswahl des zu bearbeitenden Threads zuständig. Die Umschaltung zwischen dem laufenden und dem vom Scheduler ausgewählten Thread übernimmt der Dispatcher. Threads können auf drei zeitliche Arten geplant werden. Die langfristige Planung entscheidet, ob ein Thread überhaupt in den Pool der auszuführenden Threads aufgenommen wird. Mittelfristig wird entschieden, ob diese Threads in den Hauptspeicher geschrieben werden, und die kurzfristige Planung verteilt die Rechenzeit des Prozessors [Ola12]. Für diese Arbeit an SHAP ist nur das kurzfristige Scheduling zu betrachten, da die oberste Stufe der Speicherhierarchie der Hauptspeicher ist und somit keine Daten je ausgelagert sind. Man unterscheidet dabei im Wesentlichen sechs Kriterien, die gute Thread-Scheduling-Algorithmen anvisieren [Bra03]. Es sind Fairness: Dabei soll kein Thread gegenüber anderen Threads unverhältnismäßig lange warten. Eine einheitliche, messbare Definition des schwammigen Fairness- Begriffs wird allerdings nicht vorgeschlagen und somit sind auch Vergleiche verschiedener Scheduling Strategien und Algorithmen dahingehend nur bedingt möglich. Zumeist bedeutet Fairness die im Mittel gleiche Prozessorzeit pro Thread. In Anbetracht deutlich unterschiedlicher Mengen an Arbeit, die ein Thread bearbeiten soll, und möglicher zusätzlicher Prioritäten, überzeugt diese Interpretation von Fairness allerdings nicht, um komplexe Verhältnisse gerecht zu verwalten. Effizienz: Jeder Prozessor ist stets vollständig ausgelastet. Im Kontext realer Programme und damit der Nutzung der Peripherie im PC bzw. auf dem FPGA sollten weitere Ressourcen betrachtet werden. Die ineffiziente Zuteilung der Peripherie kann dazu führen, dass wartende Threads die Ausführung anderer Threads durch die Reservierung anderer Ressourcen als die CPU blockieren und somit der Prozessor nicht ausgelastet wird. Antwortzeit: Die mittlere Wartezeit für Benutzer oder andere Systeme soll minimiert werden. Hintergrundthreads, die keine Interaktion erfordern, werden dabei benachteiligt. 7

20 Grundlagen Wartezeit: Ziel ist die Minimierung der Zeit, in der ein Thread in Warteschlangen verbringt, sei es im ausführungsbereiten oder blockierten Zustand [Ola12]. Scheduling-Strategien können im Wesentlichen nur die Wartezeit direkt beeinflussen [Bra03]. Verweil-/Ausführungs-/Durchlaufzeit: Wartezeit + Bearbeitungszeit (Bedienzeit). Die Zeit, bis ein gestarteter Thread abgearbeitet ist, soll minimiert werden. Durchsatz: Die Anzahl abgearbeiteter Threads pro Zeiteinheit soll maximiert werden. Allerdings muss in Anbetracht der häufig anzutreffenden Theorie einer konstanten Bedienzeit die Frage gestellt werden, ob und wie sich die Maximierung des Durchsatzes, die Minimierung der Verweilzeit und die Minimierung der Wartezeit unterscheiden und wie sinnvoll diese Abgrenzung ist, selbst wenn die Bedienzeit leicht schwanken würde. Als weiteres Kriterium kann der Overhead, also die Zeit für die Scheduling-Entscheidung und den Kontextwechsel, angesehen werden. Denn je nach Implementierung ist der Scheduler dabei selbst als Thread realisiert und verbraucht entsprechend Rechenzeit [Esp11]. Alle Kriterien lassen sich in zwei Dimensionen einteilen. Erstens benutzer- oder systemorientiert und zweitens leistungs- oder qualitätsorientiert [Kai10]. Für den Entwurf eines Thread-Schedulers sind diese Kategorien allerdings zweitrangig. Die Auswahl einer Scheduling-Strategie kommt einer Gratwanderung gleich [Ola12] und ist stets ein Kompromiss [Hel]. Da es nicht möglich ist, einen idealen Scheduler zu erstellen, der nach allen Kriterien optimiert [Bra03], muss für den speziellen Algorithmus der Anwendungsfall die zu optimierenden Kriterien bestimmen. Nach Tanenbaum werden drei Einsatzgebiete gegeneinander abgegrenzt: der Echtzeitbetrieb, Interaktive Systeme (Dialogsysteme) und Stapel- bzw. Batchverarbeitung [Tan02]. Die daraus folgenden Ziele sind Allgemein: Fairness, Einhaltung von Systemregeln, Balance (gleichmäßige Auslastung aller Systemkomponenten) Echtzeit: Vorhersagbarkeit, Einhaltung von Deadlines Interaktive Systeme: Antwortzeit, Proportionalität (Erfüllung der Erwartung des Benutzers) Stapelverarbeitung: Effizienz, Durchsatz, Verweilzeit Ähnlich den verwendeten Systemen können auch die auf ihnen laufenden Threads charakterisiert werden. Threads bestehen typischerweise aus CPU-intensiven (CPUburst) und I/O-intensiven Phasen (I/O-burst). Dabei wird traditionell zwischen rechenintensiven Jobs (CPU-bound), die besonders den Prozessor belasten, und I/O-intensiven 8

21 Grundlagen Jobs (I/O-bound) unterschieden [New]. Ähnliche Threads behindern sich dabei gegenseitig, während Threads verschiedener Art das Gesamtsystem besser auslasten können. Ein Scheduler hat noch weitere Eigenschaften. Zunächst ist er entweder unterbrechend (präemptiv), dann wird er dem aktuell laufenden Thread den Prozessor nach einer bestimmten Zeit wegnehmen, um andere Threads arbeiten zu lassen, oder er ist kooperativ (bzw. nicht präemptiv). Dabei laufen Threads bis sie beendet sind, blockieren oder von selbst ihre Rechenzeit abgeben in Java mittels der Methode yield(). Als nächstes ist ein Scheduling-Algorithmus deterministisch, wenn die Informationsbasis, über welche entschieden wird, feststeht und damit eine Optimierungslösung berechenbar ist. Propabilistische Scheduler arbeiten mit Wahrscheinlichkeiten. Informationen über Anzahl, Ankunftszeit, I/O-Verhalten etc. sind nicht oder nur durch ihre Wahrscheinlichkeitsverteilung bekannt. Hier werden Heuristiken verwendet, um den Overhead klein zu halten [Kre04]. Weiterhin werden Scheduler danach unterteilt, zu welcher Laufzeit sie entscheiden [Sta09]. Offline-Algorithmen planen alle Aufgaben für die gesamte Lebenszeit vor dem Start des Systems. Daher benötigen sie sämtliche Informationen im Voraus, sind also deterministisch. Vorteile dieser Variante sind die Vorhersagbarkeit und der geringe Overhead, denn der Dispatcher braucht lediglich das nächste Element einer Tabelle oder Liste laden. Dagegen muss im Vorfeld ein sehr hoher Aufwand betrieben werden. Auch sind offline-scheduler unflexibel und in den allermeisten Systemen nicht anwendbar [Foh05]. Verbreiteter sind daher online-scheduler. Sie sind im Gegensatz zu zeitgetriggerten offline-varianten meist ereignisgetriggert. Informationen können dabei zur Laufzeit bekannt werden, erfordern dann aber großen Verarbeitungsoverhead. Deswegen sind die meisten online-scheduler propabilistisch und benutzen simple Heuristiken. Wichtig in Bezug auf Scheduling allgemein ist die Frage, wann der Algorithmus bzw. Dispatcher aktiviert wird. Gehen wir von online-scheduling aus, so ist die Antwort darauf eng damit verbunden, ob der Scheduler unterbrechend ist oder nicht [Hel06]. Im nicht präemptiven Fall geschieht die Aktivierung ereignisgetriggert, sobald der aktuell laufende Thread blockiert, terminiert oder sich freiwillig schlafen legt. In präemptiven Systemen können Threads verdrängt werden. Dies passiert, wenn beispielsweise seine Zeitscheibe abgelaufen ist, sich Prioritäten ändern, beim Auftreten von Interrupts oder wenn favorisierte Threads in den Zustand ready übergehen. Alternativ zu der Unterteilung nach Unterbrechbarkeit kann auch zwischen Zeit- und Ereignissteuerung unterschieden werden [Kai10]. 9

22 Grundlagen Klassische Scheduling-Strategien Es existieren einige bekannte und weit verbreitete Strategien, die noch für Einkernprozessoren entwickelt wurden und dort die meisten Anwendungsfälle [Hel] bedienen. Auch die aktuelle Version von SHAP implementiert mit Round-Robin [Zab11] eine dieser klassischen Strategien. Die meisten modernen, komplexeren Algorithmen beruhen in irgendeiner Art auf ihnen, weshalb sie im Folgenden vorgestellt werden sollen. Die einfachste aller Strategien ist First In First Out (FIFO), auch als First Come First Serve (FCFS) bekannt. Alle Threads werden nach ihrer Ankunftszeit bzw. Wartezeit abgearbeitet und dabei nicht unterbrochen, sodass der Overhead minimiert wird. Typischerweise wird dies durch eine Warteschlange realisiert. FIFO wird häufig nur in stapelverarbeitenden Systemen verwendet, da hohe Antwortzeiten und geringer I/O-Durchsatz auftreten können, wenn Threads mit kurzen CPU-Bursts auf solche mit langen Bursts folgen. Dieses, als Konvoi-Effekt bekannte Verhalten, ist für interaktive und Echtzeit-Systeme ineffizient. Effizient kann das Verfahren sein, wenn vor allem langlebige Threads kooperativ programmiert werden, sich also freiwillig schlafen legen. Davon kann im Allgemeinen aber nicht ausgegangen werden. Ein vorhersagebasiertes Verfahren, das die Antwortzeit minimiert, ist Shortest Job First (SJF), auch als Shortest Process First (SPN) oder Shortest Processing Time (SPT) bekannt. Diese Strategie ist nicht unterbrechend. Wie ihr Name sagt, wird der kürzeste Thread ausgeführt, der bereit ist. Dazu müssen die Laufzeiten der Threads allerdings bekannt sein, was nur selten der Fall ist. Teilweise wird versucht über das vergangene CPU-Burst-Verhalten zu approximieren [Esp11]. Wird dieser Algorithmus unterbrechend implementiert, so wird er als Shortest Remaining Time First (SRTF) bezeichnet und ist durch das ständige Abgleichen recht aufwendig. Das große Defizit dieser Verfahren ist die Benachteiligung langer Threads, die sogar deren Verhungern möglich macht. Highest Response Ratio Next (HRRN) beruht ebenfalls auf Vorhersage, lässt im Gegensatz zu den zwei oben genannten Strategien gleichwohl langlebige Threads nicht verhungern. Durch sogenanntes Aging wird die Priorität eines Threads mit der Zeit erhöht. Dazu wird lediglich das Verhältnis von Wartezeit zu Bedienzeit gebildet die sogenannte response ratio. HRRN ist folglich nicht präemptiv und sollte bei kooperativ programmierter Software verwendet werden. Da die response ratio kurzer Threads mit der Zeit stärker wächst, werden diese immer noch bevorzugt. Der älteste, (meist verwendete [Esp11],) einfachste und fairste Algorithmus [Irr12] ist das zeitscheibenbasierte Round-Robin (RR). Dabei werden alle Threads in einer Warteschlange gehalten, aus der je der erste Thread für eine 10

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

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

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

Lizenzierung von System Center 2012

Lizenzierung von System Center 2012 Lizenzierung von System Center 2012 Mit den Microsoft System Center-Produkten lassen sich Endgeräte wie Server, Clients und mobile Geräte mit unterschiedlichen Betriebssystemen verwalten. Verwalten im

Mehr

Dokumentation Schedulingverfahren

Dokumentation Schedulingverfahren Dokumentation Schedulingverfahren von Norbert Galuschek Gordian Maugg Alexander Hahn Rebekka Weissinger June 23, 2011 1 Contents 1 Aufgabe 3 2 Vorgehensweise 4 2.1 Warum Android.......................

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

Hilfe Bearbeitung von Rahmenleistungsverzeichnissen

Hilfe Bearbeitung von Rahmenleistungsverzeichnissen Hilfe Bearbeitung von Rahmenleistungsverzeichnissen Allgemeine Hinweise Inhaltsverzeichnis 1 Allgemeine Hinweise... 3 1.1 Grundlagen...3 1.2 Erstellen und Bearbeiten eines Rahmen-Leistungsverzeichnisses...

Mehr

Speicher in der Cloud

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

Mehr

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

Scheduling in Echtzeitbetriebssystemen. Prof. Dr. Margarita Esponda Freie Universität Berlin

Scheduling in Echtzeitbetriebssystemen. Prof. Dr. Margarita Esponda Freie Universität Berlin Scheduling in Echtzeitbetriebssystemen Prof. Dr. Margarita Esponda Freie Universität Berlin Echtzeitsysteme Korrekte Ergebnisse zum richtigen Zeitpunkt Hart Echtzeitsysteme Eine verspätete Antwort ist

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

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

Gutes Leben was ist das?

Gutes Leben was ist das? Lukas Bayer Jahrgangsstufe 12 Im Hirschgarten 1 67435 Neustadt Kurfürst-Ruprecht-Gymnasium Landwehrstraße22 67433 Neustadt a. d. Weinstraße Gutes Leben was ist das? Gutes Leben für alle was genau ist das

Mehr

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein. Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Bevor Sie den Java-Compiler installieren sollten Sie sich vergewissern, ob er eventuell schon installiert ist. Gehen sie wie folgt

Mehr

1 topologisches Sortieren

1 topologisches Sortieren Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung

Mehr

Datensicherung. Beschreibung der Datensicherung

Datensicherung. Beschreibung der Datensicherung Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten

Mehr

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Dateiname: ecdl5_01_00_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Grundlagen

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

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

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

Mehr

Gruppenrichtlinien und Softwareverteilung

Gruppenrichtlinien und Softwareverteilung Gruppenrichtlinien und Softwareverteilung Ergänzungen zur Musterlösung Bitte lesen Sie zuerst die gesamte Anleitung durch! Vorbemerkung: Die Begriffe OU (Organizational Unit) und Raum werden in der folgenden

Mehr

infach Geld FBV Ihr Weg zum finanzellen Erfolg Florian Mock

infach Geld FBV Ihr Weg zum finanzellen Erfolg Florian Mock infach Ihr Weg zum finanzellen Erfolg Geld Florian Mock FBV Die Grundlagen für finanziellen Erfolg Denn Sie müssten anschließend wieder vom Gehaltskonto Rückzahlungen in Höhe der Entnahmen vornehmen, um

Mehr

Monitore. Klicken bearbeiten

Monitore. Klicken bearbeiten Sascha Kretzschmann Institut für Informatik Monitore Formatvorlage und deren Umsetzung des Untertitelmasters durch Klicken bearbeiten Inhalt 1. Monitore und Concurrent Pascal 1.1 Warum Monitore? 1.2 Monitordefinition

Mehr

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele:

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele: 2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Configuring Terminal Services o Configure Windows Server 2008 Terminal Services RemoteApp (TS RemoteApp) o Configure Terminal Services Gateway

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

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

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum C A R L V O N O S S I E T Z K Y Agile Vorgehensmodelle in der Softwareentwicklung: Scrum Johannes Diemke Vortrag im Rahmen der Projektgruppe Oldenburger Robot Soccer Team im Wintersemester 2009/2010 Was

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

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

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

Installation von Updates

Installation von Updates Installation von Updates In unregelmässigen Abständen erscheinen Aktualisierungen zu WinCard Pro, entweder weil kleinere Verbesserungen realisiert bzw. Fehler der bestehenden Version behoben wurden (neues

Mehr

icloud nicht neu, aber doch irgendwie anders

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

Mehr

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

Stammdaten Auftragserfassung Produktionsbearbeitung Bestellwesen Cloud Computing

Stammdaten Auftragserfassung Produktionsbearbeitung Bestellwesen Cloud Computing Stammdaten Auftragserfassung Produktionsbearbeitung Bestellwesen Cloud Computing Finanzbuchhaltung Wenn Sie Fragen haben, dann rufen Sie uns an, wir helfen Ihnen gerne weiter - mit Ihrem Wartungsvertrag

Mehr

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

In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können. Tutorial: Wie erfasse ich einen Termin? In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können. Neben den allgemeinen Angaben zu einem

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

Installation der SAS Foundation Software auf Windows

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

Mehr

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere

Mehr

Vorbereitung zur Prüfung Echtzeitbetriebssysteme

Vorbereitung zur Prüfung Echtzeitbetriebssysteme Vorbereitung zur Prüfung Echtzeitbetriebssysteme Zugelassene Hilfsmittel: Taschenrechner Bitte verwenden Sie keinen roten Farbstift! 1. Echtzeitbetriebssysteme - Allgemein (15 Punkte) 1.1. Warum setzen

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

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

In 12 Schritten zum mobilen PC mit Paragon Drive Copy 11 und Microsoft Windows Virtual PC

In 12 Schritten zum mobilen PC mit Paragon Drive Copy 11 und Microsoft Windows Virtual PC PARAGON Technologie GmbH, Systemprogrammierung Heinrich-von-Stephan-Str. 5c 79100 Freiburg, Germany Tel. +49 (0) 761 59018201 Fax +49 (0) 761 59018130 Internet www.paragon-software.com Email sales@paragon-software.com

Mehr

MetaQuotes Empfehlungen zum Gebrauch von

MetaQuotes Empfehlungen zum Gebrauch von MetaQuotes Empfehlungen zum Gebrauch von MetaTrader 4 auf Mac OS Auch wenn viele kommerzielle Angebote im Internet existieren, so hat sich MetaQuotes, der Entwickler von MetaTrader 4, dazu entschieden

Mehr

Echtzeitscheduling (1)

Echtzeitscheduling (1) Echtzeitscheduling (1) Scheduling in Betriebssystemen Ressourcenausteilung (CPU, Speicher, Kommunikation) Faire Ressourcenvergabe, insbesondere CPU Hohe Interaktivität / kurze Reaktionszeit für interaktive

Mehr

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Ab der Version forma 5.5 handelt es sich bei den Orientierungshilfen der Architekten-/Objektplanerverträge nicht

Mehr

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

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

Mehr

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER Abamsoft Finos in Verbindung mit der Webshopanbindung wurde speziell auf die Shop-Software shop to date von DATA BECKER abgestimmt. Mit

Mehr

Wie halte ich Ordnung auf meiner Festplatte?

Wie halte ich Ordnung auf meiner Festplatte? Wie halte ich Ordnung auf meiner Festplatte? Was hältst du von folgender Ordnung? Du hast zu Hause einen Schrank. Alles was dir im Wege ist, Zeitungen, Briefe, schmutzige Wäsche, Essensreste, Küchenabfälle,

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

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

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

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

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

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

Mehr

Zwischenablage (Bilder, Texte,...)

Zwischenablage (Bilder, Texte,...) Zwischenablage was ist das? Informationen über. die Bedeutung der Windows-Zwischenablage Kopieren und Einfügen mit der Zwischenablage Vermeiden von Fehlern beim Arbeiten mit der Zwischenablage Bei diesen

Mehr

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes. Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel

Mehr

CPU-Scheduling - Grundkonzepte

CPU-Scheduling - Grundkonzepte CPU-Scheduling - Grundkonzepte Sommersemester 2015 Seite 1 Gesamtüberblick 1. Einführung in Computersysteme 2. Entwicklung von Betriebssystemen 3. Architekturansätze 4. Interruptverarbeitung in Betriebssystemen

Mehr

Informationssystemanalyse Problemstellung 2 1. Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse:

Informationssystemanalyse Problemstellung 2 1. Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse: Informationssystemanalyse Problemstellung 2 1 Problemstellung Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse: große Software-Systeme werden im Schnitt ein Jahr zu spät

Mehr

Internet online Update (Internet Explorer)

Internet online Update (Internet Explorer) Um Ihr Consoir Beta immer schnell und umkompliziert auf den aktuellsten Stand zu bringen, bieten wir allen Kunden ein Internet Update an. Öffnen Sie Ihren Internetexplorer und gehen auf unsere Internetseite:

Mehr

Einführung in Eclipse und Java

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

Mehr

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

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

Anleitung zum erfassen von Last Minute Angeboten und Stellenangebote

Anleitung zum erfassen von Last Minute Angeboten und Stellenangebote Anleitung zum erfassen von Last Minute Angeboten und Stellenangebote Zweck dieser Anleitung ist es einen kleinen Überblick über die Funktion Last Minute auf Swisshotelportal zu erhalten. Für das erstellen

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

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

In 15 einfachen Schritten zum mobilen PC mit Paragon Drive Copy 10 und Microsoft Windows Virtual PC

In 15 einfachen Schritten zum mobilen PC mit Paragon Drive Copy 10 und Microsoft Windows Virtual PC PARAGON Technologie GmbH, Systemprogrammierung Heinrich-von-Stephan-Str. 5c 79100 Freiburg, Germany Tel. +49 (0) 761 59018201 Fax +49 (0) 761 59018130 Internet www.paragon-software.com Email sales@paragon-software.com

Mehr

Zentrale Installation

Zentrale Installation Einführung STEP 7 wird durch ein Setup-Programm installiert. Eingabeaufforderungen auf dem Bildschirm führen Sie Schritt für Schritt durch den gesamten Installationsvorgang. Mit der Record-Funktion steht

Mehr

Workflow Systeme mit der Windows Workflow Foundation

Workflow Systeme mit der Windows Workflow Foundation Studiengang Electronic Business (EB) Diplomarbeit (280000) Workflow Systeme mit der Windows Workflow Foundation externe Betreuung durch Christoph Müller vorgelegt bei Prof. Dr. Michael Gröschel von Hans-Martin

Mehr

Einrichten der Outlook-Synchronisation

Einrichten der Outlook-Synchronisation Das will ich auch wissen! - Kapitel 3 Einrichten der Outlook-Synchronisation Inhaltsverzeichnis Überblick über dieses Dokument... 2 Diese Kenntnisse möchten wir Ihnen vermitteln... 2 Diese Kenntnisse empfehlen

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

Datenübernahme von HKO 5.9 zur. Advolux Kanzleisoftware

Datenübernahme von HKO 5.9 zur. Advolux Kanzleisoftware Datenübernahme von HKO 5.9 zur Advolux Kanzleisoftware Die Datenübernahme (DÜ) von HKO 5.9 zu Advolux Kanzleisoftware ist aufgrund der von Update zu Update veränderten Datenbank (DB)-Strukturen in HKO

Mehr

BüroWARE Exchange Synchronisation Grundlagen und Voraussetzungen

BüroWARE Exchange Synchronisation Grundlagen und Voraussetzungen BüroWARE Exchange Synchronisation Grundlagen und Voraussetzungen Stand: 13.12.2010 Die BüroWARE SoftENGINE ist ab Version 5.42.000-060 in der Lage mit einem Microsoft Exchange Server ab Version 2007 SP1

Mehr

Anti-Botnet-Beratungszentrum. Windows XP in fünf Schritten absichern

Anti-Botnet-Beratungszentrum. Windows XP in fünf Schritten absichern Windows XP in fünf Schritten absichern Inhalt: 1. Firewall Aktivierung 2. Anwendung eines Anti-Virus Scanner 3. Aktivierung der automatischen Updates 4. Erstellen eines Backup 5. Setzen von sicheren Passwörtern

Mehr

Installation und Inbetriebnahme von SolidWorks

Installation und Inbetriebnahme von SolidWorks Inhaltsverzeichnis FAKULTÄT FÜR INGENIEURWISSENSCHAFTEN I Prof. Dr.-Ing. Frank Lobeck Installation und Inbetriebnahme von SolidWorks Inhaltsverzeichnis Inhaltsverzeichnis... I 1. Einleitung... 1 2. Installation...

Mehr

Zeichen bei Zahlen entschlüsseln

Zeichen bei Zahlen entschlüsseln Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren

Mehr

Handbuch ECDL 2003 Professional Modul 3: Kommunikation Postfach aufräumen und archivieren

Handbuch ECDL 2003 Professional Modul 3: Kommunikation Postfach aufräumen und archivieren Handbuch ECDL 2003 Professional Modul 3: Kommunikation Postfach aufräumen und archivieren Dateiname: ecdl_p3_04_03_documentation.doc Speicherdatum: 08.12.2004 ECDL 2003 Professional Modul 3 Kommunikation

Mehr

Eigenen WSUS Server mit dem UNI WSUS Server Synchronisieren

Eigenen WSUS Server mit dem UNI WSUS Server Synchronisieren Verwaltungsdirektion Informatikdienste Eigenen WSUS Server mit dem UNI WSUS Server Synchronisieren Inhaltsverzeichnis Einleitung... 3 Installation WSUS Server... 4 Dokumente... 4 Step by Step Installation...

Mehr

Seite 1 von 14. Cookie-Einstellungen verschiedener Browser

Seite 1 von 14. Cookie-Einstellungen verschiedener Browser Seite 1 von 14 Cookie-Einstellungen verschiedener Browser Cookie-Einstellungen verschiedener Browser, 7. Dezember 2015 Inhaltsverzeichnis 1.Aktivierung von Cookies... 3 2.Cookies... 3 2.1.Wofu r braucht

Mehr

Avira Server Security Produktupdates. Best Practice

Avira Server Security Produktupdates. Best Practice Avira Server Security Produktupdates Best Practice Inhaltsverzeichnis 1. Was ist Avira Server Security?... 3 2. Wo kann Avira Server Security sonst gefunden werden?... 3 3. Was ist der Unterschied zwischen

Mehr

PHPNuke Quick & Dirty

PHPNuke Quick & Dirty PHPNuke Quick & Dirty Dieses Tutorial richtet sich an all die, die zum erstenmal an PHPNuke System aufsetzen und wirklich keine Ahnung haben wie es geht. Hier wird sehr flott, ohne grosse Umschweife dargestellt

Mehr

DSO. Abtastrate und Speichertiefe

DSO. Abtastrate und Speichertiefe DSO Abtastrate und Speichertiefe Inhalt Inhalt...- 1 - Feine Signaldetails und lange Abtastzeiträume...- 2 - Was ein großer Speicher bewirkt...- 2 - Einfluss der Oszilloskop-Architektur auf die Update-Rate...-

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

Windows 8 Lizenzierung in Szenarien

Windows 8 Lizenzierung in Szenarien Windows 8 Lizenzierung in Szenarien Windows Desktop-Betriebssysteme kommen in unterschiedlichen Szenarien im Unternehmen zum Einsatz. Die Mitarbeiter arbeiten an Unternehmensgeräten oder bringen eigene

Mehr

Reporting Services und SharePoint 2010 Teil 1

Reporting Services und SharePoint 2010 Teil 1 Reporting Services und SharePoint 2010 Teil 1 Abstract Bei der Verwendung der Reporting Services in Zusammenhang mit SharePoint 2010 stellt sich immer wieder die Frage bei der Installation: Wo und Wie?

Mehr

Handbuch. timecard Connector 1.0.0. Version: 1.0.0. REINER SCT Kartengeräte GmbH & Co. KG Goethestr. 14 78120 Furtwangen

Handbuch. timecard Connector 1.0.0. Version: 1.0.0. REINER SCT Kartengeräte GmbH & Co. KG Goethestr. 14 78120 Furtwangen Handbuch timecard Connector 1.0.0 Version: 1.0.0 REINER SCT Kartengeräte GmbH & Co. KG Goethestr. 14 78120 Furtwangen Furtwangen, den 18.11.2011 Inhaltsverzeichnis Seite 1 Einführung... 3 2 Systemvoraussetzungen...

Mehr

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können.

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können. Excel-Schnittstelle Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können. Voraussetzung: Microsoft Office Excel ab Version 2000 Zum verwendeten Beispiel:

Mehr

20. Algorithmus der Woche Online-Algorithmen: Was ist es wert, die Zukunft zu kennen? Das Ski-Problem

20. Algorithmus der Woche Online-Algorithmen: Was ist es wert, die Zukunft zu kennen? Das Ski-Problem 20. Algorithmus der Woche Online-Algorithmen: Was ist es wert, die Zukunft zu kennen? Das Ski-Problem Autor Susanne Albers, Universität Freiburg Swen Schmelzer, Universität Freiburg In diesem Jahr möchte

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

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12 Grundlagen: Folge 19 - Bäume 19.1 Binärbäume - Allgemeines Unter Bäumen versteht man in der Informatik Datenstrukturen, bei denen jedes Element mindestens zwei Nachfolger hat. Bereits in der Folge 17 haben

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

Die DeskCenter Management Suite veröffentlicht neue Version 8.1

Die DeskCenter Management Suite veröffentlicht neue Version 8.1 Die DeskCenter Management Suite veröffentlicht neue Version 8.1 Neues im Basis Modul Benutzerdefinierte Felder Die DeskCenter Management Suite erlaubt nun das Erstellen von selbst definierten Eingabefeldern.

Mehr

Thema: Microsoft Project online Welche Version benötigen Sie?

Thema: Microsoft Project online Welche Version benötigen Sie? Seit einiger Zeit gibt es die Produkte Microsoft Project online, Project Pro für Office 365 und Project online mit Project Pro für Office 365. Nach meinem Empfinden sind die Angebote nicht ganz eindeutig

Mehr

Partitionieren in Vista und Windows 7/8

Partitionieren in Vista und Windows 7/8 Partitionieren in Vista und Windows 7/8 Windows Vista und Windows 7 können von Haus aus Festplatten partitionieren. Doch die Funktion ist etwas schwer zu entdecken, denn sie heißt "Volume verkleinern".

Mehr

Abschluss Version 1.0

Abschluss Version 1.0 Beschreibung Der Abschluss wird normalerweise nur einmal jährlich durchgeführt. Dieses Tech-Note soll helfen, diesen doch seltenen aber periodisch notwendigen Vorgang problemlos durchzuführen. Abschlussvarianten

Mehr

Persönliche Zukunftsplanung mit Menschen, denen nicht zugetraut wird, dass sie für sich selbst sprechen können Von Susanne Göbel und Josef Ströbl

Persönliche Zukunftsplanung mit Menschen, denen nicht zugetraut wird, dass sie für sich selbst sprechen können Von Susanne Göbel und Josef Ströbl Persönliche Zukunftsplanung mit Menschen, denen nicht zugetraut Von Susanne Göbel und Josef Ströbl Die Ideen der Persönlichen Zukunftsplanung stammen aus Nordamerika. Dort werden Zukunftsplanungen schon

Mehr

Insiderwissen 2013. Hintergrund

Insiderwissen 2013. Hintergrund Insiderwissen 213 XING EVENTS mit der Eventmanagement-Software für Online Eventregistrierung &Ticketing amiando, hat es sich erneut zur Aufgabe gemacht zu analysieren, wie Eventveranstalter ihre Veranstaltungen

Mehr

Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am 14.08.08

Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am 14.08.08 Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements von Stephanie Wilke am 14.08.08 Überblick Einleitung Was ist ITIL? Gegenüberstellung der Prozesse Neuer

Mehr

WinVetpro im Betriebsmodus Laptop

WinVetpro im Betriebsmodus Laptop WinVetpro im Betriebsmodus Laptop Um Unterwegs Daten auf einem mobilen Gerät mit WinVetpro zu erfassen, ohne den Betrieb in der Praxis während dieser Zeit zu unterbrechen und ohne eine ständige Online

Mehr

Novell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar 2015. ZID Dezentrale Systeme

Novell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar 2015. ZID Dezentrale Systeme Novell Client Anleitung zur Verfügung gestellt durch: ZID Dezentrale Systeme Februar 2015 Seite 2 von 8 Mit der Einführung von Windows 7 hat sich die Novell-Anmeldung sehr stark verändert. Der Novell Client

Mehr

Echtzeitfähige Ereignisgetriebene Scheduling-Strategien

Echtzeitfähige Ereignisgetriebene Scheduling-Strategien Friedrich-Alexander-Universität Erlangen-Nürnberg Ausgewählte Kapitel eingebetteter Systeme Echtzeitfähige Ereignisgetriebene Scheduling-Strategien Sven Kerschbaum 1. Einführung Bei einem eingebetteten

Mehr