home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.sudleyplace.com
/
ftp.sudleyplace.com.tar
/
ftp.sudleyplace.com
/
product
/
ramexam
/
REWHITE.TXT
next >
Wrap
Text File
|
2006-10-20
|
14KB
|
364 lines
Understanding RAMexam
Avoid Being Bitten by a Bad Byte
Few components in your PC are as crucial to its operation as memory
and the hardware that manages memory. Defective memory can cause data
loss, prevent your monitor from displaying properly or even cause your
hard disk to crash. Every element in your system depends on RAM
(random access memory). Unfortunately, RAM fails and when it does,
lost work is an inevitable result.
In the case of RAM failure, prevention is the only medicine. This
document was created to help you understand the role that RAM plays,
why it fails and how to take the steps necessary to prevent the loss
of work that usually accompanies a RAM failure.
Contents
What is Memory?
Why Memory Fails?
What is RAMexam?
Ways to Use RAMexam
DOS Memory Testing
A Note for OS/2 Users
How to Avoid Memory Errors
Conclusion
What is Memory?
The words "computer memory" are ambiguous. They are often used to
describe fixed and floppy disk storage, system and adapter "read only
memory" (ROM), video adapter "random access memory" (RAM) and so on.
For the purpose of this document, the term "computer memory" (or just
"memory") refers to the row or rows of system RAM chips that exist
somewhere in your PC. This is the memory in which your software runs.
The capacity of PC memory to store information is measured in bytes.
A typical PC today comes standard with several megabytes of RAM. A
megabyte equals one million bytes (actually 1,048,576) - approximately
the amount of memory needed to hold the text for a 600 page paperback
novel. Each byte on an IBM compatible system contains eight bits.
This means that the average PC with four megabytes of RAM has over 33
million bits -- each one ready and waiting for your valuable
information.
Let's take a look at just one bit of memory. Each bit "holds" one of
two values -- 0 or 1 -- depending on its electrical state. All the
information in your PC amounts to nothing more than a series of bits.
For example, the word "memory" has six characters, each represented as
a byte in memory, for a total of 48 bits of information:
01101101 01100101 01101101 01101111 01110010 01111001
Each bit is significant. What would happen if the last bit was stored
in a defective memory chip and was stuck as zero? The new word would
be "memory";. And if your software program got loaded into the
defective bit then there is a very good chance your system would
crash. Your PC operates on the assumption that each bit (all 33
million in the above example) functions perfectly every time you use
your PC.
Why Memory Fails
People expect most machines to break eventually. We look at all the
moving parts -- think about hard drives spinning rapidly for hours on
end, car engines running for thousands of miles -- and we know that
eventually the machine will stop working. We see it happen every day.
Why, then, should we be so surprised to learn that system memory fails
also? RAM itself may not spin, chug or move, but it is acted upon in
countless ways -- ways that, given RAM's fragile nature, can have
devastating effects.
In addition to faulty RAM, errors may occur due to faults in the
memory subsystem - the hardware that manages the RAM. Unfortunately,
there is no way for software to determine the difference between
defective RAM and a defective memory subsystem. The causes for
failure, though, are the same.
Here are some of the most common (though by no means all) causes of
system memory failure:
Static Electricity
If you have opened your personal computer then you know that under the
metal case are relatively vulnerable electronics. Brushing against
system RAM while carrying even the slightest static charge can destroy
the chip by subjecting the chips to momentary discharges of excessive
electricity.
Power Surges (large and small)
We all know about the devastating effect lightning can have on a PC.
While a $20 surge protector may reduce risk, it does not eliminate it.
In fact, power brown-outs -- where power levels dip momentarily
(because somebody upstairs just started their blow dryer) -- are not
handled by most surge protectors and can be just as damaging over time
as surges. Actually, your PC is hit with a power surge every time it
is turned on and electricity rushes into the cold system. Even when
these brown-outs and surges do not cause immediate problems, they can
stress the semiconductor chips, which has a cumulative damaging
effect.
Dust, Smoke and Pet Hair
Did you ever wonder why the television is usually the dustiest spot in
the house? Dust and other air impurities are attracted by the
electrical charge inside appliances like your TV and PC where they
settle. Over time, these materials can build up enough to carry
electrical charges and "short" the PC's circuitry. The dust also
forms a blanket, diminishing the electronics' ability to release heat
and stay cool. This results in heat stress and additional potential
damage.
Changes in Temperature
Put your hand on the back of a PC that has been running for several
hours. It is very warm. As with all things, PC components expand
when their temperatures increase. Components of different materials
(like the metal RAM prongs and the plastic material it is attached to)
expand and contract at different rates. Listen closely to your PC
creak when turned off after hours of use. This expansion and
contraction can, over time, stress the system RAM as well as the
connections between the RAM and the other components.
Though we can take precautions, there are no guaranteed methods for
eliminating all chances of memory error. What we can do, though, is
minimize our chances of losing work because of defective memory by
using RAMexam to test for it regularly.
What is RAMexam?
RAMexam is a sophisticated, yet easy to use, software utility that
tests system RAM and identifies defective memory before it leads to
lost work and data.
While the causes of memory failure are many, the types of RAM failure
are few. RAMexam operates using the knowledge of these limited (but
not singular) ways that memory fails. Currently available,
general-purpose diagnostic software usually implement less
sophisticated algorithms that can miss errors, including situations
where bits are unreliable only when other bits hold specific values.
Under such circumstances there is no assurance that memory errors will
be detected:
"Traditional tests include many well-known tests such as GALPAT,
checkerboard, sliding diagonal, etc. (Breuer, 1976). These tests
were not based on a fault model (such as the stuck-at, coupling, or
pattern sensitive fault models); consequently, their quality, in terms
of fault coverage, cannot be proved."
Additionally, "The RAM test algorithms [of the types implemented in
RAMexam] are more effective than the traditional tests (such as
Zero-One) which are still often used. The new algorithms are superior
in terms of the required execution time as well as the degree of fault
coverage... Zero-One and Checkerboard [tests] have a very
questionable fault coverage."
RAMexam uses an underlying consistent fault model to detect RAM errors
efficiently even in complex, multiple fault situations. Using
sophisticated strategies of writing and reading bit patterns in memory
-- where each strategy targets a specific type of failure -- RAMexam
provides faster and more effective testing.
Here is a description of the categories of failures for which RAMexam
tests:
Stuck-At Fault
One or more bits retains the value that exists in the memory when the
system boots, regardless of attempts to write new values into the
memory.
Transition Fault
Once changed, the value in the defective bit becomes stuck-at.
Unlinked Inversion
A bit changes spontaneously and erroneously as the result of change to
a bit elsewhere in memory.
Linked Inversion
A bit changes spontaneously and erroneously as the result of changes
to two or more bits elsewhere in memory.
Unlinked Idempotent
A bit becomes stuck-at as the result of a change to a bit elsewhere in
memory.
Linked Idempotent
A bit becomes stuck-at as the result of changes to two or more bits
elsewhere in memory.
RAMexam detects singular and multiple (coupled) occurrences of the
above errors.
Ways to use RAMexam
RAMexam may be used several ways:
You can run RAMexam every time you boot your system by including
RAMexam in your AUTOEXEC.BAT. When running RAMexam this way, you
should use the command line switch for a "Quick" test. Running
RAMexam at system start-up will add between a few seconds and a few
minutes to the time it takes to boot your system, depending on how
much memory you have and the speed of your system. RAMexam includes
RSetup, a utility that can configure your system testing
automatically.
You can run RAMexam as often as you like from the DOS prompt.
RAMexam's interactive interface and on-line help make it easy to
choose the appropriate test.
RAMexam can test only available memory (you wouldn't want a memory
tester to write through existing data in memory). You can use RAMexam
for more extensive testing by running it on a "clean" system without
resident software such as disk caches, RAM disks and memory managers
active. Running RAMexam with no other software active is the most
effective way to test your system. The MAKEBOOT program, which is
included with RAMexam, will create a bootable diskette for this
purpose. This provides an easy way to test your system memory fully.
A Word About Windows & Memory Testing
When Microsoft Windows starts up one of the first things it does is to
grab almost every available byte of system memory. Conventional
memory, high DOS memory (UMBs) andextended memory are all allocated.
Windows users should be especially zealous about doing periodic RAM
testing because Windows is one of the few applications to use the
multiple megabytes of RAM on most systems. Frequently, a system will
run without incident until Windows loads -- at which point Windows
accesses a byte of defective RAM that previously had never been used.
RAM testing is an effective pre-treatment because it allows you to
find the defective RAM before Windows trips on it.
DOS Memory Testing
Microsoft recently acknowledged the need to test system memory
regularly. The extended memory provider (HIMEM.SYS) that is included
in MS-DOS 6.2 and later includes a basic memory test. Unfortunately,
DOS's memory test has the following limitations:
It performs only a single, basic test and can only detect the simplest
errors.
It tests only extended memory, not conventional memory.
It includes no scheduling capability.
The only way to invoke the test is to reboot the system. Errors found
by the single test are likely to have been found by the system's
power-on-self-test.
The inclusion of the test within the operating system, though,
supports the premise that RAM does fail and the only way to avoid lost
work is to take preventive steps, including RAM testing.
A Note for OS/2 Users
RAMexam can test the memory on systems that run OS/2 -- in fact
RAMexam will test RAM on any Intel 386, 486, or Pentium compatible
microprocessor regardless of the operating system. The user will need
access to a system running DOS so that they can first install RAMexam
on that system and use MAKEBOOT.COM to create a bootable test
diskette. (MAKEBOOT will not run in an OS/2 DOS session because OS/2
does not support the necessary DOS SYS.COM command.) Once created,
the diskette can be used to test any Intel 386 compatible or above
based system.
How to Avoid Memory Errors
As with most of life, a byte of prevention is worth a megabyte of
cure. Maintaining a proper environment for your PC can significantly
reduce the chance of memory failure. Here are some tips:
Work in a dust-free environment.
Keep pets away from computer work areas.
Do not smoke in the same room as your PC.
Plug your PC into its own electrical circuit.
Use a surge protector or, even better, an uninterruptable power
supply (UPS).
If you use a modem or fax board, make sure that you use a telephone
line surge protector.
Always use a grounding cable when opening your PC.
Even with these precautions, there is no guarantee that RAM will not
fail. RAM testing, though, will significantly reduce the risk of
losing work to defective RAM.
Conclusion
Trusting your documents to a personal computer can be risky. Hard
disks crash, viruses strike and RAM fails. The risk of suffering
serious setbacks, though, scan be substantially reduced by taking easy
precautions. Just as you would back-up your hard disk and run an
anti-virus utility, you should periodically test your system RAM.
When you use RAMexam, you benefit from the years of memory management
experience that only the makers of Qualitas MAX 8 and C.Y.A. can
bring. RAMexam is unique in that it is the only dedicated RAM testing
utility available. Unlike system diagnostic utilities that are
designed to identify problems after you experience symptoms, RAMexam
is designed to detect problems before you suffer their consequences.
Download RAMexam demo (demo tests first 640 KB)
RAMexam at a Glance
van de Goor, A.J. Testing Semiconductor Memories: Theory and Practice,
pp. 7-8.
van de Goor, A.J. Testing Semiconductor Memories: Theory and
Practice, p. 164.
Additional Reading:
Abadir, Magdy S. and Reghbati, Hassan K. Sept. 1983. "Functional
Testing of Semiconductor Random Access Memories", ACM Computing
Surveys, pp. 175-198.
van de Goor, A.J. March, 1990. "An Overview of Deterministic
Functional RAM Chip Testing", ACM Computing Surveys, pp. 5-33.
van de Goor, A.J. 1991. Testing Semiconductor Memories: Theory and
Practice. John Wiley & Sons, West Sussex, England
Qualitas is a registered trademark and Qualitas C.Y.A. is a trademark
of Qualitas, Inc. All other product names are trademarks of their
respective owners.