Blog Post

Is There an "Internet Operating System?"

When Tim O’Reilly talks about something technology or web-related, plenty of people listen. After all, he not only runs a media company that publishes authoritative books on technology, he runs conferences about the issues that arise out of technology’s impact on business and society, and he helped popularize the term “Web 2.0,” among other things (although some people would rather he hadn’t). So it’s worth taking some time to look at what O’Reilly said recently about “The State of the Internet Operating System.” In that post, O’Reilly looks at the various parts that make up what he believes to be an operating system for the Internet era.

The idea:

As O’Reilly notes at the beginning of his post, this isn’t the first time he has raised the idea of an Internet Operating System. The first time in print appears to have been 2002, although the author and publisher admits that he forgot to hit the publish button and didn’t wind up actually posting it until 2004. Among other recent discussions of the topic, O’Reilly did a presentation called “The State of the Internet Operating System” in November of last year:

O’Reilly isn’t the only one to bring up the idea, either, or to use the term. Cisco (S csco) has a whole product line of networking software called Internet Operating System (which O’Reilly responded to in a post in 2004). Jon Udell wrote about the idea in 2008. Google (S goog) was widely believed to be developing one in 2005, according to Search Engine Roundtable. Former BitTorrent developer Krzysztof Kowalczyk called the Google Apps Engine an Internet operating system. And Jolicloud calls itself an Internet Operating System and explicitly references O’Reilly’s piece from 2004 in its mission statement.

The post:

Getting back to the post: It’s pretty long (about 5,400 words) so here’s a quick overview: in O’Reilly’s view, the way that various pieces of the web function together — Google search, cloud computing services, GPS location-based services, mobile browsers, etc. — is a bit like the way that the various pieces of a computer function.

On a standalone computer, operating systems like Windows, Mac OS X, and Linux manage the machine’s resources, making it possible for applications to focus on the job they do for the user. But many of the activities that are most important to us today take place in a mysterious space between individual machines.

So is there an operating system out in that mysterious space? Well, not really. Even O’Reilly admits that there isn’t anything really OS like — but he thinks there is something emerging that serves a similar function. And he admits that Google search and other services feel more like applications (in other words, like software that runs on a computer), although they run on a massive computing cluster. But is there any purpose in thinking of the Internet as having an operating system? That’s not really clear.

Where is the “operating system” in all this? Clearly, it is still evolving. Applications use a hodgepodge of services from multiple different providers to get the information they need. But how different is this from PC application development in the early 1980s, when every application provider wrote their own device drivers to support the hodgepodge of disks, ports, keyboards, and screens that comprised the still emerging personal computer ecosystem?

The future:

At this point, O’Reilly agrees that there may not actually be an Internet operating system. “Never mind the technical details of whether the Internet really has an operating system or not,” he says. So what is the point of the metaphor then? One of O’Reilly’s main issues seems to be that he is afraid society is facing a choice between managing the complexity that is out there and opting for an overly simplified solution, in the same way the early world of computing turned into a Windows (s msft) monopoly (my comparison, not his). Which raises the question: Is O’Reilly too caught up in the battles of the past, and trying to impose that same perspective on the Internet?

This is the crux of my argument about the internet operating system. We are once again approaching the point at which the Faustian bargain will be made: simply use our facilities, and the complexity will go away. And much as happened during the 1980s, there is more than one company making that promise.

The rest of O’Reilly’s piece is a discussion of what subsystems the Internet Operating System is made up of — in other words, what the disk drives and memory and processors and displays and peripherals are. O’Reilly lays out several broad categories, including:

  • Search: “Because the volume of data to be managed is so large, because it is constantly changing, and because it is distributed across millions of networked systems, search proved to be the first great challenge of the Internet OS era.”
  • Identity: “When you use Facebook Connect to log into another application… that application is using Facebook as a “subsystem” of the new Internet OS.”
  • Location: “Location is the sine-qua-non of mobile apps. When your phone knows where you are, it can find your friends, find services nearby, and even better authenticate a transaction.”
  • Time: Real time “emphasizes just how much the future will belong to those who measure response time in milliseconds, or even microseconds, rather than seconds, hours, or days.”

O’Reilly also describes what he sees as the potential future of the browser:

Might an operating system of the future manage when and how data is collected about individuals, what applications can access it, and how they might use it? Might it not automatically synchronize data between devices and applications? … Might it not perform credit checks before issuing payments and suspend activity for those who violate terms of service?

The bottom line:

So is there an Internet Operating System? Maybe — although there’s just as much reason to believe that TCP/IP, the networking standard that underlies the Internet, is pretty close to an operating system (albeit a DOS-like one), in the sense that it makes the various parts of the web and the services we use work together, and the other things that O’Reilly is talking about are services that function on top of that. Maybe a better term would be “ecosystem,” since that’s a less technical metaphor, and doesn’t have the same baggage as the term operating system. Let’s give the last word to a Slashdot commenter: “The internet has an operating system just as much as a colony of ants has a hive mind. They don’t, but they sure act like they do.”

Whether there’s an Internet OS or not, O’Reilly’s larger point seems to be that the pieces of the social Web, cloud OS services, GPS location and all of those other things are worth thinking about as a cohesive whole, and that we should consider how to make them function better, and what kinds of features we want them to have going forward. And that’s a point worth making, regardless of what we choose to call the thing we are all building.

Related GigaOM Pro Research:

Post and thumbnail photos courtesy of Flickr user Stefan

17 Responses to “Is There an "Internet Operating System?"”

  1. I believe that an Internet Operating System is the development of an Common Platform that has the ability to act as both Server and Client and provide tools & libraries within LANs and WANs for Applications, Utilities and Files to utilize.

    The Internet is changing. We’re seeing Transparent Gradients with CSS3, CSS-SVG Image Support, and the W3C’s dent in OpenGL & DirectX with Web3D in development.

    I’ve been building what I consider to be an Internet Operating System for nearly a year now called “Alien” with the first Application “AlienBoombox” as a HTML5 Replacement for iTunes.

    (The subdomain for the latest Beta & App Alphas is “Latest.AlienBoombox”)

    I believe that using a Virtual Linux Filesystem I can create a Symbionic Relationship of both Client & Server and possibly later on a X11 OpenGL Chrome WebKit / Mozilla Gecko Graphical Web Browser for Self Access & Extenral / Multipule Instance Access as well.

    ~ Electric Prism

  2. Rob Menke

    People seem to be missing the point of the original article. The question wasn’t “What operating system does the Internet use?” but “If you view the Internet as one large computer, what does its operating system look like?”

    My problem with the original article (and my first response contained far too many acronyms) was that O’Reilly failed to stick to a specific viewpoint so that’s why his article was so muddled. It is not completely his fault: the definition of “operating system” has become vague over the years.

    There is the populist view: the operating system is what you get on a disk from an operating system vendor. To the user, the operating system consists of those applications that are installed with the core; e.g., MacOS comes with the Finder, TextEdit, Preview, and a number of other basic utilities. When O’Reilly described Google as being a major part of the “Internet Operating System” he was using this view.

    There is the hardware view: the operating system is a framework in which device drivers reside, device drivers being the software that controls the hardware. This is the view of the “Internet Operating System” in which the major players are the TCP/IP suite (the set of rules by which all Internet-connected machines must abide) and other application-independent transport protocols.

    And finally there is the developer’s view: the operating system is a set of rules in which applications (user-facing programs) can control hardware without knowing specific details of the hardware. When you say a program runs on Windows or on MacOS or Java or whatnot, this is the view you are taking. The application uses a convention called an API (application programming interface) to make requests of the operating system; moving an application from one API to another is a major undertaking and often requires a complete rethink of its design because the new API’s “philosophy” can be completely different. This is why software originally created for a different operating system feels odd. The API of the “Internet Operating System” is built on the well-defined protocols HTTP, IMAP, NNTP, et cetera.

    To say “UNIX is the Internet Operating System” is akin to saying “the HP-4070 printer driver is the Windows XP Operating System.” If you have to mention a specific vendor, you are taking far far too narrow a view (and most likely trying to sell something).

  3. The term OS (operating system) cannot be applied to all computers as they operate in the non internet environment.
    I can have a linux, MS, Apple, and several other operating systems hooked to an intranet on an IBM main frame (completely different OS) so what is the OS used here?

  4. Perhaps ‘ecosystem’ is a better term than ‘operating system’ -expanding from thinking in terms of discrete systems (a desktop application in a local environment) to distributed systems (the internet). And with distributed systems come a lot more connections. Instead of communicating with the desktop OS and maybe other local applications and maybe even remote servers and applications, this computing ecosystem hides many of the details behind APIs that promote the transfer of resources and how those resources connect to one another. And from that increase in connectivity, new behavior emerges that wasn’t possible or even conceivable before.

  5. How typical for technologists to pick apart the lingo but miss the real point! Is there an OS for the Internet – yeah but it is not what you may think.

    The Internet OS has to be based on the key glue for the Internet age — creating trust because it is how we will navigate between machines, between people, between sites, between data stores and between cloud services.

    And who is building this Internet OS? Not the big companies that you’d expect … but smaller innovative companies like Comodo, a security company. They came out with Comodo Dragon, a Chrome derivative but since it comes from a security company it begins to fill the trust gaps that exist today between machines. Future versions of this browser (I know technically a browser is NOT an OS — or is it???) will include more trust tools – like identity verification, content verification etc.

    The Internet OS should not be about an operating system for machines but an operating system for PEOPLE using machines. With that definition, only a small company with no stake in the current infrastructure can create a disruptive Internet OS to deliver The Trust Web.

    Take that and put it in your OS pipe!

    Judy Shapiro

  6. If there was an ‘Internet OS’, then I would be inclined to say it is Unix, as that was and still is the most common server OS (and if nothing else, it was always a network operating system, unlike Windows).

    But some said it right on: most users don’t care or even know a thing about Unix. Fact is: there’s a lot of OS’s out there and I’m not even including distributions (say of Linux), versions/editions, etc.

    To be perfectly honest, there is an operating system that was designed for networking (or at least it was a big focus of it), but to say it’s THE internet operating system is a bit far fetched!

  7. Is the internet a sort of OS?
    Or is it a sort of platform?
    Then is Linux an OS or a platform?

    Anyway, to a confused mind like that of Detective Columbo, I do notice that
    (1) Users need just a browser and the internet connection and they can use my computing/software/application services etc right away.
    (2) My backend service can be in any language(PHP, JAVA, Ruby etc) or on any stack(ASP.NET, Apache, IIS, Mongrel Ngnx, django, google app engnine, CE2 whatever.)



  8. The danger with cloud services is data lock-in and the inevitable leverage that gives cloud providers over users.

    Data portability by default (interoperable cloud services) will make a huge difference.

    The web programming model is an obvious winner. What we’ll start to see soon is it’s migration to the client. As our computers become more web centric, we’ll start to see a lot more applications based around a local web server + a browser, that can operate without connecting to a central server.

    Running the applications at the edge will help tip the balance of power back to the users. I think this will help more people get comfortable with networked applications.

  9. Rob Menke

    Bah. An operating system is the common software used by applications to abstract away the physical parts; no more, no less. O’Reilly starts with a vague definition and it falls apart from there.

    The easiest way to discover an “operating system” is to condense its philosophy down to catchphrase. UNIX, for example, can be boiled down to three words: “pipe, fork, exec.” (I’ll ignore X; it is almost an operating system unto itself.) Windows is a little harder, but I’d go with “Every action is a series of steps” to encapsulate its wizard approach; MacOS, “modeless operation whenever possible.” The most successful applications for a given operating system align themselves with its underlying philosophy; users get annoyed when a different philosophy is grafted on (again, I’m looking at you X).

    The Internet — specifically, the world-wide web which most people equate with the Internet — is the cleanest of all: REST (Representational State Transfer), or “the server has the only authoritative state.” The client-side browser is only a window onto the server state. The majority of actions (reading, searching) transfer state information from the server to the browser (HTTP GET, directly or via AJAX). Occasionally (via POSTing) the data flow goes the other way but at no time is the browser “authoritative”; power off and your blog post goes away but the Internet still lives. The major difference between this and general client/server is that the client holds no state in any sense; the strictness of this philosophy explains the appeal of “the cloud” and why distributed state applications are going away. Other protocols such as IMAP and NNTP follow the same philosophy; POP3 mostly reverses it (the server-side mailbox describes how the client should change its authoritative state). Application-specific protocols (e.g., the iTMS) also have their own state rules and they are well-defined (though not necessarily published).

    O’Reilly is all over the place in describing the “Internet operating system.” He tries to define it in terms of its low-level components like memcached (akin to describing Windows in terms of IA32 and specific device drivers); he tries to define it in terms of its applications like Google (akin to describing Windows through the capabilities of Microsoft Word). That’s why his thinking seems so muddled. He really wants to describe it in terms of its API. Win32 was so large and so vague that only one implementation successfully covered it: Windows itself. The minimal API implementation of the Internet is so simple practically anyone can implement it.

  10. AppLocator

    The internet op system is a ” fully integrated personalized destination site.” An integration of websites that function seamlessly from one domain. May the best personalized user interface destination site win.

  11. Hmmm . . . rather than jumping to the OS analogy directly, it might be better to think in terms of computing always evolving through the addition of new layers of abstraction–the OS just being one manifestation of that evolution.

    So thinking most generally about new, integrative layers that could emerge might be more fruitful. What I call “the learning layer” in the soon-to-be-released book of the same name (see would be one such candidate.

  12. tolleson

    This is nonsensical jargon that is completely meaninglessness to most. It’s the kind of drivel you would expect from a self-important BIG thinker.

    The web is so massive and so diverse. To think there’s one cohesive operating system silly. The closest thing we have today is the browser, and that’s really more of a utility than operating system.

    • You’ve got a very good point here Sir. A lot of us uses different types of softwares when we use the internet so there is really no “true internet OS” when it comes to that. We all have our own preferences. Even when it comes to browsers, we will all have our differences.

    • I think O’Reilly’s point is that all those different browsers and servers and whatnot function like software on a PC, so he is looking for and thinking about how they all work together, or what helps them work together. It may not be the right metaphor, but I know what he’s driving at.

    • “The web is so massive and so diverse. To think there’s one cohesive operating system silly. “

      Is “operating system” like Linux really cohesive?

      Ubuntu, Redhat, Suse, Debian … we need different instructions for them for installing Ruby, Python etc.

      I am confused.

      Calling anything OS is fine if done metaphorically/analogically, right?

      But wrong if taken too literally?

      I am confused.

      Etrhic Minds .