cours sous-système 3ème partie (table de routage)

BoTTom |    Changer de couleur
 
1.3. LA TABLE DE SELECTION
--------------------------
 
 
LA TABLE DE SELECTION EST COMPOSEE DE POSTES DE SELECTION QUI SPECIFIENT
LES PARAMETRES UTILISES POUR INITIALISER UN TRAVAIL.
 
PAR EXEMPLE ILS SPECIFIENT LE PROGRAMME A EXECUTER INITIALEMENT, LA
CLASSE, LE POOL MEMOIRE DU SOUS-SYSTEME UTILISE.
 
CHAQUE POSTE DE SELECTION SERA AJOUTE AU SOUS-SYSTEME GRACE A LA COMMANDE
 
  ADDRTGE
 
 
 
 
 
 
 
 


|    Changer de couleur
 
1.3.1. ADDRTGE
--------------
 
      FORMAT DE LA COMMANDE :
 
         ADDRTGE SBSD(nom du sous-système)
 
                 SEQNBR(numéro de séquence)
 
                 CMPVAL(*ANY
                    ou valeur de comparaison et position de début)
 
                 PGM(un nom de programme)
 
                 CLS(*SBSD
                  ou un nom de classe)
 
                 MAXACT(*NOMAX
                    ou maximum de jobs actifs)
 
                 POOLID(identifieur de pool)


|    Changer de couleur
 
 
      QUELQUES PRECISIONS SUR LES PARAMETRES SEQNBR, CMPVAL, CLS
                                              MAXACT, POOLID
 
 
             SEQNBR  Indique le numéro de séquence du poste dans la
             ------  table. Les postes dans la table sont recherchés
                     dans l'ordre des numéros. Si plusieurs postes
                     ont la même valeur de comparaison c'est le premier
                     trouvé qui est choisi.
 
 
             CMPVAL  Indique une valeur qui sera comparée avec la Routing
             ------  Data pour déterminer quel poste sera utilisé pour
                     initialiser le travail.
 
                     *ANY indique  n'importe quelle Routing Data.
                          Pour spécifier *ANY vous devez attribuer au
                          poste le plus grand numéro de séquence (9999).
 
 


|    Changer de couleur
 
 
             CLS     Indique le nom de la classe utilisée pour le travail.
             ---
                     *SBSD indique que le nom de la classe est le même
                           que le nom du sous-système.
 
 
             MAXACT  nombre de jobs maximums qui peuvent être actifs à
             ------  partir de ce poste de sélection.
 
 
             POOLID  indique l'identifiant du pool, défini dans la
             ------  description du sous-système, dans lequel le
                     travail doit s'exécuter.
 
 
 
 
 
 
 


|    Changer de couleur
1.3.2. LA CLASSE
----------------
 
        LA CLASSE EST UN OBJET DE TYPE *CLS QUI DEFINIT LES PARAMETRES
        D'EXECUTION D'UN TRAVAIL.
 
LA COMMANDE CRTCLS
------------------
 
            CRTCLS CLS(nom de la classe)
 
                   RUNPTY(priorité d'exécution, chiffre entre
                          01 et 99)
 
                   TIMESLICE(10000
                          ou nombre de millisecondes)
 
                   PURGE(*YES ou *NO)
 
                   DFTWAIT(nombre de secondes par défaut 120
                         ou *NOMAX)
 


|    Changer de couleur
 
                   CPUTIME(*NOMAX
                        ou temps maximum d'utilisation de la CPU)
 
                   MAXTMPSTG(*NOMAX
                         ou maximum de mémoire auxiliaire utilisée par
                            le job)
 
            QUELQUES PRECISIONS SUR LES PARAMETRES RUNPTY TIMESLICE
                                                   PURGE ET DFTWAIT
 
 
             RUNPTY   Indique la priorité d'exécution pour un travail
             ------   La plus haute étant 01 (celle du système) et
                      la plus basse 99.
 
                      Lorsque deux travaux sont en concurrence pour un
                      niveau d'activité de la machine c'est celui qui
                      a la plus haute priorité qui devient actif
 
 
 


|    Changer de couleur
 
                      Prenons un exemple :
 
             écran01     écran02    écran03    écran04
            --------    --------   --------   --------
            !      !    !      !   !      !   !      !
            /-----/     /-----/    /-----/    /-----/
           -------     -------    -------    -------
              !            !         !          !
              ------------------------------------
              !         POOL 1                   !
              !    NIVEAU D'ACTIVITE 2           !
              ------------------------------------
 
          ACTIF            INELLIGIBLE           LONGUE ATTENTE
        ECRAN01            ECRAN04 (20)             ECRAN02
        ECRAN05            ECRAN03 (10)                 ^
          !                                             !
          !----------------------------------------------
          ECRAN05 passe en longue attente (un niveau d'activité se libère)
 
 


|    Changer de couleur
 
 
 
             écran01     écran02    écran03    écran04
            --------    --------   --------   --------
            !      !    !      !   !      !   !      !
            /-----/     /-----/    /-----/    /-----/
           -------     -------    -------    -------
              !            !         !          !
              ------------------------------------
              !         POOL 1                   !
              !    NIVEAU D'ACTIVITE 2           !
              ------------------------------------
 
          ACTIF            INELLIGIBLE           LONGUE ATTENTE
        ECRAN01            ECRAN04 (20)             ECRAN02
        ECRAN03 <-------------                      ECRAN05
 
                C'est ECRAN03 qui profite de cette place libre
                 car il est prioritaire(10) à ECRAN04(20).
 
 


|    Changer de couleur
 
             TIMESLICE  Temps maximum d'activite accordé à un travail.
             ---------
                         RAPPEL. Un travail est Actif jusqu'à ce qu'une
                                 demande de Longue Attente soit
                                 effectuée. Pour les travaux batch ou
                                 les travaux semi-interactifs le timeslice
                                 va permettre de libérer un niveau
                                 d'activité au bout d'un certain
                                 nombre de millisecondes, si le travail
                                 ne passe pas de lui-même en longue attente.
 
 
             PURGE    Indique si, quand le travail perd son niveau
             -----    d'activité (longue attente ou fin de time slice) le
                      système doit transférer sur disque les informations
                      concernant ce job (PAG).
 
 
             DFTWAIT  Temps maximum d'attente pour le déroulement complet
             -------  d'une instruction du système.
 


|    Changer de couleur
 
 Quand un job arrive dans un sous-système (fonction de ADDJOBQE,ADDWSE,...)
  le système compare les postes de sélection du sous-système avec le
  paramètre RTGDTA, dans l'ordre des n° de séquence.
 
 Si aucun poste ne correspond, la phase d'activation se termine ANORMALEMENT!
      -----------------------------------------------------
      ! SEQNBR   CMPVAL   PGM    CLS     MAXACT  POOLID   !
      !---------------------------------------------------!
      !  10      QCMDI    QCMD   QINTER  *NOMAX   1       !
      !                                                   !
      !  20      QCMDB    QCMD   QBATCH  *NOMAX   2       !
      !                                                   !
      !  30      QCMD38   QCL    QBATCH  *NOMAX   2       !
      !                                                   !
      ! 100      TRUC     CLP045 QINTER       2   1       !
      !                                                   !
      ! 999      *ANY     QCMD   QBATCH  *NOMAX   2       !<-- toujours vrai
      !                                                   ! (à placer en
      !                                                   !   fin de table)
      !---------------------------------------------------!
 


|    Changer de couleur
 
   Quelques commandes utiles :
 
   si votre job s'aperçoit en cours de traitement qu'il doit changer de
    sous-système (ou de pool système), cela est possible.
 
 
   TFRJOB JOBQ(__)  RTGDTA(QCMDI) RQSDTA(*NONE) > pour un job interactif
 
          (il faut avoir prévu une entrée JOBQ pour le sous-système).
 
 
   TFRBCHJOB        RTGDTA(QCMDB) RQSDTA(*NONE)  > pour un job batch
 
 
 
   RRTJOB  RTGDTA(QCMDI) RQSDTA(*NONE)      > pour re-passer dans la table
                                              de routage du MEME sous-systèm
 
   ...............................................................
   :  ATTENTION: commandes invalides avec des travaux de groupe. :
   :.............................................................:





©AF400