Port to OS/390 mainframe USS?

Ian Pilcher ian.pilcher at home.com
Wed Mar 21 07:05:30 CST 2001


James.Robinson at crowley.com wrote:
> 
> Will there be a port of WINE to OS/390 mainframe USS?
> LINUX runs fine under USS, so it would seem that WINE should run there as
> well.
> Has anyone done this yet?
> 

Linux does not run under USS.  USS (Unix System Services) is an
implementation of the Unix 95 (Unix 98?) API set on top of MVS (where it
is known as Open Edition), OS/390, and now z/OS.  USS is a prerequisite
for the OS/390 Java Virtual Machine, WebSphere Application Server, and
Lotus Domino among others.

In theory, USS also allows Unix applications to be easily recompiled for
OS/390.  The reality is that most applications of interest use non-
standard APIs (be they Solaris, AIX, HP-UX, etc.); the ASCII to EBCDIC
conversion also causes a lot of problems.

"Linux/390", on the other hand, is just the Linux kernel source compiled
for the S/390 architecture--the same way it might be compiled for Alpha,
UltraSPARC, PowerPC, MIPS, IA64, etc.  (You do of course need a compiler
that supports the S/390 instruction set; gcc does now.)  "Linux/390" can
be installed by itself on a S/390, in a LPAR, or as a VM guest.  It uses
the ASCII character set, although it does do ASCII to EBCDIC conversion
for the hardware console.

Wine provides a PE (Portable Executable--the Windows executable format) 
program loader and a set of libraries that implement some of the Win32
API.  This allows some Windows binaries to run unmodified on x86 *ix
operating systems.  (I suppose it might be theoretically possible to run
an NT/Alpha executable on Linux/Alpha, but I don't know if anyone's ever
tried.)  Since Wine doesn't emulate the Intel processor, you can't use
it to run Intel binaries on a S/390.  (You might be able to use Bochs,
however.)

Wine does have another personality, known as Winelib, that allows the
source code for Windows applications to be recompiled as "pseudo-native"
*ix applications.  Instead of a Windows PE executable linked to Windows
DLLs, you end up with an ELF executable linked to the Wine shared
libraries.  This can be used to port Windows programs to non-Intel
architectures, although byte order and word size can be issues.  So if
you have the source code to your Windows application, you may be able to
get it running on "Linux/390"--41,000 times under VM!

-- 
========================================================================
Ian Pilcher                                         ian.pilcher at home.com
========================================================================




More information about the wine-devel mailing list