Background/Phantom Process Overview

A phantom process is a process that is initiated at a terminal and detaches itself from that terminal for execution independent of that terminal. It is processed as a background task and the results display on the initiating terminal when the process is complete.

The phantom process scheduler is the background process that handles the phantom jobs submitted using the z command from TCL. This process is usually started in the system-coldstart macro by the start.ss program.

Phantom jobs are started using the z command from TCL.

A phantom job runs if there is an available phantom port or line. If there is no phantom port or line available, the phantom job is enqueued until one becomes available.

For UNIX: If the first available line does not have a PID, and a line number was not specified with the x command, the next available line is used.

The scheduler process sleeps until a running job completes or until a new job enters the queue. When a phantom job completes, it wakes the scheduler and logs itself off. The process is now available for other phantom tasks.

When a phantom job is executed:

When a phantom process has finished, the status in the jobs file is updated to logged off. Next, the phantom is awakened and workspace is returned to overflow.

When the scheduler releases a phantom job back to overflow, the item whose port number is the item-ID of the job is deleted from the jobs file.

The p option in the users file terminates phantom processes, rather than forcing a sleep when a BASIC input, a file inconsistency, or any other error that prompts for input is encountered.

See Also

clear-jobs Command, end Command, job-status Command, jobs File, list-jobs Macro, logon Command, phantom-reset Command, phantom-status Command, Port Number, start.ss Command, startsched Command, stopsched Command, system-coldstart Macro, tcl Command, tcls Command, u0010 User Exit, users File, z Command