## Abstract This paper presents an automatic code instrumentation technique, based on __multithreaded vector clocks__, for extracting the causal partial order on relevant state update events from a running multithreaded program. This technique is used in a formal testing environment, not only to de
Contextual debugging and analysis of multithreaded applications
✍ Scribed by BEDNORZ, M.; GWOZDOWSKI, A.; ZIELIŃSKI, K.
- Publisher
- John Wiley and Sons
- Year
- 1997
- Tongue
- English
- Weight
- 777 KB
- Volume
- 9
- Category
- Article
- ISSN
- 1040-3108
No coin nor oath required. For personal study only.
✦ Synopsis
Multithreaded programs are especially difficult to test and debug. The aim of the paper is to present a new concept of multithreaded program analysis and debugging based on contextual visualisation of the program components that influence thread execution. For this purpose, a dedicated software package called MTV (multithreading viewer) has been designed and implemented. It performs above the run-time library level, and hence only a programmer's view of multiple threads of control execution may be analyzed. The paper presents tested program code instrumentation, communication and synchronization between the instrumented program and MTV. Next, a general concept of contextual visualisation of multithreaded programs has been elaborated. A scheme of the MTV cooperation with the monitored program is discussed. The user interface has been described. A representation of the multithreaded program state has been shown, and the capability of MTV for certain classes of error recognition has been specified and illustrated by a few examples. These examples have been not intended to be exhaustive, but they rather indicate the opportunities to exploit MTV for analysis of complex applications. Short evaluation of the proposed contextual visualisation techniques with application to multithreaded program analysis concludes the paper.
📜 SIMILAR VOLUMES
UO operations in UNIX are inherently synchronous. The need for asynchronous UO comes first from multithreaded applications where thrads cannot block for UO, and second from the fact that asynchronous VO has much less overhead than synchronous UO. There are two main approaches to accomplishing asynch
## Abstract Two models of thread execution are the general concurrent programming execution model (CP) and the cooperative multithreading execution model (CM). CP provides nondeterministic thread execution where context switches occur arbitrarily. CM provides threads that execute one at a time unti
Contextual fear conditioning by 18-and 23-day-old rats was compared in two training contexts, a transparent Plexiglas chamber or a black Plexiglas chamber. As measured by a conditioned defensive freezing response, older rats displayed more contextual fear than younger rats. At both ages conditioning