[z/OS]

Commutation entre les modes 64 et 31 bits

Lorsque vous créez un nouveau serveur d'applications, il est automatiquement configuré pour s'exécuter en mode 64 bits. Si vous avez besoin de le faire fonctionner en mode 31 bits, vous pouvez désélectionner l'option Exécuter en mode JVM 64 bits. Cependant, dans la mesure du possible, laissez les serveurs configurés pour s'exécuter en mode 64 bits, car le support d'exécution en mode 31 bits est obsolète. Si vous avez fait migrer des serveurs d'une version précédente du produit et qu'ils fonctionnent en mode 31 bits, envisagez de les reconfigurer afin qu'ils s'exécutent en mode 64 bits.

Fonctionnalité obsolète: Etant donné que la prise en charge de l'exécution d'un serveur en mode 31 bits est obsolète, chaque fois que vous démarrez un serveur configuré pour s'exécuter en mode 31 bits, vous recevez le message suivant dans votre journal système, où nom_serveur est le nom du serveur qui s'exécute en mode 31 bits:
BBOO0340W: LE MODE 31 BITS EST OBSOLETE POUR LE SERVEUR D'APPLICATIONS DU SYSTEME D'EXPLOITATION Z/OS. 
ENVISAGEZ D'UTILISER LE MODE 64 BITS COMME ALTERNATIVE POUR nom_serveur.
Les conditions d'exécution d'un serveur en mode 31 bits sont les suivantes :
  • Chaque espace adresse des serveurs peut accéder à 2 gigaoctets de mémoire virtuelle au maximum.
  • La machine virtuelle Java 31 bits, qui se trouve dans le répertoire racine_serveur_app/java , est utilisée pour le serveur.
Les conditions d'exécution d'un serveur en mode 64 bits sont les suivantes :
  • Chaque espace adresse de serveur peut accéder à 16 exaoctets (16 milliards de gigaoctets) de mémoire virtuelle au maximum.
  • La machine virtuelle Java 64 bits, qui se trouve dans le répertoire racine_serveur_app/java64 , est utilisée pour le serveur.

Configuration système requise

Avant de commencer à utiliser un serveur configuré pour s'exécuter en mode 64 bits, vérifiez les points suivants :
  • Le paramètre AMODE peut être utilisé pour spécifier un mode d'adressage particulier, soit 31 soit 64 bits, pour le serveur. Il peut être également défini à une valeur de 00, ce qui indique que le serveur utilise le mode d'adressage configuré. Dans les procédures générées, 00 est la valeur par défaut du paramètre AMODE.

    Si vous convertissez le mode d'adressage d'un serveur de 31 bits à 64 bits, assurez-vous que votre automatisation n'indique pas AMODE=31 sur la commande MVS START. Si un serveur est démarré avec une valeur AMODE qui ne correspond pas au mode d'adressage configuré, il ne démarre pas.

    Eviter les problèmes: Si le paramètre AMODE est omis ou défini sur 00 dans la commande MVS START, le serveur démarre en mode d'adressage actuellement configuré. Si tout autre paramètre AMODE est spécifié, ce paramètre doit correspondre au mode d'adressage actuellement configuré. Dans le cas contraire, le serveur s'arrête avec l'un des messages d'erreur suivants :
    BBOO0336E LE DEMARRAGE DU PROCESSUS WEBSPHERE FOR Z/OS A ECHOUE,   
    LE PARAMETRE AMODE 31 ENTRANT NE CORRESPOND PAS AU PARAMETRE AMODE 64 CONFIGURE
    BBOO0336E LE DEMARRAGE DU PROCESSUS WEBSPHERE FOR Z/OS A ECHOUE,   
    LE PARAMETRE AMODE 64 ENTRANT NE CORRESPOND PAS AU PARAMETRE AMODE 31 CONFIGURE
  • Les paramètres REGION et MEMLIMIT de l'instruction JCL JOB ou EXEC ou du membre SMFPRMxx parmlib déterminent la quantité de mémoire virtuelle qu'un serveur particulier peut obtenir. Si vous ne spécifiez pas REGION=0M dans la procédure cataloguée du serveur, vous devez utiliser le paramètre MEMLIMIT pour définir une limite de mémoire virtuelle supérieure à la limite de 2 gigaoctets associée au mode 31 bits.
    Evitez les problèmes: assurez-vous que vos exits système ne limitent pas la taille de l'espace adresse pour les serveurs 64 bits de manière inappropriée.
  • L'exécution de serveurs en mode 64 bits demande une mémoire secondaire supplémentaire, mémoire étendue ou espace de fichier de pagination. Avant de lancer des serveurs en mode 64 bits, examinez vos allocations de fichier de pagination pour chaque système cible z/OS, puis ajoutez des espaces de fichier de pagination en fonction de vos besoins. Surveillez également la pagination et l'utilisation du fichier de pagination pour vous assurer que la quantité de mémoire secondaire allouée est suffisante.
Pour plus d'informations, voir les publications z/OS suivantes :
  • MVS™ Initialization and Tuning Reference, SA22-7592
  • MVS Programming: Extended Addressability Guide, SA22-7614

Convertir un serveur migré afin de le faire fonctionner en mode 64 bits

Avant de convertir un serveur d'applications du mode 31 bits au mode 64 bits, effectuez les opérations suivantes :
  • Vérifiez que votre système répond aux exigences énoncées dans la section Exigences du système.
  • Vérifiez que toutes les applications que vous prévoyez d'exécuter sur ce serveur d'applications sont mises à jour afin d'utiliser le code natif et les DLL 64 bits.

    Les DLL et autres codes natifs que vos applications appellent doivent correspondre au mode d'adressage du serveur sur lequel les applications fonctionnent. Si vous convertissez un serveur d'applications existant du mode 31 bits au mode 64 bits, vous devez modifier les applications Java™ contenant du code natif, par exemple C++ ou Cobol, que vous prévoyez d'exécuter sur le serveur converti, pour qu'elles s'exécutent en mode 64 bits. Les applications Java peuvent utiliser la propriété Java com.ibm.vm.bitmode pour déterminer le mode d'exécution du serveur et charger la DLL 31 bits ou 64 bits correcte vers les codes natifs.

    Une fin anormale peut se produire si un serveur s'exécutant en mode 64 bits tente d'appeler une application contenant un module natif 31. A l'inverse, une fin anormale peut se produire si un serveur s'exécutant en mode 31 bits tente d'appeler une application contenant un module natif 64.

    Pour plus d'informations sur la conversion des applications Language-Environment (LE) pour qu'elles s'exécutent en mode 64 bits, voir la publication z/OS Language Environment ® Programming Guide for 64-bit Virtual Addressing Mode, SA22-7569.

Pour convertir un serveur d'applications du mode 31 bits au mode 64 bits, dans la console d'administration, sélectionnez l'option Exécuter en mode JVM 64 bits sur la page de configuration correspondant à ce serveur d'applications, puis modifiez les tailles maximales et minimales de segment de mémoire JVM pour leur attribuer des valeurs appropriées au traitement 64 bits. De même, pour convertir un serveur d'applications du mode 64 bits au mode 31 bits, désélectionnez l'option Exécuter en mode JVM 64 bits sur la page de configuration correspondant à ce serveur d'applications, puis modifiez les tailles maximales et minimales de segment de mémoire JVM pour leur attribuer des valeurs appropriées au traitement 31 bits.

Si vous utilisez la commande MVS START pour démarrer un serveur 64 bits, vérifiez que le paramètre AMODE est défini sur 00 ou 64, ou est autorisé par défaut à 00 sur la commande START. Vous pouvez par exemple utiliser l'une des commandes suivantes :

S BBO7ACR,JOBNAME=BBOS001,ENV=BBOBASE.BBONODE.BBOS001,AMODE=64

S BBO7ACR,JOBNAME=BBOS001,ENV=BBOBASE.BBONODE.BBOS001

La commande startServer.sh et la console d'administration ajoutent automatiquement le paramètre AMODE=64 lorsqu'elles sont utilisées pour démarrer un serveur d'applications 64 bits.

Convertir un gestionnaire de déploiement migré afin de le faire fonctionner en mode 64 bits

Avant de convertir un gestionnaire de déploiement du mode 31 bits au mode 64 bits, effectuez les opérations suivantes :
  • Vérifiez que votre système répond aux exigences énoncées dans la section Exigences du système.
  • Vérifiez que toutes les applications que vous prévoyez d'exécuter sur ce gestionnaire de déploiement sont mises à jour afin d'utiliser le code natif et les DLL 64 bits.

    Les DLL et autres codes natifs que vos applications appellent doivent correspondre au mode d'adressage du serveur sur lequel les applications fonctionnent. Si vous convertissez un serveur d'applications existant du mode 31 bits au mode 64 bits, vous devez modifier toutes les applications Java contenant le code natif (C++ ou Cobol, par exemple) que vous prévoyez d'exécuter sur le serveur ayant fait l'objet de la conversion pour les exécuter en mode 64 bits. Les applications Java peuvent utiliser la propriété Java com.ibm.vm.bitmode pour déterminer le mode d'exécution du serveur et charger la DLL 31 bits ou 64 bits correcte vers les codes natifs.

    Une fin anormale peut se produire si un serveur s'exécutant en mode 64 bits tente d'appeler une application contenant un module natif 31. A l'inverse, une fin anormale peut se produire si un serveur s'exécutant en mode 31 bits tente d'appeler une application contenant un module natif 64.

    Pour plus d'informations relatives à la conversion d'applications Language Environment (LE) pour une exécution en mode 64 bits, voir la publication z/OS Language Environment Programming Guide for 64-bit Virtual Addressing Mode, SA22-7569.

Pour convertir un gestionnaire de déploiement du mode 31 bits au mode 64 bits, sélectionnez Serveurs > Types de serveurs > Serveurs d'applications WebSphere > nom_serveur dans la console d'administration, sélectionnez l'option Exécuter en mode JVM 64 bits dans la page des paramètres correspondant à ce gestionnaire de déploiement, puis modifiez les tailles maximale et minimale de segment de mémoire JVM pour leur attribuer des valeurs appropriées au traitement 64 bits.

Si vous utilisez la commande MVS START pour démarrer un gestionnaire de déploiement 64 bits, vérifiez que le paramètre AMODE est défini sur 00 ou 64, ou est autorisé par défaut à 00 sur la commande START. Vous pouvez par exemple utiliser l'une des commandes suivantes :
S BBO7DCR,JOBNAME=BBODMGR,ENV=PLEXA.PLEXABBOCELL.BBODMGR.BBODMGR,AMODE=64
S BBO7DCR,JOBNAME=BBODMGR,ENV=BBOCELL.BBODMGR.BBODMGR

La commande startServer.sh et la console d'administration ajoutent automatiquement le paramètre AMODE=64 lorsqu'elles sont utilisées pour démarrer un gestionnaire de déploiement 64 bits.

Convertir un serveur afin de le faire fonctionner en mode 31 bits

Avant de convertir un serveur du mode 64 bits au mode 31 bits, assurez-vous que toutes les applications que vous envisagez d'exécuter sur le serveur utilisent les DLL et le code natif 31 bits.

Pour convertir un serveur du mode 64 bits au mode 31 bits, procédez comme suit :
  • Démarrez le serveur.
    Le serveur indique le mode dans lequel il se trouve au démarrage :
    BBOO0309I CONTROL PROCESS BBOBASE/BBONODE/BBOC001/BBOS001 IS EXECUTING IN 64-BIT ADDRESSING MODE
  • Accédez à Serveurs > Types de serveurs > Serveurs d'applications WebSphere > nom_serveur dans la console d'administration.
  • Désélectionnez l'option Exécuter en mode JVM 64 bits dans la page des paramètres de configuration du serveur.
  • Redémarrez le serveur.
    Les messages suivants s'affichent sur la console et dans le journal des travaux du serveur :
    09.31.42 STC00104  BBOO0309I CONTROL PROCESS  BBOBASE/BBONODE/BBOC001/BBOS001 IS EXECUTING 
      IN 31-BIT ADDRESSING MODE.
    09.31.42 STC00104  BBOO0340W 31-BIT MODE IS DEPRECATED FROM THE APPLICATION SERVER ON THE
      Z/OS OPERATING SYSTEM. CONSIDER USING 64-BIT MODE FOR BBOS001 AS AN ALTERNATIVE.