The authors present a process management system for parallel programs such as those written using MPI. A primary goal of the system, which the authors call MPD (for multipurpose daemon), is to be scalable. By this the authors mean that startup of interactive parallel jobs comprising a thousand processes is quick, that signals can be quickly delivered to processes, and that stdin, stdout, and stderr are managed intuitively. The authors' primary target is parallel machines made up of clusters of SMPs, but the system is also helpful in more tightly integrated environments. The authors describe how MPD enables much faster startup and better runtime management of MPICH jobs. The authors show how close control of stdio can support the easy implementation of a number of convenient system utilities, even a parallel debugger. MPD is implemented and freely distributed with MPICH.