Le terme « groupes d’activation » est peu évocateur, a une résonance technique, et est un peu intimidant ! IBM aurait peut-être dû parler de « troupeaux de programmes ». On aurait alors imaginé des programmes informatiques parcourant les plaines herbeuses, se regroupant pour survivre, vivant ensemble et mourant ensemble. Mais peut-être suis-je un peu trop amateur de westerns. Plus prosaïquement, dans cet article, j’explique ce que sont les groupes d’activation et leur mérite pour un programmeur RPG.
Groupes d’activation : premier aperçu

Au bon vieux temps, si l’on voulait écrire des programmes RPG modulaires, on appelait un autre programme. Celui-ci se terminait avec l’indicateur LR désactivé afin que les fichiers restent ouverts et que le programme reste en mémoire. Cela accélérait les appels suivants parce que le programme n’avait pas à réouvrir les fichiers ni à réinitialiser ses variables. Quand c’était terminé et qu’on ne voulait plus appeler à nouveau le programme, il fallait bien trouver le moyen d’y mettre fin. A cet effet, le RPG/400 avait le code opération FREE, qui désactivait un programme. Mais on l’utilisait peu parce qu’il ne fermait pas les fichiers ou qu’il ne déverrouillait pas les zones de données. Il se contentait de décharger le programme lui-même. Le contournement consistait à appeler le programme avec un paramètre spécial qui ordonnait au programme d’activer LR puis de se terminer normalement. Comme LR était activé, le programme fermait ses fichiers dans les règles quand il se terminait.
Certes, cela fonctionnait, mais à quel prix ! Il fallait suivre chaque programme appelé, pour pouvoir revenir et le fermer quand on avait fini. Et si ce programme n’était pas écrit en RPG c’était encore pire. Les autres langages ne connaissaient pas LR, donc vous ne pouviez pas le faire de la même manière. En fait, il n’était pas possible de laisser actifs certains langages avec leurs fichiers ouverts, quoi que l’on fît.
Il était donc incommode d’écrire des programmes modulaires. On essayait bien sûr de mettre le plus de fonctionnalités possible dans chaque programme, afin qu’il y ait le minimum de programmes à désactiver à la fin. Cela rendait ces programmes moins réutilisables et plus compliqués à appeler. On évitait souvent les appels de langages croisés parce qu’ils étaient incommodes. IBM a conçu ILE pour encourager la programmation modulaire et les appels de langages croisés. Les groupes d’activation constituent la solution.
Téléchargez cette ressource

Démocratiser l’adoption de l’IA par la maîtrise de ses données
Saviez-vous que 80% du temps de vos projets IA portent sur l’analyse de vos données ? explorez tous les outils nécessaires pour entreprendre une gestion performante de vos flux de données et optimiser votre architecture afin de réussir vos projets d’Intelligence Artificielle. découvrez le guide des experts Blueway.
Les articles les plus consultés
- Et si les clients n’avaient plus le choix ?
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Cybersécurité Active Directory et les attaques de nouvelle génération
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Activer la mise en veille prolongée dans Windows 10
Les plus consultés sur iTPro.fr
- Menaces cyber sur le secteur énergétique européen !
- Les stratégies IA pour la survie de l’entreprise !
- Protégez l’accès non authentifié de vos réunions
- Télécommunications et durabilité : les défis d’une transition verte dans un secteur en mutation
- Vulnerability Operation Center : concepts, mise en œuvre et exploitation
