New approach eliminates software deadlocks using discrete control theory
Software deadlocks are the Catch-22s of the computer world. These common bugs can freeze the machine when different parts of a program end up in an endless cycle of waiting for one another as they access shared data. University of Michigan researchers developed a new way around this problem with a controller that can anticipate and prevent situations that might cause deadlock.
Their controller is called Gadara. It's a plug-in that operates using feedback techniques similar to those that give us cruise control in cars and thermostats in heating systems.
"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," said Stéphane Lafortune, a professor in the Department of Electrical Engineering and Computer Science and a Gadara developer.
Yin Wang, a doctoral student who works with Lafortune in the same department, will present a paper on Gadara Dec. 9 at the USENIX Symposium on Operating Systems Design and Implementation in San Diego.
"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," Wang said.
Deadlock is becoming a more pressing concern as multicore chips grow in complexity and software performs an increasing number of tasks simultaneously. The bug shows up often in parallel programs that use shared data.
Gadara works by analyzing a program to find potential deadlocks, and then inserting control logic into the program. The control logic ensures that the program cannot deadlock.
Gadara uses a unique combination of discrete control theory and compiler technology, said Lafortune, whose primary work focuses on discrete control theory. The control theory provides the logic that allows Gadara to use feedback to prevent software deadlocks.
The compiler technology, which was developed by Scott Mahlke, a professor in the Department of Electrical Engineering and Computer Science, enables Gadara to operate on real-world applications. Compilers translate programs written in high-level programming languages in executable code.
Source: University of Michigan
Related
- Online service lets blind surf the Internet from any computer, anywhereWed, 25 Jun 2008, 14:07:51 EDT
- New software design technique allows programs to run fasterMon, 5 Apr 2010, 9:44:00 EDT
- Quantum computers will require complex software to manage errorsWed, 8 Apr 2009, 11:52:09 EDT
- New research offers security for virtualization, cloud computingTue, 27 Apr 2010, 11:59:02 EDT
- Cloud computing method greatly increases gene analysisWed, 8 Sep 2010, 10:43:52 EDT
Other sources
- New Approach Eliminates Software Deadlocks Using Discrete Control Theoryfrom Science DailyFri, 5 Dec 2008, 22:28:16 EST
- New approach eliminates software deadlocks using discrete control theoryfrom Science CentricWed, 3 Dec 2008, 1:42:56 EST
- New approach eliminates software deadlocks using discrete control theoryfrom PhysorgTue, 2 Dec 2008, 14:00:24 EST
- New Approach Eliminates Software Deadlocks Using Discrete Control Theoryfrom Newswise - ScinewsTue, 2 Dec 2008, 10:29:03 EST
Latest Science Newsletter
Get the latest and most popular science news articles of the week in your Inbox! It's free!Learn more about
Check out our next project, Biology.Net
Popular science news articles
No popular news yet
No popular news yet
- Stem cell transplant restores memory, learning in mice
- 2 landmark studies report on success of using image-guided brachytherapy to treat cervical cancer
- Calculating tsunami risk for the US East Coast
- Researchers discover mushrooms can provide as much vitamin D as supplements
- Cutting back on sleep harms blood vessel function and breathing control