> Tech > Améliorer le contrôle des jobs avec la nouvelle interruption de job de la V5R4

Améliorer le contrôle des jobs avec la nouvelle interruption de job de la V5R4

Tech - Par Jason Spieth - Publié le 24 juin 2010
email

Avez-vous compté le nombre de fois que votre collègue démarre un job interactif juste avant de quitter le bureau, vous empêchant ainsi d’effectuer une opération de sauvegarde du système ? Avez-vous exprimé votre désir d’interrompre des jobs pour appeler un programme dans un autre job ? Avez-vous très envie d’une information non disponible de l’extérieur d’un job, comme la bibliothèque QTEMP d’un job ? Si oui, vous n’êtes pas le seul dans ce cas.L’iSeries peut exécuter une variété d’objets programme (*PGM) et contrôler dans quel job un programme s’exécute. Le prédémarrage des jobs est l’une des méthodes retenues par l’iSeries. Quand un job est prédémarré, le travail est transmis à un job disponible choisi dans un pool de jobs en attente. La commande SBMJOB (Submit Job) permet aux utilisateurs de spécifier les détails du nouveau job batch où le programme s’exécute. De même, la commande SMBDBOBJ (Submit Database Job) lit un flux d’entrée provenant d’une base de données spécifiée et l’exécute dans un nouveau job.

Ces méthodes présentent deux inconvénients : soit un job entièrement nouveau est démarré, soit un job est pris au hasard dans un pool de jobs – sans aucun contrôle de l’utilisateur. D’où un problème quand un utilisateur veut exécuter un programme dans un job spécifique déjà actif.

L’interruption de jobs de la V5R4 permet aux utilisateurs d’interrompre un job pour exécuter un programme de sortie défini par l’utilisateur, contrôler un autre job, cibler un travail pour un job spécifique, gérer les jobs actifs, et extraire des éléments d’information spécifiques.

Améliorer le contrôle des jobs avec la nouvelle interruption de job de la V5R4

Par défaut, le système n’est pas en mesure d’interrompre des jobs pour exécuter des programmes de sortie définis par l’utilisateur. C’est-à-dire tout programme écrit par l’utilisateur, enregistré avec un point de sortie. Pour éviter que l’on n’abuse de l’interruption d’un job pour exécuter un programme de sortie défini par l’utilisateur, il faut changer plusieurs paramètres système liés à l’interruption du job. En outre, seuls certains types de programmes pourront s’exécuter dans ces conditions.

Allow Jobs to be Interrupted. La valeur système QALWJOBITP (Allow Jobs to be Interrupted) spécifie comment le système réagit quand vous initialisez une requête d’interruption d’un job pour exécuter un programme de sortie défini par l’utilisateur. La valeur système QALWJOBITP est également utilisée pour définir l’état d’interruption d’un job individuel d’après la valeur courante de la valeur système quand le job devient actif.

Les changements apportés à la valeur système QALWJOBITP prennent effet immédiatement, mais ne modifient en rien l’état d’interruption des jobs actifs. En effet, pour changer cette valeur système, il faut disposer de toutes les autorités spéciales objet (*ALLOBJ) et administrateur sécurité (*SECADM).

Vous pouvez changer cette valeur système avec la commande DSPSYSVAL (Display System Value), WRKSYSVAL (Work with System Value) ou CHGSYSVAL (Change System Value). La valeur QALWJOBITP peut être mise à

• 0 – le système ne permettra pas d’interrompre des jobs pour exécuter des programmes de sortie définis par l’utilisateur. Tous les nouveaux jobs devenant actifs seront non interruptibles par défaut.

• 1 – le système permettra d’interrompre des jobs pour exécuter des programmes de sortie définis par l’utilisateur. Tous les nouveaux jobs devenant actifs seront non interruptibles par défaut.

• 2 – le système permettra d’interrompre des jobs pour exécuter des programmes de sortie définis par l’utilisateur. Tous les nouveaux jobs devenant actifs seront interruptibles par défaut.

Jobs Interrupted Program Exit Point. Les programmes définis par l’utilisateur que vous voulez exécuter dans un job interrompu, doivent être ajoutés au point de sortie Job Interrupt Program (QIBM_QWC_JOBITPP GM). Vous pouvez ajouter de nouveaux programmes au point de sortie via la commande WRKREGINF (Work with Registration Information). Le point de sortie constitue un endroit sûr pour définir et gérer les programmes capables d’interrompre des jobs. Les utilisateurs doivent avoir des autorités spéciales *ALLOBJ et *SECADM pour ajouter des programmes de sortie à la fonction d’enregistrement, ou pour en retirer. Tout programme ajouté au point de sortie doit résider dans l’ASP système (*SYSBAS). Les points de sortie acceptent un nombre quelconque de programmes de sortie.

Le point de sortie définit également les paramètres que le programme accepte. Le premier paramètre indique les données du point de sortie transmises au programme de sortie. Si la longueur des données du programme de sortie est zéro, le premier paramètre contiendra un octet représenté par un zéro binaire. Le second paramètre est la longueur des données du programme de sortie.

Change Job Interrupt Status. L’API Change Job Interrupt Status (QWCCJITP) extrait et modifie éventuellement l’état d’interruption de jobs du job courant. Un job ne peut être interrompu que si la valeur système QALWJOBITP est mise sur Allow Job Interruption. Si la valeur système QALWJOBITP spécifie que le système ne permettra pas d’interruption de jobs pour exécuter des programmes de sortie définis par l’utilisateur, vous pourrez quand même changer l’état d’interruption d’un job individuel avec QWCCJITP. Le système ignorera cette valeur jusqu’à ce que la valeur système QALWJOBITP permette l’interruption des jobs.

Si un job est actuellement non interruptible, tout programme appelé par l’API Call Job Interrupt Program (QWCJBITP) ne pourra pas s’exécuter dans ce job. Les programmes appelés par QWCJBITP peuvent s’interrompre et s’exécuter dans des jobs modifiés pour être interruptibles. Si vous ne voulez absolument pas qu’un job soit interrompu, réglez son état d’interruption en conséquence. (Pour plus d’informations sur ces API et les autres évoquées dans cet article, allez à l’iSeries Information Center.)

Téléchargez gratuitement cette ressource

Le XDR au service de la Sécurité IT

Le XDR au service de la Sécurité IT

Découvrez comment mettre à profit le Machine Learning et un traitement analytique orienté sécurité pour corréler les événements, tout en automatisant et en accélérant les processus de détection et de réponse.

Tech - Par Jason Spieth - Publié le 24 juin 2010