Sunday, 27 June 2021

HP Tru64 UNIX on AlphaVM-Free - System Information

AlphaVM-Free

A commercial Alpha AXP system emulator from EmuVM, the AlphaVM family of system emulators provide a means to emulate members of the Tsunami family of Alpha based systems from Compaq and HP. Mainly targeted at providing a migration option for existing Alpha systems running OpenVMS or Tru64 UNIX, allowing existing applications to be moved to newer, and potentially more efficient, hardware. A free version of AlphaVM (AlphaVM-Free) was offered as an evaluation and hobbyist product complementing the supported commercial offering (AlphaVM-Pro). Apparently due to licence abuse (see The sad state of Alpha emulators (for OpenVMS) - Raymii.org) the free version has been since replaced with a low cost option (AlphaVM-Basic).

To have a look at the emulator's capabilities and how well it manages to run HP Tru64 UNIX, I've setup a legacy AlphaVM-Free system in a Debian Linux 10 (buster) virtual machine and installed HP Tru64 UNIX 5.1B. Since all versions of AlphaVM are related the other versions will show similar behavior, although there is some additional flexibility with tuning the emulation available in the commercial product.

Note that AlphaVM requires the CMPXCHG16B instruction to be available on the host. In my case this meant I had to update the VirtualBox configuration for the Debian Linux 10 host virtual machine to allow access to this instruction (see virtualbox.org: View topic - hot to enable CMPXCHG16B instruction).

Friday, 25 June 2021

Linux for SPARC64 on QEMU sun4u - System Information

Linux for SPARC

The SPARC processor (Wikipedia) was the third processor to be supported in the Linux kernel (after x86 and Alpha) back in the mid 1990s. In his 1997 M.Sc. thesis: "Linux: a Portable Operating System", Linus Torvalds discussed the integration of Alpha and SPARC into the Linux kernel and the challenges of developing a portable operating system.

Looking for early Linux distributions supporting SPARC finds:

  • RedHat Linux 4.0 released 3-Oct-1996: 2.0.18 kernel supporting sun4c and sun4m.
  • RedHat Linux 6.0 released 26-Apr-1999: 2.2.5 kernel supporting sun4c, sun4m and sun4u
  • Debian Linux 2.1 (slink) released 9-May-1999: 2.0.35 kernel for sun4c and sun4m, and 2.2.1 kernel for sun4u

These Linux distributions were targeted at Sun's SPARC systems and did not support SPARC systems from other vendors, unless they were clones of Sun's systems.

In 1987 Sun Microsystems introduced its first 32-bit based SPARC systems, and Sun introduced its first 64-bit SPARC (UltraSparc) systems in late 1995 with the Ultra 1 and Ultra 2 workstations and their server variants, the Ultra Server 1 and Ultra Server 2.

The 64-bit SPARC specification had been released by SPARC International in 1993 and HAL Computer Systems (Wikipedia), a subsidiary of Fujitsu, brought the first SPARC64 workstations to market in 1995, with the release of the HALstation 300 series systems.

Monday, 21 June 2021

Linux for Alpha on AlphaVM-Free - System Information

AlphaVM-Free & Alpha Linux

The AlphaVM family of system emulators from EmuVM, provide a means to emulate members of the Tsunami family of Alpha based systems from Compaq and HP. Mainly targeted at providing a migration option for existing Alpha systems running OpenVMS or Tru64 UNIX, this emulator is also capable of running Linux for Alpha.

The Alpha (Wikipedia) was the first non Intel x86 platform to have support integrated into the Linux kernel back in the mid 1990s. Linus Torvalds discusses the integration of Alpha and SPARC into Linux and the challenges of developing a portable operating system in his 1997 M.Sc. thesis: "Linux: a Portable Operating System". While the retirement of Alpha systems by Compaq and HP means the remaining hardware is aging, and Linux has been ported to many more systems since, there are still some use cases for Linux on Alpha. But moving away from potentially unreliable and increasingly uncommon hardware has become very desirable. One option for accomplishing this is using a system emulator.

The AlphaVM system emulator is one such possibility and a free version of AlphaVM (AlphaVM-Free) was offered as an evaluation and hobbyist product. This complemented the supported commercial offering (AlphaVM-Pro) which provides increased capabilities and full support. Apparently due to licence abuse (see The sad state of Alpha emulators (for OpenVMS) - Raymii.org) the free version has been since replaced with a low cost option (AlphaVM-Basic).

To have a look at the emulator's capabilities and how well it manages to run Linux, I've setup a legacy AlphaVM-Free system in a Debian Linux 10 (buster) virtual machine and installed Debian Linux 5 (lenny) from the distribution DVD.

Note that AlphaVM requires the CMPXCHG16B instruction to be available on the host. In my case this meant I had to update the VirtualBox configuration for the Debian Linux 10 host virtual machine to allow access to this instruction (see virtualbox.org: View topic - hot to enable CMPXCHG16B instruction).

Monday, 14 June 2021

HP Tru64 on FreeAXP - System Information

FreeAXP

Migration Specialties International, Inc. provide a services for the maintenance and migration of OpenVMS and Tru64 operating system environments. Part of their offering uses system emulation to provide an option to migrate from aging hardware on to modern systems. As an evaluation and hobbyist tool, they also provide a free version of their system emulator system: FreeAXP which emulates a DEC Alpha (AXP) based AlphaServer 400 with the specification:

  • RAM: 32MB to 128MB
  • Up to 7 SCSI disks
  • Up to 2 network interfaces
  • 2 serial ports (used for system console)
  • Capable of running OpenVMS or Tru64

So having downloaded and installed the emulator, I've configured a emulated system for testing with Tru64:

  • CPU: a DECchip 21064 (EV4) Alpha processor
  • RAM: 128 MB
  • SCSI controller: KZPAA (53c810) - narrow SCSI, max. 7 devices
    • Id 0: RZ40L SCSI Hard disk - 8 GB
    • Id 6: RRD42 SCSI CD-ROM drive - mapped to system optical drive
  • Network interface: DE500 (21143)

FreeAXP uses a version of the SRM firmware from the AlphaServer 400, which can tell us a bit about the system before we install an operating system.

Monday, 7 June 2021

Linux for Alpha on QEMU - System Information

Linux for Alpha

A long time ago, the Digital Equipment Corporation's (DEC) Alpha processor aka. Alpha AXP (Wikipedia) looked to be the future. It dominated the super computer listings, spawned a number of workstation, server and OEM systems, and there was even a MS Windows port. In those heady days it also happened to find itself the target of the first non-x86 port of the Linux kernel. A porting effort at DEC was described by Jim Paradis in a series of Linux Journal Articles (1, 2, 3) back in 1995, and Linus Torvalds in his 1997 M.Sc. thesis: "Linux: a Portable Operating System", discusses the portability of the Linux kernel using the challenges encountered in adding support for Alpha and SPARC as examples.

The Alpha ultimately lost out to the joint HP & Intel Itanium business case when Compaq bought DEC in 1998, with the Alpha IP being sold to Intel in 2001. Compaq merged with HP in 2002, and HP continued marketing Alpha based systems until 2007 and supported the hardware until 2012.

As such there is a desire to replicate Alpha environments on more modern hardware. For some this is a way to run applications that were built for Alpha, and may even be exclusive to that platform. For others its a way to explore the behaviours of older systems and maybe learn from the differences. The QEMU system emulator provides an emulation of an Alpha based system capable of running Linux. Currently there are few Linux distributions that support Alpha...