History of Smartphone Operating Systems

November 18, 2018 (Finished Dec 15)


iOS and Unix

It is that time of year again when Apple, Google, and the other smartphone makers are releasing their fancy new smartphones. People line up outside Apple stores to get the latest-and-greatest new iPhone with its cutting edge technology that is so much better than the previous year (or so they think). But while the phones may be brand new, the software running them is way older than you might think.

Apple's iOS operating system traces its roots back to 1969. At AT&T's Bell Labs, computer scientist Ken Thompson wrote a computer game called Space Travel for the PDP-7, a 1960's era computer. The PDP-7 was gigantic by today's standards, taking up practically a whole room. (It also cost $79,000 at the time--and you thought new iPhones were expensive!) The game Space Travel is sadly lost, but while he was making it, Ken started developing a new operating system called Unix. You may recall that Jurassic Park ran on a Unix system, with a crazy 3D file system they "flew around" to bring Jurassic Park back online.

PDP-7 computer

Pdp7-oslo-2005.jpeg
By en:User:Toresbe - From english Wikipedia. Original description was: The Oslo PDP-7, before restoration started. I took the picture., CC SA 1.0, Link

Unix evolved through the 1970's and proved to be a popular tool, especially for programmers. Unix eventually made its way to universities and elsewhere in the mid 70's. After Steve Jobs left Apple Computer in the 80's, his new company, NeXT, made some cool computers with a Unix operating system. NeXT computers were used to create the first web browser, the first web server, and the Doom video games. In the 90's, Apple was struggling with their sluggish non-Unix operating system, and decided to buy NeXT and get their advanced Unix operating system. That became OS X (now called macOS). iOS (the iPhone operating system) shares the low level components with macOS, meaning it is running Unix.

Unix history-simple.svg
By Eraserhead1, Infinity0, Sav_vas - Levenez Unix History Diagram, Information on the history of IBM's AIX on ibm.com, CC BY-SA 3.0, Link

I started this article in November, but got carried away trying to find out how far back code is shared between modern macOS and previous versions. It turns out Unix has a very complicated history. Even though it has been popular since the 1970's, disputes between AT&T, the University of California, and the Unix users of the world caused a big re-write of the code to happen without any original AT&T code in 1994. As far as I know, that makes 1994 the furthest back iOS can trace its actual code, though there are references to University of Utah code from 1988 as seen here, so I don't know exactly where to draw the line. Here are some cool links to actual Unix source code if you want to see it:

Android and Linux

Android's history starts in 1991 in Helsinki, Finland. Linus Torvalds, then a student at the University of Helsinki, decided to write his own operating system as a hobby. This became the Linux operating system and is now hugely popular. It is layed out just like Unix, but all the code was written from scratch, and has no direct line to Unix, even though the systems are very similar. It is freely avaialable, and widely used by computer nerds, companies, and anyone who wants a free operating system. This website is actually running on a Linux computer in California. Linux's mascot is a penguin.

Tux.svg
By Larry Ewing, Simon Budig, Garrett LeSage - http://www.home.unix-ag.org/simon/penguin/, garrett/Tux on GitHub, CC0, Link

Android is an operating system built on top of Linux. Its mascot is not a penguin, but the green Android character you have probably seen. Android programs are not compatible with regular versions of Linux and vice-versa, but at a low level Android does run on Linux.

C

If you've made it this far you'll be interested to know that Unix and Linux are both written in C, the legendary programming language from the 1970's. I have always found C programming difficult, especially compared to modern languages, but it is still widely used. It powers Microsoft Windows, car computers, airplanes, web servers, databases, video games--TONS of stuff.

So while your smartphone may be a cutting-edge piece of technology, it is fun to learn that the pieces making it up are from the 1960s and 70s, and was the same system that brought Jurassic Park back on line! This write-up barely even scratched the surface of Unix, Linux, and C, and if you are interested, definitely learn more about them. Linux especially can be a fun thing to learn about, and will make you a computer hipster for sure if you start using it.