Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Application Migration From a 16-Bit Segmented OS/2 System to a 32-Bit Non-Segmented OS/2 System

IP.com Disclosure Number: IPCOM000121727D
Original Publication Date: 1991-Sep-01
Included in the Prior Art Database: 2005-Apr-03
Document File: 6 page(s) / 260K

Publishing Venue

IBM

Related People

Kogan, MS: AUTHOR

Abstract

Described is a programming method to facilitate the migration of 16-bit segmented operating system/2 (OS/2*) applications and subsystems to 32-bit non-segmented OS/2 system environments. The techniques discussed are the system libraries, file strategy and language tools to support the migration. The concept is unique in that an application does not require complete conversion to 32 bits in one pass, but migration is accomplished to 32 bits while continuing to be testable.

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

Application Migration From a 16-Bit Segmented OS/2 System to a 32-Bit
Non-Segmented OS/2 System

      Described is a programming method to facilitate the
migration of 16-bit segmented operating system/2 (OS/2*) applications
and subsystems to 32-bit non-segmented OS/2 system environments.  The
techniques discussed are the system libraries, file strategy and
language tools to support the migration.  The concept is unique in
that an application does not require complete conversion to 32 bits
in one pass, but migration is accomplished to 32 bits while
continuing to be testable.

      Typically, it is desirable to have the capability of migrating
applications piece by piece to the 32-bit model so that applications
do not undergo a period of time when they are broken up.  The concept
described herein provides migration applications and subsystems to
the 32-bit model and 32-bit application programming interfaces (APIs)
as smooth as possible.  The concept describes the tools environment
used by an application or subsystem programmer when migrating to the
&os332.  programming model.  The tools for 32-bit OS/2 include the
following:
     - 32-bit C Compiler
     - 32-bit C Runtime Library
     - 32-bit Linker
     - OS/2 API Include Files
     - OS/2 API Library
The following list addresses the various application (app) types:
     - Pure 16-bit app - An OS/2 1.X binary app that uses the 16-bit
EXE form.
     - Mixed 16-bit app - An OS/2 1.X app that has been recompiled
with the C compiler with the /G2 switch, uses 16-bit C runtime but
with a linker, therefore, the 32-bit extension (EXE) format. This
class of app is 16-bit, but may have 32-bit API calls.
     - Mixed 32-bit app - An app that is compiled with the C compiler
with the /G3 switch, uses 32-bit C runtime and is linked to the
linker producing a 32-bit EXE image.  This class is 32-bit, but may
have calls to 16-bit APIs.
     - Pure 32-bit app - Same as a mixed 32-bit app, but makes no
16-bit API calls.

      The pure 16-bit app can be executed on any OS/2 system. The
other three variants will not run on an OS/2 1.X system. The
following details the specific app models.
First, a review of the four app types:
   1. Pure 16-bit apps have the following characteristics: a) the
16-bit OS/2 apps are written in 16-bit C; b) compiled with a 16-bit C
compiler; c) uses 16-bit C runtime; d) may be a
small/medium/large/huge model; e) uses 16-bit OS/2 API; f) uses
16-bit OS2.H include file; g) linked with 16-bit linker; and h) has
the 16-bit EXE format.
   2. Mixed 16-bit apps have the following characteristics: a)
written in 16-bit C; b) compiled with 32-bit C compiler using /G2; c)
uses 16-bit C runtime; d) may be a small/ medium/large/huge model; e)
uses 16-bit OS/2 API; f) may use 32-bit OS/2 API; g) uses 16-bit
OS2.H include file; h) linked with a version of 16-bit OS2.LIB called
OS216.LIB; i) linked with 32-bit linker; and j) has the 32-bit...