Betriebssysteme · Institut für Systemarchitektur · Fakultät Informatik · TU Dresden



25. 01. 2013

Parallelism with Asynchronous Lambdas on Fiasco.OC/L4Re


Jan Bierbaum

TU Dresden

Zwischenpräsentation der Diplomarbeit

Mit dem Einzug von Mehrkernprozessoren in Standard-Hardware bis hin zu eingebetteten Systemen stellt sich für Entwickler zunehmend die Aufgabe ihre Anwendungen an derartige Umgebungen anzupassen. Eines der verbreitetsten Mittel dazu ist die direkte Nutzung von Threads zur parallelen Abarbeitung voneinander unabhängiger Programmteile.

"Grand Central Dispatch" (GCD) stellt einen alternativen Ansatz für die Erschließung von Nebenläufigkeit innerhalb eines Prozesses dar: Statt der manuellen Verwaltung einzelner Threads durch den Entwickler findet hierbei die Organisation indirekt mittels Warteschlangen statt, in die einzelne abzuarbeitende Programmabschnitte eingestellt werden.

Im Vortrag werden zunächst GCD selbst sowie die damit in engem Zusammenhang stehende Technik der "blocks" kurz vorgestellt. Im Hauptteil folgen einige Details zur Implementierung sowie dem aktuellen Stand der Portierung auf L4Re.

25. 01. 2013

Implementation of a Fault Injection Framework for Fiasco.OC


Martin Unzner

TU Dresden

Verteidigung der Belegarbeit

In the future, software development will undergo a paradigm change. Hardware faults due to faulty production or external influences have become more and more likely. Transient faults are especially critical because there is no way to predict them.

There are several well-approved methods to protect software against faulty hardware. However, each layer of replication adds costly overhead, so we aim at protecting only the important parts of the system.

An operating system needs to rely on a functional kernel, so we need to ensure that the kernel always works. To find the regions in the code that are most sensitive to the consequences of transient hardware faults, I wrote a framework that enables the programmer to do fault injection campaigns on arbitrary target programs.

Using Fail*, a flexible fault injection framework, and the Bochs IA-32 emulator, I developed a custom experiment suite featuring four types of fault injection that is capable of performing injections in the kernel. I am going to explain my experiment framework and present the fault injection campaign I ran using it.
16. Jan 2018
· Copyright © 2001-2010 Operating Systems Group, TU Dresden | Impressum ·