Process Manger
The process manager component manages process groups defined associated with STCI sessions. It is responsible for
- Creating new process groups, when new sessions are started
- Expanding existing process groups
- Shrinking existing process groups
Creating a new process group can have several flavors:
- Creating a new process group, given a list of process handles
- Creating a new process group by adding processes to an existing process group
Expanding an existing process group can have several flavors
- Adding new processes to an existing process group, with out creating a new process group handle
- Combining two process groups, to form a new process group
Shrinking an existing process group can have several flavors
- Removing processes from an existing process group, with out creating a new process group handle
- Removing processes from an existing process group, forming a new process group
Mechanism for creating a new process group:
- The root for the requests forms a request. This includes a list of processes and a string indentifier.
- The request is sent to the group-server
- The group-server checks to see if the request is unique
- A unique request is assigned a new handle
- A duplicate request is assigned the previously assigned handle
- The handle is passed back to the requestor
- The requesting root broadcasts the handle to all memebers of the group
- The process creation active message handle is invoked by the Agents at the receiver, after the library sets up its internal data structures for the new group.