We study algorithmic problems in multi-stage open shop processing systems
that are centered around reachability and deadlock detection questions. We
characterize safe and unsafe system states. We show that it is easy to
recognize system states that can be reached from the initial state (where the
system is empty), but that in general it is hard to decide whether one given
system state is reachable from another given system state. We show that the
problem of identifying reachable deadlock states is hard in general open shop
systems, but is easy in the special case where no job needs processing on more
than two machines (by linear programming and matching theory), and in the
special case where all machines have capacity one (by graph-theoretic
arguments).Comment: 19 pages, no figure