           SPELL=memtest86
         VERSION=4.0a
     SOURCE_HASH=sha512:38f885fd8e6796040cb9f003f540411c657604ab35eb83179981881f6d42c8771c320db4128850754f4f8313585de2aebeaeb040a12501726d617c3580ee240b
          SOURCE=$SPELL-$VERSION.tar.gz
SOURCE_DIRECTORY=$BUILD_DIRECTORY/$SPELL-$VERSION
   SOURCE_URL[0]=http://memtest86.com/$SOURCE
        WEB_SITE=http://memtest86.com/
      LICENSE[0]=GPL
         ENTERED=20021120
        KEYWORDS="utils"
           SHORT="Stand alone memory test for x86 architecture computers"
cat << EOF
There are many good approaches for testing memory. However, many tests
simply throw some patterns at memory without much thought or knowledge of
the memory architecture or how errors can best be detected. This works fine
for hard memory failures but does little to find intermittent errors. The
BIOS based memory tests are useless for finding intermittent memory errors.

Memory chips consist of a large array of tightly packed memory cells, one
for each bit of data. The vast majority of the intermittent failures are
a result of interaction between these memory cells. Often writing a memory
cell can cause one of the adjacent cells to be written with the same data. An
effective memory test should attempt to test for this condition. Therefore,
an ideal strategy for testing memory would be the following:
1) write a cell with a zero
2) write all of the adjacent cells with a one, one or more times
3) check that the first cell still has a zero

It should be obvious that this strategy requires an exact knowledge of how the
memory cells are laid out on the chip. In addition there is a never ending
number of possible chip layouts for different chip types and manufacturers
making this strategy impractical. However, there are testing algorithms that
can approximate this ideal.
EOF
