Operating Systems: Past, Present, and Future

1998: Once upon a time there were no computers.

We’ve come a long way, baby!

The first computers were pretty primitive by any standard. There was no software – you had to wire the computer for its intended task. Then came neat things like software on punch cards, paper tape, and eventually hard drives.

On the earliest computers, it was enough to do one task at a time. Compared with manual calculators or manual methods, computers were amazingly fast.

It was in this era that someone speculated that the whole world might need as many as five computers, one per continent.

But computers went beyond research projects and into the workplace. They cost a fortune to own and operate, so programmers devised operating systems that allowed them to do more than one thing at a time. Thus time sharing was invented. This is what we now call a multi-user operating system with multitasking.

And to generate income, businesses would sell time on their computers to other businesses. Because of this and because of the huge hardware investment, it was important that the computer run continually, so the operating system had to be robust. One goal was to design the OS so the computer wouldn’t crash when one program did; today we call that protected memory.

Computers got smaller, faster, and less expensive. Operating systems began to evolve, usually one per computer platform. Each system was unique.

Then came Unix. Designed hand-in-hand with the C programming language, Unix was designed to be transportable across hardware platforms. All one needed to port Unix to a new platform was a Tiny C compiler, which could generate a full C compiler, which could create Unix. (C can be viewed as a meta-machine language, a language only about one step removed from working in assembler.)

A good Unix implementation needed a lot of memory and storage space. It relied on virtual memory and readily accessible libraries.

Personal Computers

Apple II systemBut something came along to completely change the face of computing: personal computers. Instead of having a huge computer that you had to share with others, an Apple II, Commodore PET, or TRS-80 gave you a whole computer for yourself. No time sharing. No multitasking. No protected memory. (There wasn’t enough memory to consider doing such things!)

IBM PCComputers evolved. CP/M became the first standard operating system for personal computers, running on most 8080- or Z80-based models. MS-DOS grew from the CP/M model, providing a single-user, single-tasking operating system for the IBM Personal Computer and a host of clones. Although a multi-user version of CP/M-86 was available for these PCs, it never took off.

The Macintosh was also designed using the single-tasking model. There were primitive program switchers for the PCs and for the Fat Mac, but it was a while before multitasking become common.

Today the Mac OS and Windows offer multitasking and some level of memory protection. Windows NT provides multi-user support, as will Rhapsody/Mac OS X Server.

Today and Tomorrow

Unix has been available on Macs and PCs for over a decade. Personal computers now have the memory, drive capacity, and speed to handle an operating system designed from the ground up with multiple users, multitasking, and memory protection.

Today Unix and its variants (Linux, BeOS, Solaris, etc.) are the third most popular operating system platform on personal computers, behind Windows and the Mac OS. In fact, as quickly as Linux is growing in popularity, there is speculation that it could displace the Mac OS in the #2 spot.

But Apple has an ace up its sleeve: Mac OS X will be built around the same Mach kernel as several Unix-derived operating systems. Not only will this provide the memory protection and other features that users seek, it will also unleash the power of the PowerPC in a way that the current single-tasking Mac OS simply can’t.

In a few years, we will live in a world with two kinds of operating systems: those rooted in Unix and those sold by Microsoft. Mac OS X, Linux, and the others share many similarities, providing a real alternative to the Windows hegemony.

As the industry moves away from the Pentium family, there are several paths it could follow: Intel’s Merced, Alpha, Sparc, and PowerPC are some of the most viable options. The Mach kernel and Unix variants will run on each, which means that Mac OS X could make inroads on several hardware platforms.*

If Apple plays its cards right, five to ten years from now Microsoft Windows could be the #2 operating system, trying to hold any market share against a family of Unix-like operating systems.

And it could be Intel’s stepping beyond Pentium that makes it possible.

 * We had no clue at the time, but Apple was also porting its new operating system to Intel processors, the same hardware that NeXTstep had been designed for. And in 2006, Apple left PowerPC for Intel-based Macs!

Further Reading

  • Unix to the Core, Dan Knight, Mac Musings
  • Developers Press Apple to Open Mac OS Source Code, Ted Smalley Bowen, InfoWorld, 7 August 1998
  • Will Linux Eat Mac OS X’s Lunch? (no longer online due to URL recycling), Randy Whitted, TechWeb
  • Linux Gets a Graphical Face-lift, Charlotte Dunlap & Barbara Darrow, Computer Reseller News
  • Mac OS, Linux PPC, and Linux (x86) Performance Compared (no longer online), Bryan Lewis, MacInTouch
  • Pentium II, PowerPC, and Merced, Philip Machanick, Mac Opinion
  • A Modest Proposal to make parts of Mac OS X into an open source project like Linux, Don Yacktman. After Windows and the Mac OS, open source Linux is #3 and growing fast. It may already have a larger installed base than Windows NT and could soon rival the Mac OS. Can Apple tap into the open source mindset and position OS X as a cross-platform option?
  • Intel, Compaq Gird for 64-bit Battle, Alexander Wolfe, EE Times. Compaq is backing the Alpha chip while Intel is hoping to release Merced in “mid-2000” (Intel had originally hoped to have its 7th generation CPU out by 1997). Let’s see if Apple and the PowerPC can do an end run around both. For more on the future of the PowerPC, read David K. Every’s article on the G2000.
  • PowerPC Linux Release 4 Available from LinuxPPC (no longer online, although there are more modern versions of Linux available for PowerPC Macs. Join our Linux and BSD on PowerPC Macs group on Facebook to learn more). Mac OS X will be based on a Mach/Unix kernel. Linux, BeOS, and Rhapsody are all ways you can gain some exposure to Unix today (PPC required).