Browse Prior Art Database

32-Bit Application Programming Interface for Managing Network Services

IP.com Disclosure Number: IPCOM000112624D
Original Publication Date: 1994-Jun-01
Included in the Prior Art Database: 2005-Mar-27
Document File: 2 page(s) / 60K

Publishing Venue

IBM

Related People

Callaway, JR: AUTHOR [+4]

Abstract

Disclosed is a 32-bit application programming interface for managing network services.

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

32-Bit Application Programming Interface for Managing Network Services

      Disclosed is a 32-bit application programming interface for
managing network services.

      In some Network Operating Systems (NOS), software applications
communicate with network services through the use of service
Application Programming Interfaces (APIs).  These fully 16-bit APIs
allow applications to control the operation of network services; for
example, they may stop a service, or query it for current status.

      The interface between applications and services is built using
the 16-bit signal facility of OS/2*.  This facility requires a
service to set up a 16-bit signal handler for communication purposes.
This presents problems for 32-bit services; large amounts of "thunk"
(translation) code must be written to handle the transition from
32-bit execution to 16-bit execution.  Thunk code severely degrades
performance.  In addition, 16-bit signal handlers are given last
priority in the new OS/2 signaling scheme, potentially allowing some
signals to be intercepted by 32-bit exception handlers and not passed
on.

      To solve this problem, a new set of fully 32-bit service APIs
were developed using a new mechanism for application-to-service
communication.  The APIs are defined as follows:

/* allow an application to operate on a service */
 APIRET Net32ServiceControl (PCHAR Server,
                             PCHAR Service,
                             ULONG Action,
                             PCHAR Buffer,
                             ULONG BufferLength);

/* allow an application to retrieve information about a service */
 APIRET Net32ServiceGetInfo (PCHAR Server,
                             PCHAR Service,
                             ULONG Level,
                             PCHAR Buffer,
                             ULONG BufferLength,
   ...