1 Reply Latest reply on Sep 28, 2017 1:20 AM by N.Scott.Pearson

    Does unintentional power off cause CMOS RAM corruption ?

    Masahiro_Saitou

      To solve BIOS startup problem, many sites suggest replacing a button battery.
      When I saw the problem, replacing a button battery solved my problem.
      However I confirmed the battery was not depleted (It showed 3.0V).

      Are there anyone who knows what causes CMOM RAM corruption ?
      For example, does unintentional power off without shutdown sequnence cause CMOS RAM corruption ?

        • 1. Re: Does unintentional power off cause CMOS RAM corruption ?
          N.Scott.Pearson

          This is a *very* loaded question!

           

          First, let's talk about CMOS corruption. Some number of years ago, I installed an audio driver with a bad bug that, in certain circumstances, caused blue screens. Each and every time it blue screened, it would completely corrupt the CMOS. Bottom line, it can be done fairly easily. Now, can a sudden power failure cause this kind of corruption? In theory, the answer is no, but you just never know.

           

          Next, let's talk about battery replacement. First of all, the voltage of the battery doesn't have to drop much before corruption (non-retention) can occur. More often than not, however, the important thing that they asked for a replacement was because (a) they don't know what its charge is and (b) while no battery is present, a clear of the CMOS contents will occur. Really though, they more-often ask for a CMOS clear to be performed by removing the battery for some amount of time (15 minutes to be absolutely sure that the CMOS is completely cleared).

           

          Finally, let's talk about CMOS usage. Knowing that corruption can easily occur, BIOS developers started to move away from the use of CMOS to the storage of persistent variables (like the BIOS configuration data) in flash memory, which is a lot harder to corrupt and offers better security to boot. Most BIOS these days are built around Intel's Tiano EFI core (which was renamed to UEFI when it was open-sourced to the industry working group). In theory, when the BIOS developers built their BIOS around the UEFI Core, the code that was dependent upon the CMOS contents should have disappeared completely. Unfortunately, this was not the case; CMOS-dependent code was brought over from their old code base and it has never been completely eliminated subsequently. Worse, this CMOS-dependent code can cause the BIOS to fail to POST and only a clear of the CMOS will get it booting again.

           

          I hope that answer it,

          ...S