1999 Linux Symposium

linux on parisc


1999 home

Linux on PA RISC: The Final Frontier

Alex deVries , The Puffin Group Inc.

Linux has been ported to a wide variety of CPUs and architectures, and the last CPU with a significant install base without Linux support is Hewlett Packard's PA RISC series.

The PA RISC is a RISC processor with a virtual address cache, nested interruptions, shadow registers, and segments.

There's a significant amount of this hardware in existence, since the product line extends back to 1986. There are 135 different machines, with a combination of about 7 different system busses, 3 of which are proprietary.

One thing that's simplifying the development is that HP machines have Processor Dependant Code (PDC) on all the machines, which offers a common interface to the hardware regardless of which machine. This means that console access is trivial, which is far simpler than other ports such as the Apple Macintosh.

There are some existing open source projects to draw resources from: the partially complete mkLinux port and OpenBSD. The native OS for PA RISC is HPUX.

There are two different CPUs that will be supported. The PA RISC 1.1 is a 32 bit CPU, and is found on machines manufactured in the 1990s mostly in uniprocessor machines. These are widely available, and so support it is the first goal for porting.

Later developments will include support for the PA RISC 2.0 CPUs, which are 64 bit processors found in many multiprocessor systems, with all systems being supported.

There are compatibility benefits in adopting an existing ELF implementation that exists in a system vendor's operating system. However, HP used the Spectrum Object Model (SOM) for their 32 bit versions of HPUX. In 64 bit HPUX, there is support for 64 bit ELF. Part of the project involves creating the first 32 bit version of ELF on PA RISC.

Development supported by HP was started in March of 1999.

By May of 1999, developers have cleaned up the existing 32 bit PA RISC development tools, binutils and egcs. Portions of the kernel have been completed, and the bootloader is operational. Device drivers for SCSI, ethernet, graphics and serial consoles remain to be addressed. After that, glibc and other userland applications can be ported.

© 2000 Linux Symposium.  All Rights Reserved.