A new controller will anticipate and prevent bugs

Dec 3, 2008 12:24 GMT  ·  By

The most dreaded events in the computer world, besides viruses, are definitely bugs. Even you must be praying for no crashes or freezes every now and then, maybe while reading this article. Perhaps even more so as the intricacy of modern multi-core chips grows and (more) programs perform multiple tasks, sharing data at the same time. But researchers from the University of Michigan came up with a promising tool – a controller called Gadara – aimed at lifting this burden from our daily use of computers.

Most commonly, freeze bugs are the result of a process where various sections of a software get to wait on each other in infinite cycles as they need to access the same shared data. The experts' plug-in controller that relies on the feedback received from the programs has sidestepped this issue by anticipating and eliminating the causes for the deadlock situation, using a blend of discrete control theory and compiler technology.

 

Among Gadara's developers were Stephane Lafortune and Scott Mahlke, both professors at the Department of Electrical Engineering and Computer Science, Yin Wang, a doctoral student from the same department, Terence Kelly, a former U-M student currently working for the Hewlett-Packard Laboratories, and Manjunath Kudlur, a U-M doctoral graduate, now employed by Nvidia.

 

"This is a totally different approach to what people had done before for deadlock. Previously, engineers would try to identify potential deadlocks through testing or program analysis and then go back and rewrite the program. The bug fixes were manual, and not automatic. Gadara automates the process," explained Lafortune of their controller, as quoted by Eurekalert. "Every time you find a problem today you need the original programmer to solve it. The goal of Gadara is to allow anyone with our tool to solve the problem," added Wang.