3 Process Manager Functionality Starts process groups, with specification of environments of application processes, either collectively or on a process-by- process basis –Executable –Arguments –Environment variables –User –Resource limits –Hosts for each process –Working directory Queries the state of a running process group, returning some startup parameters Delivers signals to all processes in a process group Terminates a process group After process group exit, can wait on the group to collect exit codes and output.
4 Process Manager Syntax The Process Manager uses the “less restricted syntax” style presented elsewhere Each message to it does three things: 1.Describes a process group specification to be matched or created 2.Conveys a command, with arguments 3.Specifies an object to be returned
5 Process Manager Commands CreateProcessGroup –Takes as input a ProcessGroupSpecification object –Returns a PGID GetProcessGroup –Takes as input a ProcessGroup object which is matched against –Returns a ProcessGroups container object containing requested fields from matched process group instances SignalProcessGroup –Takes as input a Process Group object which is matched against –Takes as argument a signal name and the scope of the signal (top- level processes or also forkees) –Returns requested fields from the process groups signaled
6 Process Manager Commands (cont.) KillProcessGroup –Terminates matching process groups Best effort to really kill processes, which may require repeated signalling –Returns the process groups matched WaitProcessGroup –Returns exit code information and stream output from matching completed process groups –Purges such information from the Process Manager state
7 Process Manager Datatypes ProcessGroupSpecification –Used as input to CreateProcessGroup ProcessGroup –Used as matching description and returned description in other commands
8 Process Manager Events Generated when a process group is successfully started: process-manager ProcessStart 29 Generated when a process group terminates: process-manager ProcessEnd 29