デバッグとは?
デバッグとは、プログラムに含まれる誤り(バグ)を見つけ出し、修正する作業。バグとは、プログラムが意図した通りに動作しない原因となる不具合を指す。
エンベデッドシステムスペシャリスト試験の過去問では4回出題されています(2018年度〜2025年度)。
でばっぐ
デバッグの意味
プログラムに含まれる誤り(バグ)を見つけ出し、修正する作業。バグとは、プログラムが意図した通りに動作しない原因となる不具合を指す。
デバッグの具体例
プログラムを1行ずつ実行しながら変数の値を確認する「デバッガ」というツールを使い、どの処理でエラーが起きているかを特定して修正する。
デバッグは試験でどう引っ掛けられる?
テストとの役割の違いが問われる。誤りがあるかどうかを確かめるのがテストで、見つかった誤りの原因を突き止めて直すのがデバッグ。順序としてもテストが先、デバッグが後という流れになる点まで押さえる。
デバッグと関連する用語
デバッグが出た過去問
JTAG(IEEE 1149.1)の説明として、適切なものはどれか。
正解:バウンダリスキャンテストの標準方式
要点:JTAGはバウンダリスキャンテストの標準インタフェース規格
JTAG(IEEE 1149.1)は、LSIの各入出力ピンの内側にバウンダリスキャンセルと呼ばれるレジスタを並べ、TDI/TDO/TCK/TMSの少数の信号でシフトレジスタとして直列に読み書きする規格である。これにより、基板に実装した後でもピンの値を外部から設定・観測でき、はんだ付け不良や配線の断線・短絡を検査できる。現在ではデバッグ用インタフェースとしても広く使われている。
出典:平成30年度 春期 エンベデッドシステムスペシャリスト試験 am2 問4(IPA)マイコンのJTAGを利用したデバッグ手法の説明として、適切なものはどれか。
正解:マイコンの端子を通して、外部からマイコン内蔵のデバッグ支援機能を操作し、デバッグを行う。
要点:JTAGデバッグはチップ内蔵のデバッグ機能を外部から操作する
近年のマイコンは、CPUの停止・再開、レジスタやメモリの読み書き、ブレークポイント設定といったデバッグ支援機能をチップ内部に内蔵している。JTAG方式のデバッグでは、専用の端子を通して外部のデバッガからこの内蔵機能を操作するため、実機のプログラムをそのまま動かしながら解析できる。CPUを別の装置に置き換えるインサーキットエミュレータやROMを置き換える方式とは異なり、実装したままの状態で調べられるのが利点である。
出典:令和2年度 10月 エンベデッドシステムスペシャリスト試験 am2 問19(IPA)組込みソフトウェア開発のデバッグツールに関する説明のうち、適切なものはどれか。
正解:オシロスコープは、信号の波形を見ることができるので、タイミングの検証やリアルタイム性の検証に用いることができる。
要点:オシロは波形を見てタイミングと実時間性を検証できる
オシロスコープは信号の電圧波形を時間軸に沿って観測する測定器で、パルスの幅や立上り時間、信号どうしの時間関係を実時間で確認できる。割込み応答までの遅れや周期処理の揺らぎといった、実行を止めては測れないリアルタイム性の検証に適している。
出典:令和6年度 秋期 エンベデッドシステムスペシャリスト試験 am2 問18(IPA)IoT機器においてもセキュリティ対応は重要であり、脆弱性対策の一つに耐タンパ性を高める方法がある。耐タンパ性を高める方法として、適切なものはどれか。
正解:IoT機器の内部構造や動作状態の解析を困難にする機構をもたせる。
要点:耐タンパ性は分解・解析を困難にする性質
耐タンパ性とは、機器を分解・解析されても内部の情報や仕組みを容易には読み取れない性質を指す。回路や記憶内容の解析を妨げる構造、開封を検知して鍵を消去する仕組み、デバッグ端子の封鎖などによって高められる。物理的に手元に置かれる可能性があるIoT機器では特に重要になる。
出典:令和7年度 秋期 エンベデッドシステムスペシャリスト試験 am2 問24(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。