A Composite View

cs2016
July 10, 2017

What if one of the 50-plus small computers contained in today’s average car failed, and it was the computer that controls the car’s braking system? Or what if one of the computers that help manage a city’s water control plant failed? Or maybe just a computer contained within your smart phone.

The consequences of the failure could range from the merely annoying to disastrous, but as computers become increasingly woven into our lives, the need to develop better and more predictable operating systems becomes more urgent.

This is precisely what Gabriel Parmer attempts to do, as he investigates methods to make computer operating systems essentially self-repairing, able to recover from faults and to resume predictable operation. He does this by considering the problem from three perspectives: reliability, security from outside attacks, and parallelism (or, in simple terms, designing the software to work well with the multiple cores that most computers now contain).

“The underlying theme for all three pushes is the notion of predictability,” Dr. Parmer says. “We need to know that a certain computation will be completed at a certain time that the real world requires.”

To learn more about predictability, Dr. Parmer and his research students have built from scratch an operating system called Composite, on which they all work, innovating on one of the three perspectives of predictability. The general idea behind Composite is to rethink the way code is developed for embedded systems. Generally the code is “put together in one monolithic blob, and the impact of that is that if any one line of code goes wrong, it can impact anything else in the software,” according to Dr. Parmer. Instead, he conceptualizes breaking the code into separate compartments that are specialized like cells, so if a hacker takes over one cell, the attack doesn’t impact the other cells around it or break the system.

This is the concept he has been developing under his 2012 National Science Foundation (NSF) Faculty Early CAREER Award. These are the most prestigious grants the NSF awards to junior faculty, and Dr. Parmer is grateful for its support. He says that he initially considered his idea a risky way to look at reliability and embedded systems, but the results so far have proven it to be very useful, even more useful than he originally thought it would be.

The CAREER award is a validation of the potential of his idea. And so is the grant he currently has with the Office of Naval Research. It works with the same infrastructure and “attempts to do something that’s pretty off the beaten path with it,” Dr. Parmer muses. And it, too, is beginning to show good results.

Dr. Parmer is proud of his research results, but he’s also very proud of the “results” his students have shown, noting that “seeing them progress as researchers is a huge milestone.” His dedication to his students’ growth is obvious as he talks, but also borne out by the three teaching awards he has received from both the students and his peers since joining the SEAS faculty in 2010.