Compaq: FreePort Express Translating and Porting Code

United States

| About AMT

Migration Tools
FX!32
FreePort Express
Download
Quick Start
User's Guide
White Papers
DECmigrate

| Performance Tools
| Documentation & White Papers

Translating and Porting Code

Porting source code and translating executables are two ways you can migrate SunOS SPARC applications to Digital UNIX. You can also combine the two methods to stage the migration, depending on your application and system requirements. Perhaps you have source code for some applications but not for others. Perhaps you are introducing Alpha systems gradually onto your site. Perhaps you are planning to use SPARC machines as servers for Alpha systems or vice versa.

What are the requirements for translating and porting to Digital UNIX? Knowing those requirements will help you understand how to create a mixed 64-bit/32-bit, little-endian/big-endian environment as you start moving your SunOS SPARC applications to Digital UNIX.

Translatable Code Requirements

With FreePort Express, you can move SunOS applications to Digital UNIX immediately, usually with no loss of performance. The FreePort Express translator can convert most nonprivileged user-mode executables that run on SunOS Version 4.1.x (Solaris Version 1.x), including static and dynamic SunOS executables and SunOS shared libraries. Programs that use Xview, Open Look, Motif, and X11-based window managers all fall into this category.

You cannot translate a SunOS executable that

- Uses privileged instructions or system calls
- Is a device driver
- Uses SunView
- Depends on specific SunOS internal structures
- Depends on system specific file formats

See the SunOS to DEC OSF/1 Porting Guide for information about porting these kinds of executables.

To run translated executables, Digital UNIX activates a run-time environment that automatically compensates for the differences between the 64-bit/32-bit, big-endian/little-endian architectures. This means that you can run a translated application on Digital UNIX while you port the SunOS source code.

Portable Code Requirements

Because both Digital UNIX and SunOS are BSD UNIX systems, porting can be as simple as recompiling the source code. (Digital UNIX also supports System V and the OSF Mach kernel.). If you need to modify the source code to make it portable, it's usually for one of the following reasons:

- The code makes assumptions about byte ordering in binary arithmetic values
- The code is sensitive to the change from a 32-bit to a 64-bit environment
- The code makes use of operating system extensions

If one or more of these reasons prevents you from simply recompiling, you must modify the source code and translate the applications if you need them to run immediately on Digital UNIX.

See also

For detailed information about modifying your source code to adapt it to the Alpha architecture, see the DEC OSF/1 SunOS to DEC OSF/1 Porting Guide, which is part of the FreePort Express kit.

If you have questions about FreePort Express, send email to fpx-info@scrugs.lkg.dec.com.

| Click to send feedback

privacy and legal statement