Browse Prior Art Database

Multiple Wordsize Interface Procedure

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

Publishing Venue

IBM

Related People

Anderson, B: AUTHOR [+3]

Abstract

Disclosed is a process by which OS/2* 16 bit data can be converted to 32 bit data without using the thunk function.

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

Multiple Wordsize Interface Procedure

      Disclosed is a process by which OS/2* 16 bit data can be
converted to 32 bit data without using the thunk function.

      OS/2 V1 is a 16-bit operating system while OS/2 V2 introduced
32-bit addressing for the PC.  As new functions were delivered in
OS/2 V2, existing applications were limited as to their use because
these applications were written for a 16-bit operating system.  The
usual solution to this problem is a process known as thunking which
converts a 16 bit pointer to a 32 bit pointer.  Pointers may also be
un-thunked, converting a 32 bit pointer to a 16 bit pointer.  The
problem with this approach is that thunking is a process that may not
always work depending on the address being converted.  Un-thunking is
prone to failure if the address returned causes the data to lie
across a 16 bit storage boundary.  Addressing data on the other side
of the boundary will cause a TRAP.

      Multiple Wordsize Interface Procedure (MWIP) provides a
methodology for converting 16 bit data areas to 32 bit data areas and
32 bit data areas to 16 bit data areas.  This function is provided
through the use of pipes.  MWIP has two interfaces, both 16 bit and
32 bit, that flow through to a data router.  A 16 bit application
calls the 16 bit interface and the 32 bit application calls the 32
bit interface.  The data router allows some number of pipes between
itself the MWIP program interface.  When an application calls th...