Starting and Stopping POSIX

This document covers the following topics:


POSIX Server Initialization

In Batch

For OS/390 or MVS/ESA batch, any POSIX server-enabled program may be

  • started by first invoking the POSIX server kernel module PABNKERN as shown in the sample job PJBNRUN.

  • invoked directly using the EXEC PGM= statement. The POSIX server is then initialized the first time a POSIX server request is issued.

    For VSE/ESA batch, any POSIX server-enabled program may be

  • started by first invoking the POSIX server kernel module PAVNKERN as shown in the sample job PJBNRUN.J.

  • invoked directly using the `EXEC pgm' statement. The POSIX server is then initialized the first time a POSIX server request is issued.

For batch in other environments, see the documentation for the particular Software AG application product that uses SMARTS.

In CICS

The POSIX environment is initialized by the PACNKERN program, which can be invoked by a CICS transaction (SMGO) or by placing the program PACNSMGO in the CICS PLTPI table.

In the SMARTS Server Environment

The POSIX server is normally initialized by specifying a SMARTS statement such as

SERVER=(Posix,PAENKERN)

- where

Posix is the name of the SERVER. The name of the server may be any name valid for the SERVER statement.
PAENKERN is the name of the POSIX server kernel module. The POSIX server module must always be specified as PAENKERN.

If inactive for any reason, the server may also be started using the SMARTS operator command

SERV,INIT,Posix,PAENKERN

- where the meaning of the parameters is the same as previously outlined for the SERVER statement.

If the POSIX Server Initialization Fails

If the POSIX server initialization fails, the POSIX server configuration is probably invalid:

  • Check for messages during the POSIX server initialization process that may identify the problem.

  • Check in particular for sockets errors that occur if the incorrect TCP/IP stack is identified to the POSIX server and/or the incorrect address space or subsystem name is supplied for the appropriate TCP/IP stack.

POSIX Server Termination

In Batch

For OS/390 or MVS/ESA batch, if the POSIX server was invoked using the PABNKERN module, the POSIX server-enabled program terminates first, giving control to the routine that terminates the POSIX server subsystem.

For VSE/ESA batch, if the POSIX server was invoked using the PAVNKERN module, the POSIX server-enabled program terminates first, giving control to the routine that terminates the POSIX server subsystem.

If the POSIX server was initialized implicitly by a POSIX server-enabled program, the initialization process ensures that a batch-specific routine receives control after the POSIX server-enabled program is terminated in order to terminate the POSIX server and return control to the operating system.

For batch in other environments, see the documentation for the particular Software AG application product that uses SMARTS.

In CICS

The POSIX environment is terminated by the PACNKERX program, which can be invoked by a CICS transaction (SMEX) or by placing it in the CICS PLTSD table.

In the SMARTS Server Environment

The POSIX server is terminated automatically when the SMARTS address space is terminated; however, it is also possible to cycle the server without bringing the address space down by issuing the SMARTS operator command

SERV,TERM,Posix

- where `Posix' is the name given to the server at startup.

Notes:

  1. When this command is issued, current users of the POSIX server are either canceled or ignored. Attached processes are canceled while terminal users are ignored causing their entire session to be terminated. Consider using the POSIX server operator command QUIESCE for a period prior to actual termination.
  2. The POSIX server does not terminate until all users of its services have terminated. The user should issue the termination command again once it appears that all POSIX users have terminated. It is possible to FORCE it down using the POSIX server operator command FORCE ; however, Software AG does not recommend this as the results are unpredictable.
  3. The POSIX server does not terminate if there are dependent services still active. For example, if HTTP servers are still active, the POSIX server will not terminate until these are terminated. Again, the POSIX server operator command FORCE may be used, although Software AG does not recommend it.