Débogage au niveau du système avec CODB
La transaction de débogage CODB vous permet d'afficher et de modifier la mémoire.
La transaction est gérée par menu et vous permet de choisir diverses zones de données CICSplex à l'aide de touches de fonction programmables ou de mots clés de ligne de commande.
COMMAND==> COMP ID==> ADDR==> ALET==> 00000000
1. XLWA
2. MODB
3. MOEB
4. OPB
5. EIS
6. EIB
7. STAKSTRT
8. STAKEND
9. MODD
10. MAL
11. PFKON
12. PFKOFF
13. END
14. CMASSTOP
15. TRACE
16 QUES
17 MENU
P1=TOP P2=BOTM P3=END P4=PREV P5=NEXT P6=TOKEN P7=BACK P8=FRWD
P9=JUMP P10=DSJUMP P11=ALTER P12=ALET/OFFSET
MSG==>
Le premier champ est pour la commande, le second est pour un ID composant (qui est requis pour certaines commandes), le troisième est pour l'adresse (ou décalage de mode AR), et le dernier est pour un ALET ou des zéros.
Zones du menu CODB
- Nom de la zone
- Commande
- Voir Commandes CODB.
- ID COMP (ID composant)
Les commandes CODB qui affichent les blocs de contrôle CICSPlex ® SM (tels que MODB et MOEB) nécessitent que vous indiquiez un ID composant de trois caractères dans la zone ID COMP.
Pour obtenir la liste des ID de composant valides, voir Référence: Composants communs CICSPlex SM.
Une fois que vous avez spécifié un ID de composant, il reste affiché jusqu'à ce que l'une des situations suivantes se produise:- Un nouvel ID de composant est spécifié.
- La zone ID COMP est vidée.
- Un affichage de la mémoire est demandé.
- Une commande est entrée qui ne requiert pas d'ID de composant.
Ainsi, il est possible d'afficher différents blocs de contrôle appartenant à un seul composant en établissant le composant ID puis en émettant des commandes différentes.
- ADDR (Adresse)
Cette zone est destinée à l'adresse (ou au décalage de mode AR).
La saisie d'une valeur dans la zone ADDR génère un affichage de la mémoire à l'adresse indiquée, à l'aide de l'ALET en cours.
Si l'adresse est inaccessible, un message s'affiche dans la zone MSG en bas de l'écran.
L'adressage relatif est également pris en charge dans la zone ADDR. Vous pouvez entrer une quantité de défilement, en octets, sous la forme d'un nombre hexadécimal signé (+ ou-).
Exemple
ADDR==> +2D0- ALET
La saisie d'une valeur dans la zone ALET définit la valeur ALET à utiliser pour les affichages mémoire.
Cette zone est normalement remplie ; elle contient une valeur initiale de zéros hexadécimaux.
- msg
- La zone MSG est une zone d'une ligne dirigée par MSG == > qui apparaît sur tous les écrans. La zone MSG est utilisée pour les messages d'avertissement, d'information et d'erreur.
Commandes CODB
Toute commande CODB affichée dans le menu ou son numéro associé est valide à tout moment.
- XLWA
- Définit la zone ADDR == > sur la zone CMAS ou MAS de la zone de travail de liaison externe (XLWA) et la zone ALET = = > sur zéro, et affiche le bloc d'ancrage CICSplex.
- MODB
- Affiche le bloc de descripteur d'objet majeur (MODB) pour le composant spécifié.
- MOEB
- Affiche le bloc d'environnement d'objet majeur (MOEB) pour le composant spécifié.
- OPB
- Affiche le premier bloc de processus d'objet (OPB) pour le composant spécifié.
- système d"information d"entreprise
- Affiche le bloc de stockage d'interface EXEC CICS pour le composant spécifié.
- bloc d"interface EXEC
- Affiche le bloc d'interface EXEC CICS (EIB) pour le composant spécifié.
- STAKSTRT
- Affiche la première pile de la première transaction en cours d'exécution pour le composant spécifié.
- STAKFIN
- Affiche la pile en cours de la première transaction en cours d'exécution pour le composant spécifié.
- MODD
- Affiche le bloc de descripteur de directeur d'objet majeur (MODD) pour le composant spécifié.
- MAL
- Affiche le fichier MAL actuellement initialisé dans la première transaction en cours d'exécution pour le composant spécifié.
- Fonction PFKON
- Active les invites de la touche de fonction au bas de l'écran.
- PFKOFF
- Désactive les invites de la touche de fonction au bas de l'écran.
- FIN
- Quitte la transaction CODB.
- CMASSTOP
- Arrête le CMAS en postant le ECB de terminaison.
- TRACE
- Affiche la table de trace interne CICS non formatée.
- Marques
- Affiche le bloc d'ancrage de jeton de file d'attente.
- Menu
- Réaffiche le menu CODB.
Invites de touches de fonction
La zone d'invite de la touche de fonction contient une liste à deux lignes des touches de fonction prises en charge et une brève description de leurs valeurs.
Cette invite peut être désactivée à l'aide de la commande PFKOFF (12) et réactivée à l'aide de la commande PFKON (11).
- F1 TOP (valide uniquement pour les affichages de bloc de contrôle)
Repositionne l'écran au début du bloc de contrôle. Si l'écran a été généré par une valeur de la zone ADDR, un message d'avertissement apparaît dans la zone MSG.
- F2 BOTTOM (valide uniquement pour les affichages de bloc de contrôle)
Repositionne l'affichage à la fin du bloc de contrôle. Si l'écran a été généré par une valeur de la zone ADDR, un message d'avertissement apparaît dans la zone MSG.
- F3 FIN
Quitte la transaction CODB.
- F4 PREV
Selon le contenu de l'écran en cours, affiche le bloc de contrôle précédent du même type ou la liste de cache ou l'enregistrement de file d'attente précédent.
Pour un affichage de bloc de contrôle, PREV est à la fois sensible aux commandes (bloc de contrôle) et aux composants. Si un sous-menu d'une commande de bloc de contrôle est affiché, PREV affiche le bloc de contrôle du dernier composant, s'il existe ; s'il n'existe pas, un message d'avertissement apparaît dans la zone MSG. Si le bloc de contrôle d'un composant est affiché, le bloc de contrôle du composant précédent est affiché.
Pour un affichage de liste de cache ou d'enregistrement de file d'attente, si vous émettez PREV lorsque le premier enregistrement est affiché, un message d'avertissement s'affiche dans la zone MSG.
- F5 SUIVANT
En fonction du contenu de l'affichage en cours, affiche le bloc de contrôle suivant du même type ou la liste de cache ou l'enregistrement de file d'attente suivant.
Pour un affichage de bloc de contrôle, NEXT est à la fois sensible aux commandes (bloc de contrôle) et aux composants. Si un sous-menu d'une commande de bloc de contrôle est affiché, NEXT affiche le bloc de contrôle de liaison du noyau, s'il existe ; s'il n'existe pas, un message d'avertissement apparaît dans la zone MSG. Si le bloc de contrôle d'un composant est affiché, le bloc de contrôle du composant suivant est affiché. Lors de l'affichage des OPB, NEXT parcourt la chaîne OPB de chaque composant, si elle existe, avant de passer au composant suivant.
Pour un affichage de liste de cache ou d'enregistrement de file d'attente, si vous émettez la commande NEXT lors de l'affichage du dernier enregistrement, un message d'avertissement apparaît dans la zone MSG.
- F6 Jeton
Affiche soit le premier enregistrement de la file d'attente dont le QTOKEN est pointé par le curseur, soit le premier élément de liste cache dont le EPOINTER est pointé par le curseur. Les commandes NEXT et PREV peuvent être utilisées pour faire défiler vers l'avant et vers l'arrière dans la file d'attente ou la liste de cache.
- F7 SAUVEGARDE
Fait défiler l'affichage de la mémoire vers l'arrière d'une page complète.
- F8 AVANT
Fait défiler l'affichage de la mémoire vers l'avant d'une page complète.
- F9 SAUTER
Produit un affichage qui commence à l'adresse pointée par le curseur, à l'aide d'un ALET de zéro. L'adresse indiquée peut être la zone d'adresse, la zone d'adresse relative, la zone EBCDIC ou une adresse dans l'écran des données hexadécimales. Si la mémoire indiquée est inaccessible, un message d'avertissement s'affiche dans la zone MSG.
Si un bloc de contrôle était affiché, JUMP efface la commande en cours et l'ID composant et établit le mode ADDR. Après une commande JUMP, il est possible de faire défiler au-delà des bornes du bloc de contrôle, même si l'adresse sélectionnée est à l'intérieur du bloc. Pour rétablir le mode de bloc de contrôle, vous devez entrer à nouveau la commande et l'ID composant voulus.
- F10 DSJUMP
Génère un affichage qui commence à l'adresse indiquée par le curseur, à l'aide de l'ALET affiché. L'adresse indiquée peut être la zone d'adresse, la zone d'adresse relative, la zone EBCDIC ou une adresse dans l'écran des données hexadécimales. Si la mémoire indiquée est inaccessible, un message d'avertissement s'affiche dans la zone MSG.
- F11 ALTER
Permet de modifier la mémoire.
- F12 ALET/OFFSET
Génère un affichage qui commence à la paire ALET/ADDRESS pointée par le curseur. La paire ALET/ADDRESS doit se trouver dans l'écran de données hexadécimales et le curseur doit se trouver dans la partie ALET de la paire. Si la mémoire indiquée est inaccessible, un message d'avertissement s'affiche dans la zone MSG.
Zone d'affichage de la mémoire
La zone d'affichage de la mémoire contient des représentations hexadécimales et EBCDIC de la mémoire demandée ALET / ADDRESS ou du bloc de contrôle demandé.
COMMAND==> XLWA COMP ID==> ADDR==> ALET==> 00000000
00077368 00000000 020C6EC5 E8E4E7D3 D2D5D3C3 E6C1C1C2 ..>EYUXLKNLCWAAB
00077378 00000010 01000200 000773E0 00000000 006B2F20 .......\.....,..
00077388 00000020 00000000 0000000E 0000E888 00097820 ..........Yh....
00077398 00000030 00077470 0000A81C 0008D000 000003B6 ......y...}.....
000773A8 00000040 00084E90 00040000 043E0000 00000020 ..+.............
000773B8 00000050 043E0000 FFFFF34E 8A680940 006B2F20 ......3+... .,..
000773C8 00000060 00000000 D2D3D7C2 00085310 00085828 ....KLPB........
000773D8 00000070 0A62AD40 0093D154 00077384 000773C4 ... .lJ....d...D
000773E8 00000080 00000000 00000000 00000000 00346EC5 ..............>E
000773F8 00000090 E8E4E7C5 C5E8E4D9 E7C5D3E2 01030000 YUXEEYURXELS....
00077408 000000A0 009AFC38 03C6B150 0093D140 0093D154 .....F.&;lJ .lJ.
00077418 000000B0 00FAB580 006C1258 A458C562 09D66631 .....%..u.E..O..
00077428 000000C0 D7D9D4C2 000774B8 00077528 0007752C PRMB............
00077438 000000D0 00077530 00077534 00077548 00077544 ................
00077448 000000E0 00077558 0007755C 0007756C 00077560 .......*...%...-
00077458 000000F0 00077568 00077564 00077570 00000000 ................
00077468 00000100 00000000 00000000 00000000 00097820 ................
00077478 00000110 000988BC 00099958 0009A9F4 0009BA90 ..h...r...z4....
00077488 00000120 0009CB2C 0009DBC8 0009EC64 0009FD00 .......H........
00077498 00000130 000A0D9C 000A1E38 000A2ED4 000A3F70 ...........M....
000774A8 00000140 000A500C 00000000 00000000 00000000 ..&;............
000774B8 00000150 A458C562 09D66631 006C1258 00FAB580 u.E..O...%......
000774C8 00000160 000000D4 00000002 E2E8E2C3 C3E5D4C3 ...M....SYSCCVMC
000774D8 00000170 E3E2D6F1 C3E5D4C3 E6404040 C3E6E6F1 TSO1CVMCW CWW1
000774E8 00000180 DF80FCA0 00800000 00000000 00000000 ................
000774F8 00000190 00000000 00000000 00000000 00000002 ................
00077508 000001A0 04375000 00000000 00000000 00000000 ..&;............
00077518 000001B0 00000000 00000000 00000000 00000000 ................
00077528 000001C0 00000000 00000000 00000000 00000400 ................
00077538 000001D0 00040000 00000002 0000001C 00000000 ................
00077548 000001E0 C5E8E4C4 D9C5D740 00000000 00000000 EYUDREP ........
00077558 000001F0 00000000 00000000 00000000 00000000 ................
00077568 00000200 00000000 00000000 00000000 ............
P1=TOP P2=BOTM P3=END P4=PREV P5=NEXT P6=TOKEN P7=BACK P8=FRWD
P9=JUMP P10=DSJUMP P11=ALTER P12=ALET/OFFSET
Les parties de données hexadécimales et EBCDIC de l'écran peuvent être modifiées. N'utilisez cette fonction qu'à la demande du service d'assistance IBM®.
Vous pouvez remplacer des données hexadécimales à l'aide de chiffres hexadécimaux valides ou des données EBCDIC à l'aide de n'importe quel caractère du clavier à l'exception du point. Après avoir écrasé les données, appuyez sur PF11 (ALTER).
- La mémoire est protégée.
- Vous avez modifié l'écran mais n'avez pas appuyé sur PF11.
- L'emplacement de la mémoire en cours de modification a été modifié depuis son affichage.
La tentative de modification de la mémoire protégée entraîne une fin anormale. La routine de reprise CODB émet un message décrivant la fin anormale sur la console.