基本情報 平成26年度 秋期 問11:テクノロジ系に関する問題
メモリモジュールのパリティチェックの目的として, 適切なものはどれか。
- aメモリモジュールに電源が供給されているかどうかを判定する。 読出し時に, エラーが発生したかどうかを検出する。
- b読出し時に, エラーを検出して自動的に訂正する。正答
- c読み出したデータを暗号化する。
- dHh へさい
AI解説(初心者・標準・上級)
理解度に合わせて3レベルの解説を無料で読めます。
答えは b「読出し時にエラーが発生したかどうかを検出する」 です。
「パリティチェック」はデータを読むときにエラーが起きていないか確かめる仕組み。
例えば「1の数が偶数になるように1ビット追加しておく」と決めておけば、読出し時に1の数が奇数になっていたら「あ、エラーがある!」と分かります。
👉 覚え方:「パリティ=偶奇のチェック。1個間違いに気づける検出だけ」。
ほかの選択肢:a 電源確認は別の機能/c 自動訂正はECCの機能(パリティは検出のみ)/d 暗号化は別物。
なぜこれが正解か
正解は b。パリティチェックはデータ送受信・保存時のエラー検出技法で、データに1の個数を偶数(偶数パリティ)または奇数(奇数パリティ)にする1ビットを追加し、読出し時に1の個数の偶奇を確認する。一致しなければエラー発生を検出。1ビットエラーは検出可能、2ビット以上の同時エラーは検出できない点が制約。エラー位置の特定や訂正はできず、検出のみ。
各選択肢の解説
- a 電源供給判定:別の機能(POST等のハードウェア診断)。
- b エラー発生検出:パリティチェックの定義(正解)。
- c エラー検出と自動訂正:ECC(Error-Correcting Code)の機能で、パリティだけでは訂正不可。
- d 読出しデータの暗号化:別概念(メモリ暗号化、Intel SGX等)。
覚え方・ひっかけ注意
「パリティ=1ビットエラー検出のみ/ECC=検出+訂正」を区別。
- パリティ: 1ビット追加、検出のみ
- ECC(ハミング符号): 複数ビット追加、検出+1ビット訂正(SECDED: Single Error Correction, Double Error Detection)
- チェックサム: 算術和でブロック単位検出
- CRC(巡回冗長検査): 多項式除算でブロック単位検出、強力
サーバ・データセンター用メモリはECC、コンシューマ向けは非ECC(コスト優先)が標準。一般的なPCの内部メモリは現在ECC無しが多い。
理論的背景
パリティチェックは最も基本的な誤り検出符号(Error Detection Code)。8ビットデータに1ビット追加(合計9ビット)で:
- 偶数パリティ(Even Parity): 全体の1の個数を偶数にする
- 奇数パリティ(Odd Parity): 全体の1の個数を奇数にする
読出し時にパリティビット含めて1の個数を数え、設定と一致しなければエラー。ハミング距離 d=2 で、1ビットエラー検出可能・2ビット以上エラー検出不可・訂正不可。
これを発展させたのが:
- 垂直冗長検査(VRC)+ 水平冗長検査(LRC): 行と列の両方向にパリティ、2次元配置で1ビット訂正可能
- ハミング符号(Hamming Code): パリティビットを冗長配置、1ビット訂正+2ビット検出(SECDED)
- BCH符号、リードソロモン符号(RS符号): 多ビット訂正可能、QRコード・CD/DVD/Blu-ray等で使用
- LDPC符号、ターボ符号: 5G通信、衛星通信で使用、シャノン限界に近い性能
実務での使われ方
メモリ:
- ECC RAM: サーバ向けDDR4/DDR5 ECC RDIMM/LRDIMM、シングルビット自動訂正・マルチビット検出。データセンタ標準。
- 非ECC: コンシューマPC、コスト重視。宇宙線によるソフトエラー(数日に1回程度発生)はOS/アプリ層で再起動対応
- チップキル/SECDED: より高度なECC、メモリチップ単位の故障を訂正可能
ストレージ:
- HDD/SSD: 内部でリードソロモン符号やBCH符号でセクタごとに訂正
- RAID: 複数ディスクで冗長性確保。RAID 5/6はパリティベース、RAID 1はミラーリング
- ZFS、Btrfs: ファイルシステムレベルでチェックサム検証
通信:
- Ethernet: フレーム末尾にFCS(Frame Check Sequence, CRC-32)
- Wi-Fi/Bluetooth: 各種CRCで誤り検出
- 5G/LTE: ターボ符号、LDPC符号、Polar符号で高度な訂正
メモリのソフトエラー対策: 宇宙線(中性子・α粒子)でメモリビット反転(FIT率: Failure In Time、1Gビット当たり1000-10000FIT)。ECC不可欠。AMDのRyzenプロ、Intel Xeonは標準でECC対応。
試験での位置づけ
FE/AP/ES(エンベデッド)のテクノロジ系で頻出。①パリティ・ECC・CRC・チェックサムの違い、②ハミング符号、③RAIDレベル(0/1/5/6/10)、④通信エラー検出/訂正、⑤シャノンの定理、が主要論点。エンベデッド分野では信号符号化・誤り訂正の深い知識が問われる。
選択肢の発展補足
ECC機能は単純なエラー訂正を超えて、故障予測(Predictive Failure Analysis)にも応用される。ECCが頻繁に訂正をかけるメモリチップは劣化兆候があり、運用システムは事前にメモリ交換を促す(HP iLO、Dell iDRAC等のBMC機能)。Googleが大規模ECC統計を公開した論文(2009年Sigmetrics)は影響大。
量子コンピュータの量子誤り訂正符号(Quantum Error Correction)は表面符号(Surface Code)・カラー符号等が研究中。量子ビットは脆弱(デコヒーレンス)で、訂正符号なしでは実用化不可能。Googleは2024年に「Willow」量子チップで誤り訂正の閾値突破を発表し、フォールトトレラント量子計算への道筋が見えてきた。古典的なパリティ・ハミング符号の知識は量子情報理論の基礎にも繋がる。
出典:IPA(情報処理推進機構)公式 基本情報技術者試験 平成26年度 秋期 問11/ 公的機関配布資料につき出典明記の上引用。解説は合格ナビによる独自AI解説です。