OpenTP1 Version 7 Description

[Contents][Glossary][Index][Back][Next]

3.4.5 Example of process control with the Multiserver facility

This subsection gives an example of how the Multiserver facility controls UAP (SPP or MHP) processes.

For example, suppose that:

The total of the resident processes for service groups G1, G2, and G3 is four, so two more processes can be activated dynamically before the maximum number (6) of concurrently executable processes is reached. Service groups G1, G2, and G3 use these two processes according to their scheduling priorities. Table 3-16 summarizes what happens, and a more detailed explanation of each step follows the table.

Table 3-16 Flow of process control

Steps in procedure Service group G1 Service group G2 Service group G3
1. Online processing starts. rr r r
2. G1 and G3 are requested to provide a service. RR r R
3. Service requests for G1 and G3 increase. RR [Figure] r R [Figure]
4. Service requests for G1 increase further. RR [Figure] [Figure] r R
5. G2 is requested to provide a service. RR [Figure] [Figure] R R
6. Service requests for G2 increase. RR [Figure] [Figure] R R
7. Service requests for G1 decrease. RR [Figure] R [Figure] R

Legend
r: Resident process standing by (active)
R: Resident process executing a service
[Figure]: Non-resident process executing a service

1. Online processing starts.
The resident processes for service groups G1, G2, and G3 are made ready at the start of the online processing. If necessary, two more processes can be started dynamically because the maximum number of executable processes is six but there are only four resident processes.

2. G1 and G3 are requested to provide a service.
The service is executed by the resident processes of G1 and G3.

3. Service requests for G1 and G3 increase.
To handle the service requests, non-resident processes are started for G1 and G3. The services are executed. The number of started processes can be up to the maximum permitted. In this case, since the total number of processes becomes 6, no more processes can be added dynamically.

4. Service requests for G1 increase further.
Because the number of processes has reached the maximum, no more processes can be added dynamically to handle the extra requests for G1.
G1 is provided with another process, however, because G1 has a higher schedule priority than G3. The non-resident process for G3 is terminated when the currently executing service finishes and a non-resident process for G1 is started.

5. G2 is requested to provide a service.
When a service request is sent to G2, the standing-by service is executed by the resident process of G2.

6. Service requests for G2 increase.
Because the number of processes has reached the maximum, no more processes can be added dynamically to handle the extra requests for G2.
G1 has a higher schedule priority than G2, so the non-resident processes for G1 are not terminated and a non-resident process for G2 is not started.

7. Service requests for G1 decrease.
Decreasing the number of service requests for G1 results in termination of a non-resident process for G1. When the currently executing service is completed for G1, the available non-resident process is started for G2.

Using procedures such as those described above, OpenTP1 can control processes and thereby efficiently process service requests for SPPs and MHPs.