Simulation-based temporal debugging of Linux

We present a temporal debugger, capable of examining tempor al behaviour of operating systems. The debugger is based on a simulator modelling an entire workstation at th e instruction level. Unlike traditional debuggers, which need to interfere with program execution, a simulation-bas ed debugger can operate without disturbing time flow of the simulated system. This allows non-intrusive and reproduci ble debugging of general-purpose operating systems, such as Linux. We demonstrate the utility of the temporal debugger by analy sing two time sensitive parts of Linux, scheduling and interrupt handling. We show how our tool allows a user to iden tify and isolate temporally unsatisfactory behaviour, and examine short sequences in detail.

[1]  Jeffrey J. P. Tsai,et al.  A noninvasive architecture to monitor real-time distributed systems , 1990, Computer.

[2]  David Whalley,et al.  On Debugging Real-Time Applications , 1994 .

[3]  J. K. Doyle,et al.  A portable PDP‐11 simulator , 1984, Softw. Pract. Exp..

[4]  Håkan Grahn,et al.  SimICS/Sun4m: A Virtual Workstation , 1998, USENIX Annual Technical Conference.

[5]  Edgar Nett,et al.  An adaptive approach to object-oriented real-time computing , 1998, Proceedings First International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC '98).

[6]  Farnam Jahanian,et al.  An approach to monitoring and assertion-checking of real-time specifications , 1996, Proceedings of the 4th International Workshop on Parallel and Distributed Real-Time Systems.

[7]  Bernhard Plattner Real-Time Execution Monitoring , 1984, IEEE Transactions on Software Engineering.

[8]  Frank Gielen,et al.  The design of DARTS: a dynamic debugger for multiprocessor real-time applications , 1991, Proceedings. EUROMICRO `91 Workshop on Real-Time Systems.

[9]  William Anderson An overview of Motorola's PowerPC simulator family , 1994, CACM.

[10]  Mendel Rosenblum,et al.  Using complete machine simulation to understand computer system behavior , 1998 .