Les optimisations vues jusqu'à présent, bénéficient à tous les genres de programmes.
Optimisation d’arguments
Tandis que celle-ci, l’optimisation d’arguments, vise une performance bien précise : le coût du passage des pointeurs d’espace entre des procédures.
Optimisation d’arguments
Pour justifier l’optimisation d’arguments, nous devons comprendre la différence entre le pointeur d’espace et les adresses d’espace. Tous deux contiennent l’adresse de données quelque part dans le stockage. Vous pouvez considérer une adresse d’espace comme simplement l’adresse brute des données, tandis qu’un pointeur d’espace contient aussi des informations d’intégrité.
Les programmeurs ILE n’ont le droit d’accéder directement qu’aux pointeurs d’espace, pas aux adresses d’espace. Cela, pour éviter qu’ils n’accèdent, par inadvertance ou malveillance, à des données sur lesquelles ils n’ont pas de droits. Et aussi pour s’assurer que les pointeurs d’espace ne servent qu’à accéder aux données et ne sont pas faussement considérés comme des pointeurs vers du code ou des objets système.
Cependant, cette intégrité système a un léger coût. Un pointeur d’espace est plus grand qu’une adresse d’espace : contrairement au premier, la seconde tient dans un registre matériel. Ce point est intéressant quand des pointeurs sont passés d’une procédure à une autre ou sont renvoyés d’une procédure à une autre. Un pointeur d’espace doit être passé en mémoire, mais une adresse d’espace sera passée plus efficacement dans des registres.
La syntaxe qui décrit les pointeurs d’espace varie d’un langage ILE à un autre. En C ou en C++, ce sont des pointeurs traditionnels, vers des données d’un type quelconque. Par exemple : int* et char*. En RPG, les pointeurs d’espace sont appelés pointeurs de base (basing pointers), et sont signalés par un astérisque dans la colonne Internal Data Type de la D spec. En COBOL, les pointeurs d’espace sont décrits par la clause USAGE POINTER.
Le terme “procédure” a aussi des noms différents dans chaque langage. En C ou C++, le mot désigne génériquement toute procédure, fonction, ou méthode. En RPG, il désigne les sous- procédures. Le concept de procédure n’existe pas en COBOL, même si des programmes COBOL peuvent invoquer des procédures dans d’autres langages ILE en utilisant l’instruction CALL.
Téléchargez cette ressource
Mac en entreprise : le levier d’un poste de travail moderne
Ce livre blanc répond aux 9 questions clés des entreprises sur l’intégration du Mac : sécurité, compatibilité, gestion, productivité, coûts, attractivité talents, RSE et IA, et l’accompagnement sur mesure proposé par inmac wstore.
Les articles les plus consultés
- Et si les clients n’avaient plus le choix ?
- Cybersécurité Active Directory et les attaques de nouvelle génération
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Une baie de stockage c’est quoi ?
Les plus consultés sur iTPro.fr
- Comment apprivoiser l’imprévu avec le Stockage-as-a-service ?
- IA en entreprise : adoption massive, mais la confiance reste le principal frein
- Diriger à l’ère du cloud global : trouver l’équilibre entre innovation et contrôle
- Rançongiciels et IA : les attaques gagnent en efficacité en ciblant l’humain
Articles les + lus
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
Computex 2026 : 5 signaux forts à retenir
La chaîne d’approvisionnement, point de rupture récurent du SI
Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
À la une de la chaîne Tech
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
- Computex 2026 : 5 signaux forts à retenir
- La chaîne d’approvisionnement, point de rupture récurent du SI
- Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
