パソコンのCMOSバッテリーとは何か

パソコン

CMOSバッテリーはパソコンの電源が切れていても、時刻や設定を記憶しておくための電池のことです。

パソコンケースを開けて内部のマザーボード見ると、

このような丸い電池が入っています。
上の写真はデスクトップ用、下の写真はノートやMINIPC用でリード線とコネクタが付いたものです。

一般に、CR2032という二酸化マンガンリチウムボタン電池(充電できない一次電池)が使用されており
・入手のしやすさ(安価)
・適度な大きさ(大きすぎず基板を占有しない 直径20mm 高さ3.2mm)
・適度な容量(公称容量220mAh)
・適切な電圧(3V)
・等々
バランスを考慮してCR2032が使われております。
(ですがごく稀に、充電式のものや別形状のものがあるようです)

パソコンはOSが起動する前に、保存された設定を読み込み
・どのSSD(HDD)から起動するのか?
・CPUのスピード
・セキュリティー
・日付時刻
・などなど
を読み込んだ後、OSを起動します。

電池が切れるとどうなるのか?

ですので、電池が切れると設定が消えてしまい日付時刻もずれてしまいます。
するとパソコンはどのSSDから読み込んでいいのかわからなくなり、OSが起動できなくなります。
一例ですが、画面がこのようになりこの後進まなくなります。
「BIOS設定を回復せよ」とのメッセージが表示されています。
BIOS設定とはパソコン設定のことです。
この画面は、パソコンのメーカーや型番により違ってきます。

このパソコンの場合、F1キーを押すことによって、BIOS設定(UEFI設定)をすることができますが、d電池が切れていると何度繰り返しても結局この画面で止まってしまい、パソコンが起動しません。

このような状況になると、電池を交換するしかありません。
CMOSバッテリー交換方法はココに詳しく説明していますので参考にしてください。

日付時刻とBIOS設定を記憶する仕組み

パソコンにはRTC(リアルタイムクロック)といわれるICチップがマザーボード上に搭載されています。RTCは時計機能とBIOS設定を記憶しておくRAM領域(数百バイト)を持っており、CMOSバッテリーの電気で常に動作しています。パソコンの電源を切っていてもRTCは常に動いており、正確な時刻を刻み記憶を保持し続けています。

ここで疑問が湧いてきます。

1.日付時刻はOS起動後にNTPで時刻を合わせればよいので、RTCは不要では?
2.BIOS設定はEEPROM・フラッシュメモリ等の不揮発性メモリに記憶しておけばよいので、CMOSバッテリーは不要では?

との問いです。

1.の問いに対するの問題点について考えてみましょう。
まず、NTPはTCP/IPのアプリケーション層で動作しており、プロトコルスタックが読み込まれるまで実行させることができません。OS起動中にもログは記録されており、問題があった場合や稼働状況の把握分析に使用するため、時刻が不正確だと不都合になります。
また、パソコンをスタンドアロンで使用する場合も考えられるためその場合現在時刻のもととなる別のハードウェアが必要になります。

2.の問いに対するの問題点は
まず、EEPROMやフラッシュメモリを新たに基板上に設置することによるコスト増加が考えられます。メモリデバイスの調達コスト・基板設計時の設計コスト・基板量産時生産コスト、パソコンメーカーは利益を上げるために、少しでもコスト削減を考えます。せっかく電池で動いているRTCに記憶域があるのでそれを利用すれば良いじゃないかとなります。また、RTCは常に電池で動いていることを想定しているので、RTCのRAM領域をわざわざROMに変更することもありません。

ですのでCMOSバッテリーで常に動作しているRTCはパソコンにとって必須なのです。

我々は漠然とパソコンを使っていますが、その仕組みや構造はよく考えらて作られていることに気づくと、とても興味深くありがたくも思います。

CMOSバッテリー(CR2032)の入手先

・100円ショップ
・コンビニ
・スパー
・家電量販店
・ホームセンター
・パーツショップ(アキバ・日本橋・大須・等)
・アマゾン、楽天などの通販

緊急の場合は夜中でも営業しているコンビニでも入手できますが、日中であれば100円ショップでも良いですね。

リード・コネクタ付CR2032はパーツショップや通販でしか調達できないので、交換まで時間がかかってしまいます。
3Dプリンターを所有している場合、簡易的に電池ホルダーを印刷して修理する方法もココで紹介していますので、参考にしてください。

コメント

タイトルとURLをコピーしました