Activating/deactivating the global program cache
The initial status of the global program cache and the implicit linker process are defined in the POSIX information file as follows
DBLSTATE | | | initial state of POSIX loader | | | status |
If status is set to “1”, both the implicit linker process and the loader process will be activated. If status is set to “0”, both processs are deactivated.
Later status changes to the implicit linker process and to the loader process can be performed together or separately, using the posdbl command.
To activate/deactivate the implicit linker and loader processes together:
posdbl {-e|-d} both
To activate/deactivate the implicit linker process:
posdbl {-e|-d} linker
To activate/deactivate the implicit loader process:
posdbl {-e|-d} loader
Explicit linker processes are always executed disregarding their status.
Activating/deactivating user-specific program caches
After setup, a user-specific program cache is activated. This means that during loader processes the program cache will be searched for appropriate core images. The user-specific program cache can be deactivated with the command pdbl.
USERWIDE (deactivating user-specific program cache of the user ID):
pdbl -u -d
SESSIONWIDE (deactivating user-specific program cache of a session):
pdbl -s[
sid] -d
If sid is not indicated, the current session will automatically be used.
If an empty program cache is deactivated, it will be deleted and must be set up again to be activated. If an occupied program cache is deactivated, it will not be taken into consideration until it is activated again during a loader process. Linker processes are always executed irrespective of their status.
Activation with the pdbl command is performed as follows:
USERWIDE (activating user-specific program cache of the user ID):
pdbl -u -a
SESSIONWIDE (activating user-specific program cache of a session):
pdbl -s[
sid] -a
If sid is not indicated, the current session will automatically be used.
Once it has been activated, the program cache will be taken into consideration during loader processes.
Querying the global program cache status
The command call
posdbl -s
outputs the status of the global program cache and the implicit linker process.
It will also output statistical data about size and allocation as shown in the following example:
|
Querying the status of user-specific program caches
The pdbl command outputs information about user-specific program caches. In the following example, a 10 MB size program cache with the scope USERWIDE is first created. Then, the current program cache information is requested. After this, the program cache is deactivated and the updated information is requested again:
|
For a program cache with the scope SESSIONWIDE, current information can be queried with the command call
pdbl -s[sid] -i
If sid is not indicated, the current session will automatically be used.
Listing core images in the global program cache
A list of all core images stored in the global program cache is requested with the posdbl command. The following example shows zwei core images which were saved from the shell library to the global program cache by the implicit linker process. The third core image was explicitly saved with the command call
posdbl -b /opt/C/bin/snet
in the global program cache.
|
Detailed information about a core image can be requested with the command call
posdbl -l
element
Element is the name of the core image as indicated in the listing.
|
Listing core images in user-specific program caches
A list of all core images stored in user-specific program cache is requested with the pdbl command.
USERWIDE SESSIONWIDE |
If sid is not indicated, the current session is used automatically. |
In the following example, for session 541 a 10 MB size program cache is set up. The core image of the program snet is stored to memory, the status information and subsequently, a list of stored core images is requested:
|
In order to request detailed information about a core image in a user-specific program cache, use the pdbl command:
USERWIDE SESSIONWIDE |
If sid is not indicated, the current session is used automatically. |
Element is the name of the core image as indicated in the listing.
|
Listing defined libraries for the implicit link operation in the global program cache
The libraries for which the implicit link operation is activated are listed using the posdbl command:
# posdbl -L $TSOS.SINLIB.POSIX-SH.080 $TSOS.SINLIB.POSIX-BC.090.SHELL
Activating the implicit link operation for a library in the global program cache
If the implicit link operation has been activated for a library, all the programs contained in this library will be loaded automatically into the program cache when they are executed.
The implicit link operation for an additional library is activated using the posdbl command:
# posdbl -A \$TSOS.SINLIB.POSIX-BC.090.ROOT
$TSOS.SINLIB.POSIX-BC.090.ROOT: Successfully added.
Deactivating the implicit link operation for a library in the global program cache
The implicit link operation for a library is deactivated using the posdbl command:
# posdbl -R \$TSOS.SINLIB.POSIX-BC.090.ROOT
$TSOS.SINLIB.POSIX-BC.090.ROOT: Successfully deleted.
Deleting core images in the global program cache
Core images in global program cache are either singly or collectively deleted with the posdbl command:
posdbl -r
element
During a single deletion, element is the name of the core image as given in the list output with the posdbl -l command. All core images are deleted if an asterisk (*) is indicated as element.
Deleting core images in user-specific program caches
Core images in user-specific program caches can be deleted either singly or collectively with the pdbl command:
USERWIDE SESSIONWIDE |
If sid is not indicated, the current session is used automatically. |
When deleting single images, element is the name of the core image as indicated in the list of core images. If element is given as an asterisk (*), all core images will be deleted.
Modifying the size of the global program cache
When required, the size of the program cache can be modified during ongoing operation.
To do this, execute the following statements: | |
usp -p DBLPOOL -v wert | |
or | |
usp -P DBLPOOL -v vale | (1) |
posdbl -S >scriptname | (2) |
posdbl -D | (3) |
posdbl -n | (4) |
scriptname | (5) |
posdbl -e linker | -e loader | both | (6) |
(1) | The new size of the program cache is defined. When the -p option is specified, the old size is set again after the POSIX subsystem has restarted. When -P is specified, the the new size applies event after a restart. |
(2) | The scriptname script is generated and can be used to restore the current content of the program cache. |
(3) | The current program cache is deleted. |
(4) | A new program cache is created with the size specified in step (1). |
(5) | The scriptname script is called in order to restore the previous content of the program cache. |
(6) | When the program cache is created with posdbl -n, the linker and loader are deactivated and must be reactivated if required. |
Deleting the global program cache
The global program cache is maintained throughout the runtime of the POSIX subsystem. The global program cache is deleted when the POSIX subsystem terminates.
Deleting user-specific program caches
To delete user-specific program caches, use the pdbl command:
USERWIDE |
If the user-specific program cache of the user ID is empty, it will be deleted. If it is not empty, it will be deactivated.
Unconditionally deletes the user-specific program cache of the user ID. |
SESSIONWIDE |
If the user-specific program cache of the session sid is empty, it will be deleted. If it is not empty, it will be deactivated.
Unconditionally deletes the user-specific program cache of the user ID. If sid is not indicated, the current session is used automatically. |