• Corpus ID: 385368

Intercepting Arbitrary Functions on Windows , UNIX , and Macintosh OS X Platforms CS-TR-4585 , UMIACS-TR-2004-28

  title={Intercepting Arbitrary Functions on Windows , UNIX , and Macintosh OS X Platforms CS-TR-4585 , UMIACS-TR-2004-28},
  author={Daniel S. Myers and Adam L. Bazinet},
It is often desirable to modify the behavior of existing code bases by wrapping or replacing functions. When editing the source code of those functions is a viable option, this can be a straight-forward process. When the source of the functions cannot be edited (e.g., if the functions are provided by the system C library), then alternative techniques are required. Here, we present such techniques for UNIX, Windows, and Macintosh OS X platforms. We have used these techniques to update… 
A Survey on Function and System Call Hooking Approaches
This survey presents several criteria for the classification and selection of hooking tools and techniques as well as an examination of the major hooking approaches used on Windows, Linux, macOS, iOS, and Android operating systems.
Toward user interface virtualization: legacy applications and innovative interaction systems
This paper reviews various software technologies for using a single-user desktop application with a different model of user inputs and graphical output and presents a generic technique for using any closed-source or open-source application with different input and output devices.
Maintainable and reusable scientific software adaptation: democratizing scientific software adaptation
This paper presents a novel approach to adapting scientific software written in Fortran that leverages the binary object code compatibility between stack-based imperative programming languages and applies a C++ Aspect-Oriented Programming (AOP) extension to Fortran programs.
Modular Implementation of Program Adaptation with Existing Scientific Codes
Modular approaches to implementing program adaptation with existing scientific codes are studied, whereby application-specific adaptation strategies can be implemented in separate code which is then transparently combined with a given program.
Refactoring towards seams in C++
This work shows how to create seams in C++ by using new refactorings, and provides sophisticated IDE support to automate this task.
An Approach with Maintainability , Structured Design and Automation with the Intension of Software Engineering
A consequence from the analysis mutually with added new investigations appears to support the thesis that inheritance is used moreover sparingly or incorrectly, and recommends that deeper inheritance trees are characteristics of systems which are harder to understand and harder to preserve.
Expanding the Reach of Grid Computing: Combining Globus- and BOINC-Based Systems
This work states that grid computing is a model of distributed computing that uses geographically and administratively disparate resources and that individual users can access computers and data transparently, without having to consider location, operating system, account administration, and other details.
Energy Efficient Graphics : Making the Rendring Process Power Aware
Today, it is possible to produce computer generated graphics with amazing realism, even in embedded systems, such as mobile phones, which are characterized by limited battery power, and ...
Interactions post-WIMP et applications existantes sur une table interactive
Les tables interactives se presentent sous un aspect materiel different des ordinateurs traditionnels, au-dela du trio ecran-clavier-souris, mais adaptees a des prototypes de nouveaux systemes d'interaction.


Detours: binary interception of Win32 functions
The Detours library is presented, a library for instrumenting arbitrary Win32 functions on x86 machines and is the first package on any platform to logically preserve the un-instrumented target function as a subroutine for use by the instrumentation.
SETI@home: an experiment in public-resource computing
Millions of computer owners worldwide contribute computer time to the search for extraterrestrial intelligence, performing the largest computation ever.
Binary interception of Win32 functions
  • In Proceedings of the 3rd USENIX Windows NT Symposium,
  • 1999
Berkeley Open Infrastucture for Network Computing
  • Berkeley Open Infrastucture for Network Computing
The Open Group Base Specifications Issue 6 Edition. The IEEE and The Open Group
  • IEEE Std
  • 1003