Definition

deadlock

A deadlock is a situation in which two computer programs sharing the same resource are effectively preventing each other from accessing the resource, resulting in both programs ceasing to function.

The earliest computer operating systems ran only one program at a time. All of the resources of the system were available to this one program. Later, operating systems ran multiple programs at once, interleaving them. Programs were required to specify in advance what resources they needed so that they could avoid conflicts with other programs running at the same time. Eventually some operating systems offered dynamic allocation of resources. Programs could request further allocations of resources after they had begun running. This led to the problem of the deadlock. Here is the simplest example:

  Program 1 requests resource A and receives it.
  Program 2 requests resource B and receives it.
  Program 1 requests resource B and is queued up, pending the release of B.
  Program 2 requests resource A and is queued up, pending the release of A.
Now neither program can proceed until the other program releases a resource. The operating system cannot know what action to take. At this point the only alternative is to abort (stop) one of the programs.

Learning to deal with deadlocks had a major impact on the development of operating systems and the structure of databases. Data was structured and the order of requests was constrained in order to avoid creating deadlocks.

This was last updated in September 2005
Posted by: Margaret Rouse

Email Alerts

Register now to receive SearchCIO-MidMarket.com-related news, tips and more, delivered to your inbox.
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

More News and Tutorials

  • Remote backup can ease network disaster recovery

    Backing up to local disk or tape can protect against the accidental destruction of a file but will do nothing to protect you when your facility suffers fire or flooding. Remote backup provides a better solution. This tip looks at two possibilities for remote backup: Choosing an outsourced remote backup service, or using software to do your own backups to an offsite facility.

  • VoIP now part of phishing attacks

    Learn how attackers are using the widespread deployment of low-cost VoIP to leverage phishing attacks.

  • VoIP privacy on the WAN

    Is the government listening to your VoIP traffic? Can other companies spy on your WAN? It may sound like a paranoid conspiracy theory, but it's not that far out, technologically speaking. In this tip, Tom Lancaster looks at just how exposed your WAN traffic may be.

Do you have something to add to this definition? Let us know.

Send your comments to techterms@whatis.com