The Chair for Operating Systems (Univ.-Prof. Dr. habil. Th. Bemmerl)
provides the following diploma or master thesis in the range of
Real-Time Systems on x86 hardware:
Design and Implementation of a Real-Time Interface
Background
In our ongoing research project Real-Time Computing on Multicore Computers, we have developed a
proof-of-concept for the execution of hard real-time code on one core of a
multicore x86 processor. The main idea is to shield a process from task
switches, interrupts and unpredictable system call latencies with as least
modifications to the operating system as possible. This comes at the cost of
avoiding system calls which inhibits all common means of
inter-process-communication (IPC). To fix this issue, typical IPC primitives
(e.g. semaphore, message queue) based on shared memory and spin-locks are
provided.
To connect the logical control code to the real world, specialized interfaces
are needed. Different approaches should be evaluated prior or at the beginning
of the work. Especially the latency, the bandwidth and the programmability must
be accounted for. Possible interfaces are serial and parallel ports (less common
today and too slow), USB, PCIe to digital IO boards, and others.
To evaluate the software architecture beyond micro benchmarks, a real-world
application should be implemented. One imaginable demonstration is an engine
control unit (ECU). The input of the angle of the crankshaft and the output of
ignition signals and fuel injection are extremely time critical and should be
controlled by a hard real-time task. Other values controlling the engine's
conditions (pressure, temperature, knock) must be considered also, but are
sufficient in soft real-time. Finally, the reference input (throttle) and the
optimization of the working point are less, but still time critical.
Other possible applications:
- roboter control (hard real-time: movement control, soft real-time: path planning)
- machine control, e.g. milling cutter (x,y(,z) movement, intersection control, ...)
Assingment
- Selection of real-world interface
- Implementation of hard real-time capable driver
- Design and Implementation of the software
- Extension and Improvement of IPC algorithms
- Evaluation
We offer
- Comfortable working-environment, as well as a good equipped Computer infrastructure
- Personal and engaged supervision
- This work can be realised externaly on request (e.g. if simulation hardware is available)
Profil of requirements
- Intermediate diploma of Electro- and Informationstechnics or (technical) computer science
- Alternatively the according prerequisites for a Master's thesis
- Good programming skills in C/C++
- Understanding of operating system internals and system programming
- Linux experience recommended
- Competence to work autonomous and creative
Contact
Georg Wassen
Chair for Operating Systems (LfBS), RWTH Aachen
Modulbau Kopernikusstraße, D-52074 Aachen
Tel.: +49 241 80 24599
E-Mail: wassen@lfbs.rwth-aachen.de
|