Path: utzoo!mnetor!uunet!husc6!necntc!dandelion!ulowell!apollo!rees From: rees@apollo.uucp (Jim Rees) Newsgroups: comp.sys.apollo Subject: Re: Suspending processes Message-ID: <393d7157.b8ab@apollo.uucp> Date: 23 Dec 87 16:58:00 GMT References: <179@idacom.UUCP> Organization: Apollo Computer, Chelmsford, Mass. Lines: 14 Keywords: DC DS suspend You can use proc_$suspend and resume, which is what the DM uses, but they are less than ideal. They do an unconditional suspend at the proc2 level, which is below all the user space locking. So if you manage to suspend some process while it is holding some critical lock, say the sfcb lock, you're in for trouble. If you've ever had the DM say "unable to lock needed resources," this is what's going on. A much better way, that uses released interfaces, is to use the unix SIGSTOP (unfortunate name, not related to fault_$stop) and SIGCONT signals. These interact correctly with user space locks. The proc2 versions should only be necessary if you have some process that's totally wedged in an inhibited loop, and if you do, you're going to have to blast it anyway.