Modèles de données pour les processus 32 bits et 64 bits

AIX prend en charge deux environnements de développement : l'environnement de développement 32 bits et l'environnement de développement 64 bits.

Les compilateurs sous AIX offrent les deux modèles de programmation suivants:

ILP32
ILP32, acronyme de integer, long et pointeur 32, est l'environnement de programmation 32 bits dans AIX. Le modèle de données ILP32 fournit un espace adresse 32 bits avec une limite de mémoire théorique de 4 Go.
LP64
LP64, acronyme de long, et pointeur 64, est l'environnement de programmation 64 bits sous AIX. A l'exception de la taille et des alignements des types de données, LP64 prend en charge les mêmes fonctions de programmation que le modèle ILP32 et est compatible en amont avec le type de données int le plus utilisé.

Par conséquent, un programme sous AIX peut être compilé pour s'exécuter en tant que programme 32 bits ou 64 bits. Le même script Vue peut être émis pour un processus exécuté en mode 32 bits ou 64 bits. Conformément à la spécification du modèle de données, une variable externe de type long accessible dans un script Vue doit être traitée comme une variable de 4 octets lorsque le processus sondé (ou tracé) est un processus 32 bits. La même variable doit être traitée comme une longueur de 8 octets lorsque le processus sondé est un processus 64 bits. La disposition et la taille d'une structure ou d'une union, qui contient des membres qui sont des pointeurs ou des variables longues, varient selon qu'elle est visualisée à partir des perspectives d'un processus 32 bits ou d'un processus 64 bits. Pour éviter toute confusion, Vue fournit des règles sémantiques permettant de traiter les deux modèles de données différents de manière logique et cohérente en fonction de la classe de la variable.