One of Technology Review's 35 Innovators Under 35 is a man named Morgan Quigley, who created a software framework called ROS. ROS stands for Robot Operating System, and its website describes it as an "open-source, meta-operating system for your robot."
There are a couple key bits of information there. One: ROS is open source, and its growing popularity means that Morgan Quigley could play a very important role in the development of robotics. Two: the "meta" bit indicates that ROS isn't actually an independent operating system. It's a framework that provides "hardware abstraction, low-level device control, implementation of commonly-used functionality, message-passing between processes, and package management. It also provides tools and libraries for obtaining, building, writing, and running code across multiple computers." Also, it runs on Linux and Mac OS X.
The builder of a 3D-printed robot we saw at Maker Faire in New York mentioned ROS as heavy-duty robot software, more powerful but less accessible than hobbyist toolset My Robot Lab. That may be the case, but Technology Review's profile on Quigley paints an optimistic future for ROS. As the open source system is expanded and improved, it could become the go-to method for controlling a wide range of robots.
The craziest part is that ROS has only been around since 2010, when Quigley released it in collaboration with robotics maker Willow Garage. Technology Review writes that Quigley wants the software to adapt to work well with low-power processors, which will be integrated more and more into future robots. He also wants it to grow to be able to control multiple robots simultaneously, so that, say, a factory of car-building bots could all run off of ROS.
Judging by ROS' robots page, it's already powering an impressive variety of bots, including an immersive telepresence implementation pairing the Oculus Rift with Willow Garage's PR2 robot. Check out Technology Review's profile for more on how Quigley got into the robotics world and created ROS.
Any number of independent modules can run at a given time. Modules can be connected for testing, disconnected for debugging, and reinstated without destabilizing the network as a whole. In this way, ROS allows a robot to be controlled by any number of computers running any number of programs—a laptop focusing on navigation, a server performing image recognition, an Android phone issuing high-level instructions. It all happens in real time as the robot wanders about.