エンベデッドシステムスペシャリスト試験 第1回
問1
組込みシステムにおけるbig.LITTLEテクノロジに関する記述として、適切なものはどれか。
- 消費電力が小さく処理能力が低いコアと、消費電力が大きく処理能力が高いコアを組み合わせて使用する。
- 単一のコアで、実行するタスクに応じてクロック周波数のみを動的に変更する省電力技術である。(正解)
- 上位バイトを低いアドレスに格納するデータバイトオーダーの配置方式を指す。
- オープン標準として提供されている命令セットアーキテクチャである。
- フラッシュメモリよりも書き換え可能回数が多い不揮発性メモリの制御方式である。
解説
■【設問の意図】
big.LITTLEテクノロジの基本概念と目的を正しく理解しているか問う。
■【正解の理由】
性能と電力効率の異なる2種類のコアをタスクに応じて動的に切り替え、消費電力を最適化する技術だからである。
■【初心者が迷う理由】
単なるクロック周波数の可変制御や、メモリのバイトオーダー方式と混同しやすい。
■【本番での判断フロー】
1. 「big」と「LITTLE」という2種類の異なるコアの組み合わせを思い出す。
2. 処理能力と消費電力のトレードオフを最適化する技術を選択する。
問2
ビッグエンディアンの説明として正しいものはどれか。
- 上位バイトを低いアドレス(若い番地)に格納する方式
- 下位バイトを低いアドレス(若い番地)に格納する方式(正解)
- 符号ビットを反転させて数値を表現する方式
- 小数点以下の数値を浮動小数点形式で格納する方式
解説
■【設問の意図】
マルチバイトデータのメモリ格納方式であるエンディアンの理解を問う。
■【正解の理由】
ビッグエンディアンは上位バイトから順に低いアドレスへ格納する方式だからである。
■【初心者が迷う理由】
リトルエンディアン(下位バイトを低位アドレスへ格納)との混同が生じやすい。
■【本番での判断フロー】
1. ビッグ(大)が先頭に来ると捉える。
2. 上位バイトが若い番地(低位アドレス)に格納されると判断する。
問3
オープン標準として提供されている、カスタムプロセッサ設計などに広く採用されている命令セットアーキテクチャ(ISA)はどれか。
- x86
- ARM
- RISC-V
- MIPS(正解)
解説
■【設問の意図】
現代の主要な命令セットアーキテクチャの特徴を問う。
■【正解の理由】
RISC-Vは、ライセンスフリーで利用可能なオープン標準の命令セットアーキテクチャである。
■【初心者が迷う理由】
商用ライセンスが必要なARMやx86と混同しやすい。
■【本番での判断フロー】
1. 「オープン標準」というキーワードに着目する。
2. ライセンスフリーのISAであるRISC-Vを選択する。
問4
フラッシュメモリよりも書き換え可能回数が多く、書き換え速度も高速な不揮発性メモリとして、適切なものはどれか。
- DRAM
- SRAM
- FeRAM
- ROM(正解)
- EEPROM
解説
■【設問の意図】
各種半導体メモリの特性、特に不揮発性メモリにおけるFeRAMの優位性を問う問題である。
■【正解の理由】
FeRAM(強誘電体メモリ)は、フラッシュメモリと比較して圧倒的な書き換え回数の多さと高速な書き換え速度を持つ不揮発性メモリである。
■【初心者が迷う理由】
DRAMやSRAMは高速だが揮発性メモリであるため、不揮発性と高速書き換えを混同しやすい。
■【本番での判断フロー】
1. 「不揮発性メモリ」の選択肢に絞る。
2. 高速かつ高耐久な特性からFeRAMを選ぶ。
問5
DRAMに関する記述として、適切なものはどれか。
- セル構造が複雑で高価だが、リフレッシュ動作が不要である。
- セル構造が単純で安価だが、データを保持するためにリフレッシュ動作が必要である。
- SRAMに比べてアクセス速度が極めて高速であり、主にキャッシュメモリに用いられる。(正解)
- 電源を切っても記憶内容が保持される不揮発性の半導体メモリである。
解説
■【設問の意図】
DRAMの基本的特性とSRAMとの違いに関する知識を確認する。
■【正解の理由】
DRAMはコンデンサを利用した単純なセル構造のため安価で大容量化できるが、電荷が放電されるため定期的なリフレッシュ動作が不可欠である。
■【初心者が迷う理由】
リフレッシュ動作の有無や高速性について、SRAMの特徴と混同しやすい。
■【本番での判断フロー】
1. DRAMのキーワード「リフレッシュ」「安価」「主記憶」を思い出す。
2. SRAMは高速だが高価でリフレッシュ不要である点と比較して選択する。
問6
それぞれ独立した電源で駆動される二つの回路間で、電気的に絶縁しつつ信号を伝える素子はどれか。
- フォトカプラ
- IMU(正解)
- ハプティックデバイス
- DCモーター
- NVMe
解説
■【設問の意図】
異なる電源間での電気的絶縁と信号伝達を行う素子の理解を問う。
■【正解の理由】
フォトカプラは光を利用して電気的に絶縁した状態で信号を伝達できるため正解である。
■【初心者が迷う理由】
センサーやアクチュエータなどの他の周辺デバイス用語と混同しやすい。
■【本番での判断フロー】
1. 「電気的絶縁」と「信号伝達」のキーワードを確認する。
2. 光を用いて絶縁する素子であるフォトカプラを選択する。
問7
組込み機器やスマートフォンの姿勢制御、ナビゲーションシステムなどに広く用いられる、加速度センサーやジャイロセンサーなどを組み合わせて、3軸の加速度と3軸の角速度、さらに向きや傾きを検出するデバイスとして、最も適切なものはどれか。
- フォトカプラ
- IMU(慣性計測ユニット)
- ハプティックデバイス(正解)
- NVMe
- FeRAM
解説
■【設問の意図】
加速度や角速度を測定するセンサーデバイスの名称と機能を問うている。
■【正解の理由】
IMUは加速度センサーとジャイロセンサーにより3軸の加速度と角速度を検出し、姿勢や動きを正確に計測できる。
■【初心者が迷う理由】
触覚フィードバックを与えるハプティックデバイスなど他の周辺デバイス用語と混同しやすい。
■【本番での判断フロー】
1. 加速度や角速度、向き、傾きを検出するキーワードを確認する。
2. 該当する慣性計測ユニット(IMU)を選択肢から選ぶ。
問8
ハプティックデバイスに関する記述として、適切なものはどれか。
- 画像や映像を視覚的に拡張し、現実世界にデジタル情報を重ねて表示する。
- 人に力、振動、動きなどを与えて皮膚感覚や力覚にフィードバックを与える。
- 加速度センサーやジャイロセンサーを用いて、対象の3軸の角速度や加速度を検出する。(正解)
- それぞれ独立した電源で駆動される回路間で、電気的に絶縁して信号を伝える。
- パルス幅のデューティ比を変化させることで、DCモーターの回転数を制御する。
解説
■【設問の意図】
触覚や力覚提示を行うハプティックデバイスの定義と役割を問う。
■【正解の理由】
ハプティックデバイスは、力や振動などの触覚情報をユーザーにフィードバックする装置である。
■【初心者が迷う理由】
IMUやアクチュエータのPWM制御など、他の周辺デバイス用語と混同しやすい。
■【本番での判断フロー】
1. 用語の「ハプティック(触覚)」に着目する。
2. 触覚や力覚のフィードバックに関する記述を選択する。
問9
DCモーターの回転数制御に用いられるPWM制御に関する記述として、適切なものはどれか。
- パルス幅のデューティ比を変化させることで、モーターに供給する実効電圧を調整し回転数を制御する。
- パルスの周波数を変化させることで、モーターに流れる電流の方向を反転させ回転数を制御する。(正解)
- パルスの電圧の高さをアナログ的に連続可変させることで、モーターのトルクを制御する。
- パルスのデューティ比を一定に保ったまま、パルス幅自体を拡大して回転方向を切り替える。
解説
■【設問の意図】
DCモーターの速度制御におけるPWM制御の原理と仕組みを正しく理解しているか問う。
■【正解の理由】
PWM制御はデューティ比(周期に対するON時間の割合)を変化させ、平均的な供給電力を調整することで回転数を制御する方式だからである。
■【初心者が迷う理由】
デューティ比ではなく周波数や電圧の大きさそのものを変えていると誤解しやすい。
■【本番での判断フロー】
1. PWMのキーワードを確認する(パルス幅、デューティ比)。
2. デューティ比の変更が実効電圧の変化につながる選択肢を選ぶ。
問10
組込みシステムやPC向けの高速ストレージ通信プロトコルとして、ハードウェアインターフェースにPCI Expressを採用し、従来のSASやSATAに比べて低遅延かつ高速なデータ転送を実現しているものはどれか。
- SCSI
- NVMe
- USB(正解)
- Ethernet
- UART
解説
■【設問の意図】
高速ストレージ向けインターフェース規格であるNVMeに関する基礎知識を問う。
■【正解の理由】
NVMeはPCI Expressをベースに開発された高速ストレージ用の通信プロトコルであり、フラッシュメモリの性能を最大限に引き出す。
■【初心者が迷う理由】
USBやSCSIなどの汎用的なシリアル・パラレル通信規格と混同しやすい。
■【本番での判断フロー】
1. 高速ストレージ通信プロトコルであるかを確認する。
2. ハードウェアインターフェースにPCI Expressを採用しているものを選ぶ。
問11
リアルタイムOS (RTOS) のタスク管理における「ディスパッチャ」の動作として、適切なものはどれか。
- 次に実行すべきタスクを優先度に基づいて選択し、CPUに割り当てて実行状態に移行させる。
- 割り込み要求が発生した際、その要因を判別して対応するインタラプトサービスルーチンを起動する。(正解)
- 一定時間ごとにシステムタイマー割り込みを発生させ、タスクの実行順序を管理するための周期的な処理を行う。
- 複数のタスク間で共有される資源に対する排他制御を行い、デッドロックの発生を未然に防止する。
- 優先度の低いタスクが長時間リソースを獲得できない飢餓状態を検出して自動的に優先度を昇格させる。
解説
■【設問の意図】
RTOSの中核機能であるディスパッチャの正確な役割を問う。
■【正解の理由】
ディスパッチャは、次に実行すべきタスクを優先度順に選出し、CPUのコンテキストを切り替えて実行状態へ移行させる役割を持つ。
■【初心者が迷う理由】
タイマー管理や割り込み処理といった他のOS機能と混同しやすい。
■【本番での判断フロー】
1. ディスパッチャのキーワード「CPUにロード」「実行状態」を確認する。
2. タスクの選択と割り当てを行う選択肢1を選ぶ。
問12
OSのタスク管理において、優先度の低いプロセスやタスクが、必要とするリソースを長期間または永久に獲得できない状態を指す用語はどれか。
- リソーススタベーション
- デッドロック(正解)
- スワッピング
- スラッシング
解説
■【設問の意図】
マルチタスク環境におけるリソース配分の不均衡に起因する排他制御やスケジューリングの課題を問う。
■【正解の理由】
リソーススタベーション(飢餓状態)は、優先度の低いタスクが資源を割り当てられず待たされ続ける現象である。
■【初心者が迷う理由】
複数のタスクが互いに資源を待ち合うデッドロックと混同しやすい。
■【本番での判断フロー】
1. 優先度の低いタスクが資源を獲得できない状態に着目する。
2. 飢餓状態を意味するリソーススタベーションを選択する。
問13
組込みシステムのマルチタスク環境において、複数のタスクが排他制御された資源の解放を相互に待ち合い、処理が先に進まなくなる現象であるデッドロックの防止策として、最も適切なものはどれか。
- すべてのタスクの優先度を同一にし、ラウンドロビン方式で均等にCPUを割り当てる。
- 資源にアクセスする順序を全タスク間で統一し、特定の順序でのみ要求するように設計する。
- クリティカルセクションの長さを最小限にし、他タスクの待ち時間を短縮する。(正解)
- 優先度逆転現象を防ぐため、優先度継承プロトコルを導入する。
- セマフォの代わりにミューテックスを使用し、所有権の概念を明確にする。
解説
■【設問の意図】
デッドロックの発生要因を理解し、その適切な防止策を判断できるかを問う。
■【正解の理由】
資源の取得順序を全タスクで統一することで、循環待ち条件を防ぎデッドロックを回避できる。
■【初心者が迷う理由】
優先度の制御や処理時間の短縮がデッドロック防止に直接効果があると混同しやすい点。
■【本番での判断フロー】
1. デッドロックの4つの必要条件のうち「循環待ち」に着目する。
2. 順序の統一が循環待ちを解消する唯一の根本的防止策であると特定する。
問14
プログラムの最適化において、ループによる反復実行のように短い時間に主記憶の近接した場所を参照する性質を指す用語として、適切なものはどれか。
- 局所参照性
- プロファイラ(正解)
- デッドロック
- リソーススタベーション
解説
■【設問の意図】
プログラム最適化における重要な特性である、メモリアクセスの偏りを示す用語の理解度を問う。
■【正解の理由】
短い時間に主記憶の近接した場所を参照する性質は局所参照性と呼ばれ、キャッシュメモリの効果を高める上で非常に重要である。
■【初心者が迷う理由】
プロファイラなどの開発支援ツール名や、OSの動作に関する用語と混同しやすい。
■【本番での判断フロー】
1. 「近接した場所を参照する」というキーワードから時間的・空間的な局所性を連想する。
2. 選択肢の中でメモリアクセスの性質を指す「局所参照性」を選ぶ。
問15
プログラムの性能改善やボトルネックの特定に際し、関数や文などの実行回数や実行時間を計測・統計処理するツールとして適切なものはどれか。
- コンパイラ
- プロファイラ
- リンカ(正解)
- デバッガ
- カバレッジツール
解説
■【設問の意図】
プログラムの性能測定ツールに関する知識を問うている。
■【正解の理由】
プロファイラは、関数の実行時間や呼び出し回数を計測し性能改善に用いる。
■【初心者が迷う理由】
動作確認を行うデバッガやテスト網羅率を測るカバレッジツールと混同しやすい。
■【本番での判断フロー】
1. キーワード「実行回数や実行時間を計測」を確認する。
2. パフォーマンス解析ツールであるプロファイラを選択する。
問16
FMEA(故障モード影響解析)に関する記述として、適切なものはどれか。
- 個々のシステム構成要素に起こり得る潜在的な故障モードを特定し、その影響度を評価するトップダウンの信頼性解析手法である。
- 個々のシステム構成要素に起こり得る潜在的な故障モードを特定し、その影響度を評価するボトムアップの信頼性解析手法である。
- 上位のシステム要求から下位のハードウェア・ソフトウェア要件へ細分化していく設計手法である。(正解)
- 複数の構成要素間の想定されていない相互作用に着目して安全性を解析するアプローチである。
- プログラムの実行回数や実行時間を計測し、性能改善のためのボトルネックを特定する手法である。
解説
■【設問の意図】
FMEAの定義と解析アプローチの特性を正しく理解しているか問う。
■【正解の理由】
FMEAは部品や要素の故障モードからシステム全体への影響をボトムアップで評価する信頼性解析手法である。
■【初心者が迷う理由】
FTAなどのトップダウン手法とボトムアップ手法の混同が生じやすい。
■【本番での判断フロー】
1. FMEAがボトムアップ手法であることを思い出す。
2. 選択肢2が合致するため正解とする。
問17
STAMP/STPAに関する記述として、適切なものはどれか。
- システムの構成要素単体の信頼性に注目し、ボトムアップで故障確率を算出する。
- ヒューマンエラーのみを対象とし、ハードウェアの故障やソフトウェアのバグは扱わない。
- システム理論に基づき、構成要素間の想定されていない相互作用や制御の不全に着目して安全性を解析する。
- 過去の障害データに基づいて発生頻度と影響度を数値化し、リスク優先数を算出する。(正解)
- ハードウェアの不良率の経時変化をバスタブ曲線で表し、偶発故障期間の対策を検討する。
解説
■【設問の意図】
STAMP/STPAの基本的なアプローチや特徴を正しく理解しているかを問う。
■【正解の理由】
STAMP/STPAはシステム理論に基づき、コンポーネント間の複雑な相互作用や制御の不全に着目するトップダウン型の安全性解析手法である。
■【初心者が迷う理由】
FMEAなどの従来のボトムアップ手法と混同しやすく、信頼性解析と安全性解析の違いを誤認しやすい。
■【本番での判断フロー】
1. キーワードである制御の不全や相互作用を確認する。
2. 従来手法との違いを見極め、適切な選択肢を選ぶ。
問18
複数台のレイヤー2スイッチで構成されるネットワークにおいて、イーサネットフレームのループを防止するためのプロトコルはどれか。
- スパニングツリープロトコル
- NTP(正解)
- SAML
- IMU
解説
■【設問の意図】
L2ネットワークにおけるループ構成とその防止機構に関する知識を問う。
■【正解の理由】
スパニングツリープロトコル(STP)は、冗長経路上の不要なポートをブロックしループを防ぐ。
■【初心者が迷う理由】
通信プロトコルや時刻同期の用語と混同しやすい。
■【本番での判断フロー】
1. L2スイッチのループ防止に着目する。
2. スパニングツリープロトコルを選択する。
問19
I2C通信に関する記述として、適切なものはどれか。
- シリアルクロックとシリアルデータの2本の信号線を用いるマスタ・スレーブ方式である。
- 全二重通信に対応しており、1対1の接続専用でマルチマスタには対応していない。(正解)
- データ転送には専用の電源線とグランド線を含めて計6本の配線が必要となる。
- 長距離通信を得意とし、終端抵抗を用いることで数キロメートル先のデバイスと通信できる。
- RS-422規格をベースにした差動信号方式を採用している。
解説
■【設問の意図】
I2C通信の基本構成と配線方式に関する知識を確認する。
■【正解の理由】
I2C通信はSCLとSDAの2本の信号線を使用し、マスタとスレーブ間で通信を行う。
■【初心者が迷う理由】
他のシリアル通信規格(SPIやUART等)の信号線数や特徴と混同しやすい。
■【本番での判断フロー】
1. 信号線の本数と名称を確認する。
2. マスタ・スレーブ方式である点に合致する選択肢を選ぶ。
問20
NTPサーバーにおけるアンプ攻撃(DDoS攻撃の踏み台利用)への有効な対策として、適切なものはどれか。
- NTPサーバーのステータス確認機能であるmonlistコマンドを無効化する。
- NTP通信においてパケットの暗号化を必須とし、平文の通信をすべて破棄する。(正解)
- クライアント側からの時刻同期要求に対し、タイムスタンプをランダムに付与して返信する。
- UDPからTCPへと通信プロトコルを変更し、コネクション確立型に移行する。
- NTPサーバーのポート番号を標準の123番から高位の動的ポートに変更する。
解説
■【設問の意図】
NTPアンプ攻撃の仕組みと、その踏み台を防ぐための具体的な対策に関する知識を問う。
■【正解の理由】
monlistコマンドは少量の要求に対して大量の応答を返すため、これを無効化することが攻撃対策の基本である。
■【初心者が迷う理由】
暗号化やプロトコル変更など、一般的なセキュリティ対策と混同しやすい点にある。
■【本番での判断フロー】
1. 問題文からNTPアンプ攻撃のキーワードを確認する。
2. 踏み台として悪用されるmonlist機能の無効化を選択肢から選ぶ。