MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Building VTrace, a Tracer for Windows NT and Windows 2000 (2000)

Download:
Download as a PDF | Download as a PS
by Jacob R. Lorch, Alan Jay Smith, Jacob R. Lorchý, Alan Jay Smithý
http://digitalassets.lib.berkeley.edu/techreports/ucb/text/CSD-00-1093.ps
Add To MetaCart

Abstract:

In order to conduct accurate simulations of new approaches to energy management, we needed to collect detailed, time-stamped traces of several diverse types of activity on Windows NT and Windows 2000. For this purpose, we wrote VTrace, which collects data about processes, threads, messages, disk operations, network operations, the keyboard, the mouse, and the cursor. Building this tool required a large number of special techniques, which we describe in this paper. These techniques included using a DLL loaded into the address space of every process to intercept Win32 system calls; establishing hook functions for Windows NT kernel system calls; modifying the context switch code in memory to log context switches despite inadequate operating system support; and using device filters to log accesses to devices such as file systems, disk partitions, network transport layers, and the keyboard. We also describe related issues, such as where we found the necessary information, and how to debug a tracing tool that is intimately connected to the operating system kernel. Finally, since VTrace was originally written for Windows NT but later modified and extended to run with Windows 2000, we briefly discuss some of the changes required for Windows 2000. 1

Citations

204 Inside Windows NT – Custer - 1993
148 Interposing Agents: Transparently Interposing User Code at the System Interface – Jones - 1993
89 Fine-grained dynamic instrumentation of commodity operating system kernels – Tamches, Miller - 1999
81 SLIC: An Extensibility System for Commodity Operating Systems – Ghormley, Petrou, et al. - 1998
39 Mediating Connectors – Balzer - 1994
19 Inside the Windows NTFile System – Custer - 1994
16 COLA: Customized Overlaying – Krell, Krishnamurthy - 1992
15 Peering Inside the PE: A Tour of the Win32 Portable Executable File Format – Pietrek - 1994
4 Tracing Windows 95 – Zhou, Smith - 2000
3 The Portable Executable file format from top to bottom – Kath - 1993
3 system-level Win32 coding techniques by writing an API spy program – Pietrek - 1994
2 Windows NT system-call hooking – Russinovich, Cogswell - 1997
2 Examining the Windows NT Filesystem – Russinovich, Cogswell - 1997
1 Windows NT Programming from the Ground Up – Schildt - 1997
1 How to Write an NT Service – Tomlinson - 1996