Microwork, Inc.

47 West St. Andrews Lane.    Deerfirld, IL 60015.
Phone/Fax: (847) 940-8979       Email: microwrk@concentric.net
WEB: http://www.concentric.net/~microwrk

 

 

 

 

 

 

Job Scheduling Server

for

Windows NT

 

 

 

 

 

 

 

 

 

 

Product Overview

Job Scheduling Server for Windows NT (JSS) automates unattended batch job execution on Windows NT machines. Provided that there are no schedule data changes, the package can run in a fully automated mode, scheduling consecutive daily cycles without an operator intervention. The package also supports on-demand scheduling, allowing an operator to interactively schedule on-hock jobs to be executed for the current Schedule Cycle.

The package comes in two configurations:

A complimentary Job Scheduling Client sub-system runs on the WindowsNT and Windows 95/98 based machines. With the exception of job scheduling and several administrative functions, the Job Scheduling Client subsystem supports the same functionality as the Job Scheduling Server package. The Job Scheduling Client sub-system requires the Job Scheduling Server package to be install and activated on the network.

JSS is a Windows NT 32-bit multi-process and multi-thread software. It supports scheduling of multiple 32-bit and 16-bit jobs for concurrent execution on any Windows NT machine that runs JSS. The operator can control the maximum number of jobs that can be scheduled for concurrent execution on each particular machine.


Key Features:

The JSS Monitor program can run as a service, capable of scheduling jobs without a user being logged on the system. JSS Monitor and scheduled application jobs are able to access all needed network resources (subject to the network security restrictions).

The JSS operator is able to remotely control the entire scheduling process on the network from any JSS Server Machine.

Job logging. JSS captures screen output (including error messages) during each job execution and redirects it into a job’s log. The job log can be browsed not only for the ended jobs but also during the job execution. This feature is especially useful for long running jobs, since it allows an operator to see what a long running job is currently doing and make an appropriate decision. Logs of jobs that run on the network can be browsed remotely from any JSS Server Machine. They also can also be printed or unloaded to the ASCII files.

JSS lets the user to control the network target machine where the job should be scheduled. Several options are supported: on any available machine, on a specified machine, on any machine that belongs or does not belong to a particular group of machines (Node group).

Scheduling Multiple 32-bit and 16 bit jobs for concurrent execution on any JSS Server machine.
The number of jobs that can be scheduled for concurrent execution on each machine is controlled by the JSS administrator.

The Job Schedule Model is a set of rules (a template) that determines how to run a job regularly. The JobModel specifies: a CMD procedure to be executed, a run-time current directory, a time interval when the job can be scheduled (Schedule Window), how long the job can run (it will be canceled by the JSS as a run-away job if this time is exceeded), network machine(s) where the job to be scheduled, an optional job calendar, optional conditions for job scheduling (dependence on other jobs' return codes and presence/absence of multiple files), paging the user based on the finished job’s return code, and so on.

Figure 1. Job Schedule Model.

The "Schedule multiple times" check button (when checked) requests JSS to schedule multiple jobs based on this model. For this example, three jobs will be scheduled, within 39-minute intervals between scheduled jobs. The "Page the user" fields direct the scheduler to page the user (beeper phone number 1-312-834-7777) if the job ends with the return code equal to 0001.

The "Calendar" radio buttons indicate that a calendar is attached to this job. Jobs with no attached calendar will be scheduled on every working day. The Job Calendar (Figure 2) keeps a month-week-day set of dates when the job must be scheduled by JSS.

Figure 2. Calendar attached to the JobModel.

The screen presents four calendar types:
  Months of the year * Weeks of the month * Days of the week.
  Months of the year * Days of the month.
  Weeks of the year * Days of the week.
  Sequential days of the year.

The "Sequential days" calendar (calendar type 4) allows the user to specify the sequential days of the year when the job should be scheduled (Figure 3).

 

 

Figure 3. Sequential Days Calendar.

Below is the Conditional Job Scheduling screen (Figure 4).

 

Figure 4. Conditional Job Scheduling screen.

The Conditional Job Scheduling screen is also optional. For this example the screen specifies that the job should be scheduled only if the following conditions are met:

Company Holiday Schedule. The Company Holiday Schedule displays a list of non-working days for the current year (Figure 5). Typically, jobs are not scheduled for execution during holidays. However, the user can designate selective jobs to run during holidays.

Figure 5. Company Holiday Schedule.

Job Logging. JSS captures all screen messages produced by each running job and redirect them in the job’s log. Job logs can be seen for all currently running and finished networked jobs. Below is a screen that shows a list of jobs currently running on the network.

Figure 6. Currently running jobs


From this screen an operator can remotely hold and release jobs, terminate jobs, and browse the jobs logs.

Selecting a job and clicking the "Browse job" button displays the job’s data.

Figure 7. Browse running job screen.


Clicking the "BrowseLog" button displays the job's log.

Figure 8. Job’s log.

 

Displaying a list of jobs waiting to be scheduled.

Figure 9. List of waiting jobs.

 

Displaying a list of finished jobs.

 

Figure 10. List of finished jobs.


Figure 11. Browse finished job screen.

 

 

 

The package provides many additional functions such as:

Job Priority. Jobs can be scheduled with a normal or low priority. Jobs with the low priority runs when the system idles.

Repetitive Job Scheduling. Jobs can be scheduled multiple times during the schedule cycle (with the specified time interval between the scheduled jobs).

Holding and Releasing jobs. JSS lets an operator to "HOLD" a job waiting to be scheduled. Held jobs are nor scheduled until the operator "RELEASES" them.

Run-away job control. Each job is provided with a CPU run-time limit (in milliseconds). Jobs that exceed their CPU limit are automatically canceled by JSS as run-away jobs.

Security. The JSS Administrator controls the list of users authorized to use JSS and defines a set of JSS functions each user is allowed to perform

Paging the user. JSS can page the user based on the finished job’s return code. Paging is supported for standard numeric beepers.

JSS APIs - commands that control the scheduling process from the user programs.
They allow a developer to schedule jobs programmatically:
-- Schedule new jobs based on existing Job Models.
-- Schedule new non-model-based jobs.
-- Query the system about finished jobs return codes and other data.

"Non-active" JobModels. The JobModels that JSS does not schedule directly. These JobModels can be scheduled from specially developed programs that use JSS scheduling APIs. Non-active JobModels can also be scheduled as a result of the Chained Job Scheduling (see below).

Chained Job Scheduling. Each Job Model lets the user to specify a trailing job that must be scheduled when the main job ends with a specified return code. Chained job scheduling can also be used to setup a job recovery processing, when a trailing recovery job is scheduled based on the main job’s return code.

Disaster Recovery. The JSS Server machine can go down due to electric power failure, or other reasons. Jobs that have been scheduled (but not finished yet) when the machine went down, will be placed back to the Wait Queue during the JSS restart and recovery procedure. All recovered jobs have the "Hold" indicator turned "ON". The operator is able to browse these jobs, perform necessary actions to prepare the job to run again, and release them (so, they can be scheduled again).

 

 

 

 

Operating Requirements

Hardware:

The package runs on the IBM PC compatible machines capable of running the Windows NT Server or Windows NT Workstation operating systems. Pentium 2 machines with 64-120 MB memory and the SVGA monitor supporting a high-resolution screen (1024 by 768 pixels or higher) are recommended.

Supported network:

NOVELL, Microsoft, IBM LANs. Network hardware architecture is not significant.

Technical support: :(312) 822-6356

Phone/Fax: (847) 940-8979.

E-mail: microwrk@concentric.net.