A new study comparing a computer's operating system (OS) to the biological one of a microbe reveals why computers "crash" while living things like us can better handle the occasional malfunction and not spontaneously die.
Our natural OS, based on genes, has evolved greater flexibility and independence in how its elements work together in our cells than the lines of code in a highly interconnected computer OS perform key tasks. The findings could lead to the programming of more robust machine OSs in the future, scientists say.
"People often compare the genome of a living being to an operating system . . . [and] the analogy is quite correct," said Mark Gerstein, a professor of molecular biophysics and computer science at Yale University and a co-author of the paper. "I think [the concept] is good for building larger software projects and speaks to how you get bigger pieces of code and stuff to work together."
Researchers looked at all the genes, or genome, of the well-studied gut bacteria Escherichia coli (E. coli) and compared it to an open-source OS called Linux. (This OS is often found in server farms but rarely on desktop computers, laptops and cell phones dominated by Microsoft Windows and other "closed-source" OSs that researchers cannot delve into.)
Despite contrasting operating environments – life's warm-and-watery "wetware" versus a computer's metallic, electrified "hardware" – surviving and computing ultimately boils down to the completion of complex tasks via a series of tiny steps.
"A computer operating system is composed of lots of different routines that are called [upon], usually from some high-level control program," Gerstein said, "and a genome consists of lots of genes turned on and off in a similar fashion."
Microbe versus machine
A graphical map generated by Gerstein and his colleagues of the connections between elements of the E. coli and Linux OSs illustrated how they distinctly divvy up and manage the work flow.
E. coli's OS follows a bottom-up, pyramid-like approach. At the base, lots of "workhorses" – a panoply of proteins, essentially – churn away on an immense variety of tasks with relatively few "middle managers" and "bosses" at the top of the pyramid telling these proteins what to do.
Only 10 percent of the total number of genes in E. coli code for these middle- and upper-level regulators, while the other 90 percent act as the blueprint for making workhorses. In Linux, however, nearly 80 percent of the computer's functions are found in the upper regulatory levels.
Accordingly, Linux operates more like a top-down organization, or inverted pyramid, with many regulating elements all controlling a smaller set of reused generic commands.
"The way a computer is organized, the hierarchy is different," Gerstein explained. "There are more things at the top and fewer things at the bottom, and the things that are highly connected are the workhorses," whereas "in a biological setting, only a few things are connected to many other things."
This design makes sense from a software engineering perspective because it is more efficient to get the most bang for one's buck out of a particular function rather than devising multiple means to reach the same end. Plus, the reuse of generic code makes it easier to fix "bugs" and is more economical than creating new code from scratch.
But this reliance on generic routines to handle most of a computer's dealings leaves an OS vulnerable to crashes.
"A lot of the routines in a [computer] OS tend to depend on the same things, and if those get messed up you're in trouble," said Gerstein. "In a biological system you have much more redundancy with less reuse."
On the other hand, an organism's OS with its more-independent workhorses is inefficient compared to a computer OS, said Koon-Kiu Yan, a post-doctoral research associate in computational biology at Yale and lead author of the paper.
When a computer OS performs two functions, such as sending a signal to a printer or a monitor, there is likely to be overlap, Yan said. A life form, though, might call up two sets of unique proteins to build two different cellular components.
The contradictory ways that computer and biological OSs do their duties relates to their origin and "evolution" – directed, manmade intelligent design for the former and random mutations subject to natural selection for the latter.
Software engineers have continually fine-tuned Linux since its creation in 1991. Code errors unintentionally introduced to the oft-used, generic routines have led to crashes because of the interconnectedness of the machine's OS that funnels tasks through these same routines.
E. coli's looser OS, however, has evolved to better handle code errors – random, inevitable mutations – that pop up in its genes.
The microbe's system does not have generic routines that if severed would result in a fatal crash, and instead compartmentalizes its business in specialized functional units. "You see things work independently and functions tend to take care of themselves," Yan said.
A lively computer
Teasing apart these biological OSs opens the way for "new kinds of software organized like life," Yan told TechNewsDaily.
Future OSs could be built "with more different components so they don’t overlap each other," Yan said. That would help them withstand the occasional blip introduced by poor coding, a computer virus or the more everyday issue of too many regulators calling the same generic channels.
But there is a trade-off between robustness and economics. While designing OSs based more on biology could lead to less crash-prone computers, "you can lose some cost effectiveness," said Yan, which in the end is largely "what software engineers care about."
The research was published in a recent issue of the journal for the Proceedings of the National Academy of Sciences. • Molecular Computer Mimics Human Brain • Bionic Humans: Top 10 Technologies • Engineering the Computer of the Future, One Atom at a Time