We have currently no master's thesis projects available in the DRTS group.
We expect to advertise one or two new projects for the spring semester 2011 early in January.
The project shown below has already been assigned to students.
Dependability benchmarking for real-time operating systems
Performance benchmarking is a well-established activity that has pushed the development of computer systems over the past decades (SPEC and TPC are significant examples). Dependability benchmarking is, by contrast, still at an early stage.
The goal of this thesis project is to design a dependability benchmark for real-time operating systems. Small real-time kernels are critical components, for example, in medical, automotive and aerospace applications. The development of a benchmark capable of evaluating their robustness and resilience to faults can be beneficial in three main ways:
- Guiding the effort of designers in the development of real-time operating systems;
- Helping customers to acquire kernels that provide adequate levels of robustness;
- Allowing researchers to evaluate novel dependability concepts and techniques.
The project will be conducted in an agile way, meaning that the following steps are not necessarily sequential:
- Survey the existing literature on dependability benchmarking, focusing on research dealing with operating systems;
- Identify key elements to be benchmarked in operating systems (system call protection, sandboxing capability, robustness, etc.);
- Define appropriate metrics of dependability (e.g., response time when errors occur);
- Define realistic workloads to exercise the system (a small collection of C programs);
- Define realistic faultloads to stress the system (a set of realistic faults and errors to evaluate system operation under faulty circumstances);
- Skilled and motivated students may actually apply the developed benchmark on a real-time operating system currently being used in the group.
The main outcome of the project will be a prototype of a dependability benchmark for real-time operating systems.