B: status = task( program [, switch, coresize, loadersize, banner, ident] );
C: int task(const char *program [, int switch, int coresize, int loadersize, const char *banner, void *ident] );
TASK is used to submit a job to batch from TSS via Derail TASK. Before calling TASK, you must first build up a list of files to be associated with filecodes by calling the library function ATTACH. The only exception is filecode "$S", which is supplied by TASK. If more than one job is being submitted by the same program, you must issue a call of the form
i.task();
to reinitialize the TASK file list. I.TASK is called secretly the first time ATTACH is called.
The snumb (job number) is printed on the terminal when a job is submitted, and the termination message is printed when the job returns.
Derail TASK is typically used to access TSS language processors, such as Fortran, which do not run in TSS. A batch job which is a Derail TASK has word zero of the IDENT card image in its "slave prefix" set to -1. Several language processors recognize that they are TASK jobs and will call the batch loader when they are done if the execute bit in the switch word is set on. Others do not, so an additional TASK is required if the batch loader is desired.
When your system is configured, your site sets a maximum memory size and CPU time on TASK jobs; contact your site administrator to find out what the limits are for your site. Any time a TASK job accesses a file dynamically in batch, it must later deaccess the file too; otherwise, the file will stay busy until the next time the system is booted. A TASK job must not deaccess a file that was accessed by some other job, and vice versa.
Copyright © 1996, Thinkage Ltd.