A Deadlock Prevention Policy for a Class of Multithreaded Software
A Deadlock Prevention Policy for a Class of Multithreaded Software
Blog Article
Deadlock is an undesired situation in multithreaded software since it can lead to the stoppage of software.This paper studies the problem of deadlock control of multithreaded software based on Gadara nets, which are well studied for modelling concurrent programs.In particular, an iterative deadlock prevention policy based tg02-0325m on siphons is proposed for a class of ordinary Gadara nets where the initial marking of each idle place is one.At each iteration, we compute emptiable siphons containing the smallest number of resource places.Then, bad markings are computed based on these siphons.
On the basis of the bad markings, a constraint is constructed that forbids not only bad markings that empty one of the siphons but also some other bad markings.The algorithm is carried out until no emptiable siphon exists in the net.Compared with the existing methods, the resultant net derived south shore axess desk from the proposed method is live and maximally permissive with a simpler supervisor.Finally, two examples are provided to illustrate the proposed deadlock prevention policy.