VAX to Itanium Migrations

For organizations using applications under OpenVMS on VAX, and planning to move to Itanium family based processors, there are basically two options: A binary translation, or a native migration.

A binary translation in two steps using the tools "OMSVA(former DECmigrate)" and "IPF Binary Translator (OMSAI)" must be executed in cases where the application's source code is no more available. In cases where the source code is still available, a native migration is the more preferable option, allowing for future expansion of the application and ease of maintenance. Given the high degree of application level compatibility of OpenVMS on different platforms, a native migration should be relatively simple and inexpensive. However, a migration will need some other factors to be taken into consideration.

The following overview can be used as a decision support matrix:

 BINARY TRANSLATION NATIVE MIGRATION
General
Allows the translation of executable images and sharable images from OpenVMS/VAX to OpenVMS/Alpha and from OpenVMS/Alpha to OpenVMS/Itanium.
The original application is completely ported to the target platform and becomes a native application on OpenVMS/Itanium. Partial redesign, optimization, language conversion, middleware replacement, etc. can be applied as needed.

Requirements and Limitations

 BINARY TRANSLATION NATIVE MIGRATION
Application's source code
Not needed.
Required.
Application's Programming Language
Must be supported by the binary translator on the target platform.
Can be automatically converted into a modern programming language. Please see SRI's programming language conversion services
Layered products and Middleware used by the application
Must be present on the target platform.
A partial re-design can be applied to modernize the application.
Special hardware used by the application
Must be supported by the target platform.
Partial re-design can be applied to eliminate the necessity of special hardware.
Application's mode of code
Must contain User Mode code, only.
Irrelevant.
Other requirements and limitations
Please see the documentations of the IPF Binary Translator (OMSAI) and the I64 Application Readiness Test (I64ART)
None

Migration Process / Duration / Cost

 BINARY TRANSLATION NATIVE MIGRATION
Migration process organization
The application owner with experience in OpenVMS and DEC/HP's layered products should be able to perform the binary translation. Support or Consulting by SRI is available upon request.
Software Resources International will be able to extend a fixed price, fixed delivery date quotation for application migration. Please see SRI's Application Migration Services.
Migration process duration
Each executable or shareable image may take 1 to 2 days to be translated.
Project duration and schedule will depend on the size and complexity of the application. Will be defined during the project assessment phase.
Efforts & Cost
OMSAI may be available for free (not yet announced by HP). Support or Consulting by SRI is available upon request.
Project cost will depend on the size and complexity of the application. Will be defined during the project assessment phase.

Conclusions

 BINARY TRANSLATION NATIVE MIGRATION
Pro
  • Fastest and most inexpensive solution
  • Does not need the source code
  • Produces native application on the target platform.
  • Minimum limitations.
  • Almost every application can be migrated.
  • Partial redesign during migration allows for replacing the programming language, middleware, user interface and design.
  • Extends the life cycle of the application.
  • Further development and maintenance on modern target platform.
  • Gives a performance boost
Contra
  • Some serious limitations apply, like availability of older languages on the target platform
  • User-mode applications, only
  • Does not allow for future enhancements on target platform
  • Might impact performance
  • Not all applications will be binary translateable. Please use I64ART to assess your applications's translateability.
  • May take longer to implement
  • Source code needed
Suitable for
  • Stand-alone, user-mode applications
  • Large and complex applications, developed in more than one programming language, and using layered products