Pure opinion post here. I have never been a big fan of the operating system mono culture. In my first job out of college I worked for a company that developed applications for three different operating systems – OS/8, RSTS/E and RT-11. They had some similarities to be sure as both were developed by the same company. They had some differences as well. On one of them the default editor used the command “d” for display. On the other the command “d” meant delete. Yes that made life interesting. Internally there were a lot of other differences as you might imagine.
Later I went to work for Digital Equipment, the company that wrote the RSTS/E and RT-11 operating systems where I soon became somewhat fluent in RSX-11M, TRAX, TOPS-10, TOPS-20 and VAX/VMS. The hardware architectures involved 12 bit, 16 bit, 32 bit and 36 bit words. I became somewhat familiar with assembly languages for all of them. It was a wonderful time. I also ran into UNIX for the first time. It was almost as good as the worst of the other 8 operating systems I worked with. Sigh. I never expected it to last. Shows how good my predictive skills are.
Other companies were also working on their own operating systems. IBM had several. HP had several. Data General had several. And so did other companies you have probably never heard of. A lot was going on in operating systems. Software including the OS was a differentiator.
I remember one funny story that may or may not be true. I’ll leave out the name of the company since they are no longer in the computer business. A technical person was giving a presentation on some new computer hardware to a potential customer. Several times questions where asked and the reply was “we’ll talk about that when we talk about software.” At the end of the hardware presentation one of the listeners said “that is amazing. I don’t know why everyone doesn’t buy your computers.” A voice from the back of the room said “we’ll talk about that when we talk about software.” It was a different time.
Today, for most people, on personal computers there is a choice between Windows and some flavor of UNIX with a pretty shell over it. Mac OS or Linux or FreeBSD and the like are based on UNIX. There is not much incentive to create a new operating system. After all you would have to compete with an OS that is firmly entrenched on 85-90% of desktop systems on one hand and a free operating system on the other. Most people take the easy way out and build on top of Linux.
In hand held devices there is also a choice between Windows derived OS and UNIX derived OS but several smaller systems are developed based on other OS families. Wikiepedia has a comparison of mobile OS that includes information on OS families. There seems to be more innovation going on there especially with the user interface and with modifications needed to support the more limited hardware capabilities of handheld devices.
This this set of differences is frustrating for app developers I believe it is good for over all innovation in operating systems. Ultimately I believe that consumers are better off when companies have to compete on both better software as well as better hardware. For the near term I see most OS innovation happening in the mobile space. Some of it will migrate to desktop systems as touch interfaces are already. Some will not.
I expect some innovative OS research is being done in universities. I hope so anyway. How much of it will wind up in real systems is anyone’s guess though. With the operating system becoming less and less important for most average users there isn’t the same incentive for companies to adopt new technology these days. Well unless it saves battery life or electricity.