/*************************************************************************************************************************************/ /* */ /* V E R I F I C A T I O N D E L A M E M O I R E P H Y S I Q U E : */ /* */ /* */ /* Author of '$xtc/CheckMem$vv$c' : */ /* */ /* Jean-Francois COLONNA (LACTAMME, 20031112163549). */ /* */ /*************************************************************************************************************************************/ #include <stdio.h> #define PATTERN_1 \ 0x00000000 #define PATTERN_2 \ 0Xffffffff #define PATTERN_3 \ 0x55555555 #define PATTERN_4 \ 0xaaaaaaaa /* "Patterns" utiles a priori. */ #define NOMBRE_D_ITERATIONS \ 1 \ /* Nombre d'iterations du test. */ #define TAILLE_DE_LA_MEMOIRE_EN_Int \ 223000000 \ /* Taille de la memoire a tester en octets : 223000000 le 20031112163549 pour '$LACT15'. */ static int memoire[TAILLE_DE_LA_MEMOIRE_EN_Int]; /* Zone memoire a tester... */ int TEST_D_UNE_PATTERN(pattern) int pattern; /* Test de la memoire pour une "pattern" donnee... */ { int tout_s_est_bien_passe=0; int n; for (n=0 ; n<TAILLE_DE_LA_MEMOIRE_EN_Int ; n++) { memoire[n] = pattern; /* Ecriture dans la memoire... */ } for (n=0 ; n<TAILLE_DE_LA_MEMOIRE_EN_Int ; n++) { if (memoire[n] != pattern) { tout_s_est_bien_passe=1; /* Relecture de la memoire... */ } else { } } if (tout_s_est_bien_passe != 0) { fprintf(stderr,"probleme memoire avec la 'pattern' 0x%0x",pattern); } else { } } main() { int n; for (n=1 ; n<=NOMBRE_D_ITERATIONS ; n++) { TEST_D_UNE_PATTERN(PATTERN_1); TEST_D_UNE_PATTERN(PATTERN_2); TEST_D_UNE_PATTERN(PATTERN_3); TEST_D_UNE_PATTERN(PATTERN_4); } }