Browse Prior Art Database

Method of Hooking Advanced Basic Input/Output System Functions for Personal Computers

IP.com Disclosure Number: IPCOM000106801D
Original Publication Date: 1993-Dec-01
Included in the Prior Art Database: 2005-Mar-21
Document File: 2 page(s) / 82K

Publishing Venue

IBM

Related People

Perlowin, JM: AUTHOR [+2]

Abstract

Described is an architectural implementation to provide a method of hooking advance basic input/output system (ABIOS) functions for personal computers (PCs) so that each individual function can be monitored.

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

Method of Hooking Advanced Basic Input/Output System Functions for Personal Computers

      Described is an architectural implementation to provide a
method of hooking advance basic input/output system (ABIOS) functions
for personal computers (PCs) so that each individual function can be
monitored.

      In prior art, there was no method available for hooking ABIOS
functions other than the through the normal ABIOS patch mechanisms.
Since a patch mechanism is performed during read only memory (ROM)
scan operations and during an operating system boot, it does not give
a generic method of accessing the patch code.  Therefore, the concept
described herein provides a method to hook ABIOS at the operating
system level so as to give application access to hooked ABIOS
functions for monitoring purposes.

      The method of hooking ABIOS functions has significant
advantages over the normal ABIOS patching techniques.  The following
are some of the attributes:

o   Allows application access to the patch code.

o   Allows dynamic hooking and un-hooking of desired ABIOS functions
    under program control.

o   Allows both pre and post filters to be installed for any desired
    device.

o   Is simpler to implement than a true ABIOS patch.

o   Is independent of machine type and number of ABIOS devices.

      The ABIOS architecture is structured such that each device has
a function transfer table (FTT).  In order to hook an ABIOS function,
the FTT must be modified.  In order to modify the FTT, the location
must be known and access to it must be available.  Operating system
programs, such as OS/2*, provide a method for device drivers to
circumvent the normal ABIOS by calling conventions and to call the
desired function directly.  In order to do this, the concept
described herein provides a means whereby the device driver has
access to its own FTT.  In addition, ABIOS functions require the
caller to pass the address of th...