/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        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);
                    }
          }



Copyright © Jean-François Colonna, 2021-2023.
Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / École polytechnique, Institut Polytechnique de Paris, 2021-2023.