Browse Prior Art Database

Tracing the Exported Entry Points in an OS/2 Dynamic Link Library

IP.com Disclosure Number: IPCOM000102421D
Original Publication Date: 1990-Nov-01
Included in the Prior Art Database: 2005-Mar-17
Document File: 2 page(s) / 61K

Publishing Venue

IBM

Related People

Weeks, RC: AUTHOR

Abstract

A method is described for intercepting calls to exported entry points in an OS/2* dynamic link library (DLL) for the purpose of recording the sequence of calls to such entry points. This method enhances problem determination and performance measurement without requiring any source code changes to the DLL.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 63% of the total text.

Tracing the Exported Entry Points in an OS/2 Dynamic Link Library

       A method is described for intercepting calls to exported
entry points in an OS/2* dynamic link library (DLL) for the purpose
of recording the sequence of calls to such entry points.  This method
enhances problem determination and performance measurement without
requiring any source code changes to the DLL.

      To intercept calls to the exported entry points in an OS/2 DLL
a second DLL must be created which contains every entry point in the
original DLL.  For example, consider a DLL named IBMAPPL.DLL which
contains 3 exported entry points: Init, Process and Shutdown.  A
second DLL named MYTRACE.DLL is created with precisely the same 3
exported entry points: Init, Process and Shutdown.  The 3 entry
points in MYTRACE use precisely the same input parameter list used by
IBMAPPL.  Each time any one of the 3 MYTRACE functions is invoked a
generic tracing utility is invoked, to trace the start of the
requested function.  MYTRACE then calls its counterpart entry point
in IBMAPPL and passes the input parameters on to the IBMAPPL entry
point.  When the call to the IBMAPPL function returns to MYTRACE the
generic tracing utility is called again to trace the completion of
the requested function and any other pertinent information, such as
return code, returned data, etc.  Refer to the figure for a pictorial
representation of the relationship between the calling application,
MYTRACE and IBMAPPL.

 ...