ACM SIGOPS Operating Systems Review
Developing Wmi Solutions
Using Eclipse to demonstrate positive static assurance of Java program concurrency design intent
eclipse '03 Proceedings of the 2003 OOPSLA workshop on eclipse technology eXchange
Modular checking for buffer overflows in the large
Proceedings of the 28th international conference on Software engineering
QEMU, a fast and portable dynamic translator
ATEC '05 Proceedings of the annual conference on USENIX Annual Technical Conference
Dynamic instrumentation of production systems
ATEC '04 Proceedings of the annual conference on USENIX Annual Technical Conference
The Art of Multiprocessor Programming
The Art of Multiprocessor Programming
Hi-index | 0.00 |
Debuggers and instrumentation tools have been proven valuable for understanding the inner workings of software systems. Although these tools are essential for various people, e.g., system administrators, developers, or teachers, they have one major drawback, especially in multi-threaded environments: They completely ignore data races. Within this paper, we present KStruct, a holistic approach for inspecting state information of a system while running. We therefore use a multi-level approach: First KStruct Access, our domain-specific language, can be used to model lock dependencies. Second, based on that model, we generate an access driver that dynamically attaches to the system under investigation and leverages that model to access state information. Our proposed approach can therefore improve quality in two dimensions: The code by making locking first-class primitives, and second the retrieved data is more reliable to be consistent.