What OS is good for SPARC64?

Recently, I received a SPARC64 machine (Sun Blade 100) as a gift. If you are not sure what is SPARC64, it is a CPU primary manufactured by Sun/Oracle. It is quite different than Intel x86 / AMD 64, so anything that is compiled to run on these two platforms will not work on SPARC64. Besides, Sun/Oracle is currently shifting toward to Intel now, which means the SPARC64 will become less popular in the long run. Since I don’t want to let my Sun Blade becomes a paper-weight / foot stool, I decide to explore some options on what I can do with it.

Notice that this list only includes some popular operating systems I’ve tested only. I am pretty sure that there are lots of more choices available.

If you don’t want to go through the entire list, here are some quick recommendations:
Good: FreeBSD, NetBSD, OpenBSD, OpenSolaris
Okay: Debian
Avoid: Fedora, Ubuntu

The following operating system are listed in alphabetically:

Debian Linux

Recommendation: Yes if you don’t care about the performance
Support Status: Active
Comment: Although Debian provides a 64-bit version, the applications are run in 32-bit mode (Source). It can not only cause performance issue because the application does not utilize the full power of the CPU. For example, a 32-bit application can only handle unsigned integer from 0 to 2^31-1 (2147483647).

Fedora Linux

Recommendation: No
Support Status: Seems Discontinued.
Comment: As of today, the latest version of Fedora is 15. However, the latest version for SPARC is 12/13. Seems like the support in this architecture is inactive.
Source: Architectures/SPARC

FreeBSD

Recommendation: Yes
Support Status: Active
Comment: The command freebsd-update is not supported in SPARC64. In the other words, you have to rebuild the kernel from scratch in order to upgrade the system to a newer version

NetBSD

Recommendation: Yes
Support Status: Active
Download: Here

OpenBSD

Recommendation: Yes
Support Status: Active

OpenIndiana

Recommendation: Yes
Support Status: Active

OpenSolaris

Recommendation: No
Support Status: Discontinued

Ubuntu Linux

Recommendation: No
Support Status: Inactive
Comment: Ubuntu already dropped support to SPARC64. Forget about it.
Source: Ubuntu drops support for ia64 and sparc

Our sponsors:

How to Install FreeBSD on Sun Blade 100

Recently, I received a Sun Blade 100 as a gift. After doing some research on which OS is the best for this machine, I decide to go with FreeBSD. So, my journey with Sun began here.

I only used Sun/Solaris in my engineering courses in college, I don’t have much experience with Sun hardware. I assumed that the experience should be similar – I was wrong.

So, here is what I have: A Sun Blade 100 connected with a regular USB PC keyboard. Note that Sun comes with its own keyboard, which has additional keys like STOP.

Anyway, after downloading the image of FreeBSD 8.1 Sparc64 and burning it into a DVD (You can burn it on any OS), I tried to boot the machine from DVD (Note that Sun Blade was release in 2002. You may need to verify that it is a DVD reader. You can replace the CD reader by any IDE DVD reader if needed.). And I received the following error messages:

Boot device: net  File and args:
Timeout waiting for ARP/RARP packet
Timeout waiting for ARP/RARP packet
Timeout waiting for ARP/RARP packet
Timeout waiting for ARP/RARP packet
Timeout waiting for ARP/RARP packet

Apparently, this machine does not know how to boot from CD/DVD automatically. After reading 20 posts, I finally got a solution:

If you have a Sun Keyboard:
1.) Push the power button to turn on the machine
2.) Pressing STOP and A key together

Otherwise:
1.) Push the power button to turn on the machine
2.) After the beeping sound, push the power button twice in a short time.

After trying it for few times, I finally got into the OpenBoot:

Aborting auto-boot sequence.
ok

So, I want to boot from CD:

boot cdrom

That’s it. The installation of FreeBSD on Sun is pretty much the same as on PC, except that the color of the installation menu looks a little bit weird.

If you experience any difficulties on booting from CD, make sure that both harddrive and DVD drive are jumpered to Cable Select, also you can verify the connections by running this command in the OpenBoot:

probe-ide

which will return something like:

Device 0 (Primary Master)
   ATA Mode: XXX
Device 1 (Primary Slave)
   Removeable ATAPI Model: YYY

Now you can install FreeBSD on your sparc64 machine!

Few things I’ve learned from running FreeBSD on Sun Machine (Sparc64)

  • Sun Blade 100 uses ECC (Error Correction Codes) memory. It doesn’t like the regular desktop memory.
  • Sun Blade 100 is old, the CPU speed is equivalent to Pentium II. It takes a long time to compile applications from ports. I recommend to install the applications using pkg_add first, and then run portmaster to update all apps. It will save you lots of time.
  • freebsd-update does not work on sparc64 machine. If you want to upgrade the FreeBSD system, you need to rebuild the kernel.
  • Sun Blade 100 is a heavy duty snail. For example, it can handle lots of inquires at the same time without crashing, but the processing speed is extremely slow. I don’t recommend using it for any applications that use more than 10% of CPU resource, e.g., Webserver (dynamic content), Database or Web Framework. I tried running all of my websites (including this blog) on Sun, which resulted terribly slow. My recommendations: Firewall, Router, Load Balancer.

That’s it! Have fun with Sun + FreeBSD.

–Derrick

Our sponsors: