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

Percer le brouillard des rançongiciels
Explorez les méandres d’une investigation de ransomware, avec les experts de Palo Alto Networks et Unit 42 pour faire la lumière dans la nébuleuse des rançongiciels. Plongez au cœur de l’enquête pour comprendre les méthodes, les outils et les tactiques utilisés par les acteurs de la menace. Découvrez comment prévenir les attaques, les contrer et minimiser leur impact. Des enseignements indispensables aux équipes cyber.
Les articles les plus consultés
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Chiffrements symétrique vs asymétrique
- Afficher les icônes cachées dans la barre de notification
- Cybersécurité Active Directory et les attaques de nouvelle génération
Les plus consultés sur iTPro.fr
- Datanexions, acteur clé de la transformation numérique data-centric
- Les PME attendent un meilleur accès aux données d’émissions de la part des fournisseurs
- Fraude & IA : Dr Jekyll vs. Mr Hyde, qui l’emporte ?
- Gestion du cycle de vie des outils de cyberdéfense : un levier de performance pour les entreprises
- Top 6 du Cyber Benchmark Wavestone 2025
