Today in Tedium: One of the nice things about many historic operating systems is that we’ve been able to dig into the legacy that was left behind to find the interesting details. Many of the UNIX-derivative operating systems are largely open-sourced today in one shade or another. The Berkeley Software Distribution, for example, gave birth to open-source options such as FreeBSD and OpenBSD. And, of course, Linux is Linux. But UNIX System V, a commercial version first developed by AT&T in 1983, remains the one branch of UNIX being driven by still-active commercial descendants—though, many of its branches have admittedly withered over the years. (Apologies to the Tru64 UNIX users in our audience. Hope your DEC Alpha workstation is still going strong.) There was one major free-software variant based on System V, Sun’s OpenSolaris, but it was closed off when Oracle bought Sun in 2010 and reverted back to closed Solaris. (Those open roots live on in the form of illumos, also known as OpenIndiana.) But what if there was still a path forward for keeping some of these old operating systems alive? Today’s Tedium, in a follow-up to a 2018 piece we wrote about Silicon Graphics, has a little news to share about a budding project of interest to UNIX nerds. Hold onto your hats, IRIX fans. — Ernie @ Tedium
Today’s GIF is a DNA render from the movie Jurassic Park. You might remember it from this scene.
Run a business? You can do better than a P.O. Box. Check out Stable, a virtual mailbox that can give you a permanent address worth keeping, while digitizing your mail so you’re not stuck with an analog process for your digital business. Sign up today and get 20% off in the first year.
Today’s Tedium is sponsored by Stable. Wanna run an ad like this? Check out our sponsorships page.
The name of the primary operating system actively developed by Silicon Graphics Inc. between 1988 and 1998, with support ending altogether in 2006. The operating system, a descendant of UNIX System V and fairly advanced for its time, is proprietary, but its codebase has largely remained static for the past 17 years, and even then, the final updates only were released to those with active support contracts with SGI.
Despite corporate disinterest, the SGI community is still staying alive
So the news we have to share, to get it out of the way: The SGI community is looking at strategies to revive the much-loved IRIX operating system.
For those familiar with Silicon Graphics, we hope that this news is met with joy. But I understand if the rest of you need an explainer, so let’s do this. Our still-worth-reading story on SGI’s community is a great start, but for the rest of you, here’s the gist: Despite the platform not being in active development for decades, Silicon Graphics’ famed MIPS-based machines—most notably the Onyx, Indy, and Octane series—have attracted an active community into the modern day, with collectors able to purchase the machines for a few hundred dollars on eBay and elsewhere, which sounds like a lot until you consider that the machines used to sell for five and six figures in 1990s money.
These machines, often used for 3D rendering tasks for films, video games, and scientific use cases, relied on IRIX—which, thanks to its use cases in Hollywood, frequently appeared on in blockbuster movies throughout the ’90s, most famously Jurassic Park. SGI eventually fell apart as a company—while founder Jim Clark would go on to co-found Netscape, the firm struggled to respond to the rise of Windows, Linux, and the x86 platform. (It notably had a cursed dalliance with the Intel Itanium architecture after moving on from the MIPS architecture.) SGI’s assets, after a bankruptcy and acquisition, eventually landed in the hands of HP Enterprise.
Notably, HP Enterprise hasn’t really done anything with SGI’s legacy assets since acquiring the company in 2016. By that point, IRIX was a distant corporate memory, and SGI was effectively a rebranded Rackable Systems.
But again, there’s that enthusiast community that still cares about this thing. And that community has taken steps to maintain IRIX to the best of their abilities since then.
One of those people who really cares is known as Kazuo Kuroi, who you might remember from my 2018 piece as Raion. A systems engineer and a familiar face at VCF East, Kuroi maintains the IRIX Network, which has become the primary home for the SGI community since a prior community, Nekochan, shut down five years ago.
The network came to life in 2017 in response to some downtime Nekochan was having, and soon became the permanent home for the community at large.
Losing a community of such vintage can have a deep impact on its culture, and much of my conversation with Kuroi in 2018 focused on the rebuilding of the SGI culture that had been lost after the platform was taken offline. Since then, the 29-year-old Kuroi has grown up with the site he founded.
“It’s been five years since Nekochan went down. And I’ve had a lot of growing up to do, to be honest,” he says. “When I started, I was kind of a little immature and a little naive as to what was going on. I’m free to admit that because we’re all human.”
While communities like this have often moved to online chat platforms, especially Discord, Kuroi emphasizes that forums of this nature still matter—especially when such communities represent institutional knowledge for highly complex devices that are well out of the mainstream at this juncture.
“I think that being a forum-based medium has really done a lot for forcing people to get interactive,” he says. “It’s a medium that is somewhat dying, I will admit, but I’m still trying to keep it alive.”
One of the things he’s working on, timed to the fifth anniversary of Nekochan’s shutdown, could help keep the spirit of IRIX alive for years to come.
To do that, the SGI community wants to bring IRIX back from the dead.
The amount that IRIX Network hopes to raise in an upcoming crowdfunding campaign to attempt to reverse-engineer the kernel of an important legacy version of IRIX, version 5.3, which is the last 32-bit version of the operating system and therefore capable of running on the widest variety of machines. (The last overall version of IRIX was 6.5.30, which Kuroi notes is significantly more complex.) The goal, at this juncture, will be to build a technical manual that can be eventually be used as the basis of a new open-source IRIX-derivative kernel, called IRIX-32, for emulation and driver development purposes, and any funds raised would go to developers taking part in the initiative, to pay for their work. On top of the $6,500 the team aims to raise through fundraising, it will also include donations from Kuroi himself, as well as financial contributions from companies that still rely on SGI hardware in professional settings.
The “clean room” aspirations for an IRIX update
To explain why it costs thousands of dollars to reverse engineer an OS like this, let’s talk about reverse engineering for a second.
You’ve most assuredly seen it in Hollywood movies or in shows like Halt and Catch Fire—the often painstaking process that’s necessary to reverse-engineer a piece of software or hardware in a clean-room environment, where code is disassembled by one team and built from scratch by another. It was an immensely time-consuming process in the early 1980s, when the early IBM PCs that were being reverse engineered had information measured in the kilobytes and megabytes.
A high-end workstation and operating system from the ’90s is obviously working with more complicated parts than just that. And unlike the IBM PC, which came with a detailed technical manual, IRIX is somewhat more of a black box to end users—while there are some code releases from the IRIX 4.0 era, later versions were not distributed in that way.
“IRIX 5.3 doesn’t have any source code leaks or anything like that out there,” Kuroi explained. “There’s nothing for us to really go on except we have some people who are disassembling the code and looking at it and then writing out what it does. And then the other people are going to be going in and doing this.”
Fortunately, the tools have gotten better. You might remember a few years ago when people started reverse-engineering Nintendo 64 games to put them on other platforms or improve their capabilities, leading to odd situations like Mario 64 speed running on the Playstation 2. Although generally “dirty room” reverse engineering efforts that occurred with direct access to code, they emerged thanks to an NSA-developed tool, Ghidra, which makes software-based reverse engineering easier.
Although the goal is to produce a “clean room” kernel rather than something dirty, IRIX is a good candidate for this kind of use case. As I’ve noted above, IRIX has not received a real update in more than 15 years, and a big part of that is because of its roots as a proprietary operating system on an obsolete platform. (That said, some important parts of that operating system, especially the XFS file system, were ported to Linux by SGI under an open-source license.) The systems, while not directly comparable to a modern machine, are still highly capable in the modern day—they feature a usable UNIX interface that looks good even by today’s standards, high-quality graphics capabilities, and are capable of holding RAM at levels modern users would be perfectly happy with in a modern machine, despite these machines being more than 30 years old in some cases.
For other legacy systems, like Classic MacOS or Amiga, emulation has been more of an option. But SGI’s complexity even as a legacy platform has largely left it on real hardware, even though a consumer-focused derivative of the SGI platform, the Nintendo 64, is itself widely emulated. Though it is now possible to emulate an SGI, it even now only runs at a fraction of the speed of a real machine.
And there are still some examples of IRIX machines being used in the wild. For the past eight years, for example, Kuroi has consulted with an oceanography company that has a large legacy interest in the SGI ecosystem. The company, which analyzes ocean floors using sonar and renders the images using a trio of Origin 2000 machines, spent millions of dollars on these systems on the ’90s. The legacy is hard to shake, in part because their original developer died many years ago and replacing the company’s technology would require a complete rewrite of its custom code.
“It’s so ingrained in IRIX, that they can’t migrate to Linux or Windows or Mac OS,” Kuroi explained. “It’s just not feasible for them to do. So they’ve been keeping their clusters around.”
So there is some business interest in getting updates to this operating system, if possible, but because of the complexity of the task, the community is attempting to digest it in chunks. To put it another way, $6,500 is a lot of money, but at this point, it’s only going towards the goal of technical documentation that might someday lead to a new kernel.
Why just a kernel? “Because reverse engineering the entire OS would probably cost in excess of $50,000.” Kuroi says. “And that’s just something that I don’t feel comfortable asking our small community about, even though some of our community probably would be happy to, if they have the money. It’s just not the place to do that.”
There are some real questions about legality that have been raised in response to the announcement, though Kuroi has made clear he has been in touch with lawyers about the nature of the project beforehand. (One concern raised, effectively, is, “Can you reverse engineer software if you weren’t the original owner?” Given the fact that much of the community has likely acquired machines and software second-hand, it’s a fair ask.) While HPE has taken a very hands-off approach to the SGI community thus far, there’s no reason to think they couldn’t switch gears and take a more Nintendo-like approach at some point.
Per Kuroi, that hands-off approach seems to be HPE’s M.O. with SGI—he has remained in contact with HPE employees at various times over the years to ensure that what they have been doing is above-board—but that means we shouldn’t expect a source-code release from the company, either.
“IRIX has such little economic importance to them that it’s not even on their radar,” he says.
Will that hold up if a project like this gets attention? We’ll have to wait and see.
When it comes to vintage computers, gray areas abound.
Because of the constant desire to make latest-and-greatest machines that meet the needs of large numbers of people, the focus is not on the past, or the value of what that past has to offer.
Technical debt is ignored, or pushed off to the side, not treated like a real problem. We’re seeing this right now as Apple shuts off support to Macs made before 2017 and Microsoft tries limiting Windows 11 to only the most recent generations of computers. But that was still someone’s money that was taken—and they should still be allowed to use the thing they bought, especially if they paid seven figures for that.
There may be more oceanographers reliant on custom-coded SGI machines than we think. And when we lock the door on this old hardware and treat it as if it doesn’t deserve any further updates, it ultimately leads to some hard problems.
Obviously, a lot of people in the enthusiast community use SGIs for enthusiast reasons, but there are real concerns of technical debt that emerge with a platform like this just because of the fact that replacing this hardware is not trivial and requires massive investments if you run a large business. (For example, full disk sets of IRIX software sell on eBay for hundreds or even thousands of dollars, well above the price of the actual hardware in some cases.)
Kuroi notes that in some cases, the reverse engineering effort won’t benefit some of the companies still maintaining these giant tanks of computers. But it gets the conversation going, and that’s a lot better than radio silence.
“IRIX 5.3 is not usable by the higher end systems—the Fuel, the Tezro, the Origin 2000 clusters, none of them are going to directly benefit from it,” Kuroi says. “But this is kind of the first step—gauging understanding and interest and making use of that, so it’s not a high investment barrier for anybody.”
But if all goes well, it could be a major turning point for the community as a whole—with the eventual goal of reverse engineering the later 6.5.22 version of IRIX. It could lead to new drivers, and possibly even make it possible to emulate a full system at decent speed on a modern computer, ensuring that if the already limited supply of parts disappear, there’s room for a Plan B.
There’s something to admire about this community’s tenacity.
» Check out today’s sponsor: Fix your startup’s snail mail problems once and for all—get a virtual mailbox. Check out today’s sponsor Stable to learn more.