Key Variables Affecting Performance
_BPX_SHAREAS
This variable controls whether a spawned child process will be started in
the same address space as the login shell. The OMVS command, which is used
to start an OpenEdition shell from TSO, also has a SHAREAS/NOSHAREAS option.
Some functions will not work in a SHAREAS=YES environment:
- Functions which change the security environment
- For example, newgrp cannot be issued when _BPX_SHAREAS=YES, because all
processes running in the address space would have their security environment
altered. Similarly, SETUID or SETGID programs must run in a separate address
space. APF considerations may prevent the use of SHAREAS=YES.
- Functions that require exclusive use of address space resources
- For example, if a process requires a large amount of memory, it may
not be able to execute in the same address space as the original TSO session.
Also, processes running in the same address space share the same data set
allocations so they are responsible for coordinating their use.
Some functions will behave differently in a SHAREAS=YES environment:
- CPU time accumulation
- The CPU time limit for an address space applies to the total CPU
consumed by all processes running in that address space. However, OMVS
services that affect the CPU time limit only examine the CPU time
consumed by the current process.
- Virtual memory protection
- A process may be able to overwrite memory in use by another process
running in the same address space. It may be desirable to isolate an
application from other processes while it is being debugged.
_BPX_SPAWN_SCRIPT
This variable controls whether a shell script will be run directly by the
spawn callable service. Setting _BPX_SPAWN_SCRIPT=YES improves performance,
but may produce undesirable behaviour under certain circumstances -
for instance, when spawn is being invoked from an application that is not
intended to support shell script invocation.
These functions cannot be used with the tcsh shell.