Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Job-Streams

BS2000 wird mit vordefinierten Job-Klassen geliefert. Wenn in einem BS2000-System keine Job-Klassen definiert sind, so werden alle Aufträge der Klasse $SYSJC zugeordnet (auf die der Anwender keinen Zugriff hat) und vom fest mit dem System gekoppelten System-Job-Scheduler $SYSJS verwaltet.

Der System-Job-Scheduler ist eine System-Task und läuft privilegiert im Funktionszustand TPR. Seine auf dem LIFO-Prinzip (Last in first out) beruhende Auswahlstrategie ist nicht beeinflussbar.

Unabhängig von definierten Job-Klassen und eventuell realisierten Auswahlstrategien lässt der System-Job-Scheduler während des gesamten Systemlaufs das Starten von Aufträgen unter der Kennung TSOS zu.

Definierte Job-Klassen mit dem Parameter JOB-TYPE=*BATCH werden einem Job-Stream (auch Job-Scheduler genannt) zugeordnet (STREAM=name). Eine Job-Klasse kann nur einem Job-Stream angehören, aber ein Job-Stream kann mehrere Job-Klassen verwalten.

Die Bearbeitung der Jobs im Stream (Sortieren nach vorgegebener Auswahlstrategie) übernimmt der Standard-Job-Scheduler. Der Standard-Job-Scheduler ist ein Anwenderprogramm und läuft im Funktionszustand TU unter der Kennung TSOS. Die Auswahlstrategie wird durch den Stream-Parameter (STREAM-PARAMETER) bestimmt. Er wird durch das Dienstprogramm JMU (//DEFINE-JOB-STREAM) eingestellt.

Um verschiedene Auswahlstrategien zu realisieren, können die bei der Stream-Definition festgelegten Scheduling-Parameter dynamisch geändert werden (//MODIFY-JOB-STREAM des Dienstprogramms JMU).

Bis zu 16 Job-Streams können maximal gleichzeitig installiert sein.

Auswahl-Strategien (STREAM-PARAMETER='...')

  • Auswahl nach Ankunftszeit

    JOB-PRIORITY=NO,CPU-TIME=NO,WAIT-TIME=NO

    WAIT-TIME ist die Wartezeit des Auftrags nach Annahme.
    Diese Strategie empfiehlt sich, wenn die CPU-Zeitanforderungen der Aufträge in etwa gleich sind.

  • Auswahl nach Priorität

    JOB-PRIORITY=YES,CPU-TIME=NO,WAIT-TIME=NO

    Gewährleistet die Bevorzugung wichtiger Jobs.

  • Auswahl nach CPU-Zeitbedarf

    JOB-PRIORITY=NO,CPU-TIME=YES,WAIT-TIME=NO

    Jobs mit geringeren CPU-Zeitanforderungen werden vorgezogen.

  • Auswahl nach Priorität und CPU-Zeitbedarf

    JOB-PRIORITY=YES,CPU-TIME=YES,WAIT-TIME=NO

    Bei Aufträgen mit gleicher Job-Scheduling-Priorität entscheidet der geringere CPU-Zeitbedarf. Bei gleichem CPU-Zeitbedarf ist die höhere Priorität maßgebend.

  • Auswahl nach Priorität und Wartezeit

    JOB-PRIORITY=YES,CPU-TIME=NO,WAIT-TIME=YES

    Durch Einbeziehung der Wartezeit nach der Job-Annahme haben auch niederpriore Aufträge die Chance, ausgewählt zu werden.

  • Auswahl nach Durchsatz

    JOB-PRIORITY=NO,CPU-TIME=YES,WAIT-TIME=YES

    Bevorzugung von Aufträgen mit geringem CPU-Zeitbedarf unter Einbeziehung der Wartezeit nach der Annahme.

  • Auswahl nach Durchsatz und Priorität

    JOB-PRIORITY=YES,CPU-TIME=YES,WAIT-TIME=YES

    Zusätzlich zur Auswahl nach Durchsatz wird die Job-Scheduling-Priorität berücksichtigt.

Der Job-Scheduler übergibt die von ihm ausgewählten und sortierten Jobs an den Klassen-Scheduler.

Der Klassen-Scheduler ist keine eigene Task, sondern gehört zum Kern des Job-Managements. Er sorgt für die Einhaltung des von der Systembetreuung gewünschten Job-Mixes (über die CLASS-LIMIT-Parameter der einzelnen Job-Klassen).

Bei der Auflösung von Stau-Situationen nach einer Systemsättigung (Sättigung des Seitenwechselbereichs) bestimmt der Parameter CLASS-WEIGHT die Dringlichkeit der einzelnen Job-Klassen.