MPE/iX 5.0 Documentation
Migration Process Guide
System Overview
Before describing the options and issues involved in migrating to a 900
Series HP 3000 Computer System, it is important to understand the
hardware and software components of the system.
The 900 Series HP 3000 family is based on HP Precision Architecture
(HP-PA), an architecture founded on the concepts of RISC (Reduced
Instruction Set Computer). The operating system for the 900 Series
family is MPE/iX (MPE with extended large addressing).
HP Precision Architecture
HP-PA (Hewlett-Packard Precision Architecture) combines RISC principles
with additional features to provide a flexible, expandable architecture
and to further increase performance. Features include extended
addressing (up to 64-bit virtual addressing), support for coprocessors
and multiprocessors, and a memory-mapped I/O system.
RISC instructions are implemented directly in hardware to eliminate the
system overhead associated with the microcode of conventional systems.
Pipelining is enhanced by the uniformity of the HP-PA instructions.
Improved performance also results from the memory hierarchy design of the
new architecture. For a more detailed discussion of HP-PA, refer to the
General Information Manual (5954-7418).
MPE/iX
MPE/iX is the operating system that runs on 900 Series HP 3000 computer
systems. Improvements in hardware allow improvements in the operating
system. Along with enhanced functionality and ease of use, it provides
greater performance and capacity through a virtually addressed file
system and higher availability of data.
MPE/iX is a superset of MPE V/E, the operating system that runs on the
Series 37 through Series 70 HP 3000 computers. Although MPE/iX offers
users a superset of MPE V/E features, some incompatibilities exist due to
fundamental differences between the systems software and hardware.
MPE/iX provides two environments (modes) for program execution:
Compatibility Mode (CM) and Native Mode (NM). Program execution is not
restricted to operating entirely in CM or NM; a program operating in one
mode can call procedures that operate in the other. This switching
between CM and NM is called mixed-mode operation.
An application or program executes in CM or NM with no noticeable
differences to the user. Switching during mixed-mode operation is also
transparent to the user.
Compatibility Mode.
The CM environment emulates MPE V/E-based machine instructions on a 900
Series HP 3000 computer. This operating mode provides object code
compatibility between MPE V/E-based systems and MPE/iX-based HP-PA
machines; this means that programs that run on MPE V/E-based systems can
run on 900 Series HP 3000 computers.
CM uses an emulator which functions as an object code interpreter. At
run time, the emulator translates each MPE V/E machine instruction into a
functionally equivalent sequence of HP-PA machine instructions. MPE V/E
programs restored onto MPE/iX-based systems will run transparently under
the emulator.
The MPE/iX environment also supports the translation of MPE V/E machine
instructions through the Object Code Translator (OCT), a system utility.
OCT accepts an MPE V/E program as input, performs an optimized
translation of the object code into HP-PA machine instructions, and
appends the translation to the end of the MPE V/E program.
If you run MPE V/E programs on MPE/iX, you will get better performance
using OCT than you will using the emulator. With the emulator,
instructions have to be fetched and decoded each time the program is run.
You can cut overhead significantly by directly executing object code that
OCT has already translated and appended to the program file.
The OCT translated file saves both the original program and the
translation. This means the resulting file can be executed on both MPE
V/E-based and MPE/iX-based systems. It is important to note, however,
that it needs more disk space than the original file.
For either emulated or translated execution, MPE/iX preserves MPE V/E
program and data structures and allows access to most MPE V/E callable
intrinsics. The application is still subject to the same addressing
limitations found on the MPE V/E-based HP 3000 computers.
Native Mode.
NM is the natural operating mode of the 900 Series HP 3000 computer. NM
allows users to utilize the features that the 900 Series HP 3000 offers,
including higher performance and the expanded addressing capabilities of
HP-PA. Programs developed and compiled with MPE/iX NM compilers
automatically run in NM. Programs developed on MPE V/E-based systems need
to be recompiled with the MPE/iX version of compilers in order to run in
NM. The ability to recompile MPE V/E applications with MPE/iX compilers
provides source code compatibility between the two systems.
Mixed Mode.
MPE/iX uses the Switch subsystem to operate mixed-mode applications,
applications that run in both CM and NM. Switch allows programs executing
in NM to call procedures which reside in CM Segmented Libraries (SLs).
Switch also allows CM programs to call procedures located in NM
Executable Libraries (XLs).
The Switch subsystem resolves the differences between NM and CM execution
through a set of intrinsics that provide mixed-mode execution access.
The switching is transparent to the user.
Because MPE/iX can mix modes of execution, applications to be migrated in
phases, using CM as an intermediate step between MPE V/E and NM.
Phased Migration.
You can move MPE V/E programs and data to NM over a period of time, using
CM as an intermediate step. Moving everything to CM first is convenient
in two ways. First, moving MPE V/E files to CM gives you immediate
productivity on the 900 Series HP 3000 family; your applications work
right away with little or no modification. Also, you may not be able to
move files to NM quickly or easily because of such things as the size of
applications, because you have object code but the original source code
is lost, or because of language implementation differences.
You can recompile some parts to NM and leave others in CM, executing in
mixed mode. MPE/iX uses the Switch subsystem moves between modes of
execution, so it is an important part of phased migrations.
You can migrate database applications in phases, moving code and data
separately. Move data directly to NM. Move code to CM; you can use it
immediately, because MPE V object code and source code are compatible
with CM. Recompile and move the code to NM part-by-part, in phases.
Mixed mode operations will switch between NM and CM for you.
Figure 2-1 shows a phased migration.
Figure 2-1. Summary of Phased Migration
MPE/iX 5.0 Documentation