When we look to the past, we often get our clearest vision for the future. That certainly has been the case these last few months at Nokia Bell Labs as we’ve reflected on one of our most important innovations: the invention of the Unix operating system 50 years ago. We’re understandably proud of Ken Thompson and Dennis Ritchie’s creation, but while we’ve been celebrating their achievement this past year, we’ve also focused a keen eye on the future. It’s become very evident that Unix’s influence isn’t lessening as time passes. If anything, it’s relevance for the fields of computing and robotics is only increasing.
One of the main themes we’ve explored in recent months is how Unix’s core principles of abstraction and simplicity have persisted through the eras of computing since Thompson and Ritchie laid down the OS’s first lines of code 50 years ago. Abstraction and simplicity shaped Unix’s guiding philosophy of paring processes down to their fundamentals – creating tools that each do one thing but do it very well. Those tools could then be chained together using pipelines into more complex programs. That toolbox philosophy was elegant in its minimalism, but awe-inspiring in its power, and it spawned a cultural shift in software development toward modularity and reusability.
That philosophy and those principles have permeated Linux, Ubuntu and the rest of Unix’s successors, resulting in the Unix kernel finding its way into PCs, servers, robots, self-driving cars and most every smartphone we use today. Looking forward, those core principles will almost certainly feature in the operating systems running computing platforms in the future, said ETH Zurich’s Timothy “Mothy” Roscoe, a computer scientist who has designed his fair share of Unix-influenced OSes.
“Unix became this reference point,” Roscoe said at the recent Nokia Bell Labs Unix50 conference. “It became this beautifully simple model. It, in a sense, grounded everything else.” But Roscoe pointed out Unix was created in a time before multithreading, GPUs, virtual machines or even the fundamental concept of I/O. Unix was never intended to handle distributed systems, Roscoe said, but that by no means makes Unix obsolete. The principles behind Unix are as valid today as they were 50 years ago, Roscoe said. They only need be applied to new distributed computing architectures.
“If we were to come up with that, then maybe that’s actually the basis for the operating system kernel, or collection of kernels, we need for the future,” Roscoe said.
At Unix50, Roscoe challenged computer scientists to design their future OSes by following a simple maxim: What would Thompson and Ritchie do? Marina Thottan, leader of the E2E Network & Service Automation Lab, demonstrated that Bell Labs is taking that challenge to heart by creating a new implementation of Unix for networks. Called NetUnix, the new architecture attempts to eliminate the extreme complexity of network management by applying Unix’s principles of abstraction and simplicity.
“We are trying to change the way we think about network management,” Thottan said. “Rather than managing a device or a network element, [we’re] starting to think about how these elements come together to be able to provision a service, so you can reduce the complexity of what the model has to support.”
It isn’t always the case that Unix is evolving to meet the demands of the newest computing technologies. In the field of robotics, the inverse scenario is true. Robotics only recently has advanced to the point where it can tap into the power of Unix, claimed renowned roboticist Rodney Brooks during his Unix50 talk titled “The Great Robot Migration from Embedded Isles to Unix-ville”.
Throughout their history, robots have required every ounce of their computational power to merely move around, meaning all processing was implemented directly in hardware, Brooks explained. An operating system has long been an unattainable luxury for most robots, and only recently have computational capabilities become fast and affordable enough to make the implementation of robotic operating systems feasible, Brooks said. That, in turn, has led to a proliferation of Unix-based OSes – typically Ubuntu – in robots.
“Unix is now becoming the drug of choice for robots,” Brooks said, adding that the trend will only accelerate. One example is the self-driving car sector, which leans heavily on Linux, but Brooks predicted that soon most robots – excepting those with the most stringent cost or speed requirements – will run some version of Unix.
Unix may be 50 years old, but it’s clear its influence isn’t waning with age. Its principles of simplicity and abstraction are only becoming more relevant, helping to make sense of increasingly complex computing models. “The folks who invented Unix had a gut feeling this is how it needed to be done, without knowing what the future would look like 50 years later,” said Markus Hofmann, leader of the Applications Platforms and Software Systems Lab. “But they got it right.”
We have little doubt that we will be commemorating Unix’s 100th anniversary in 50 years’ time. In 2069, we will still be discussing the impact of Unix’s founding principles on computing, while scrutinizing new operating systems derived from the Unix kernel. That gut instinct in the summer of 1969 that made Unix revolutionary 50 years later will only seem more prescient 50 years from today.
To read more about the Nokia Bell Labs Unix celebrations and to see videos from the Unix50 conference, visit our Unix50 page.