組み込み技術者のための資格試験,傾向と対策(4) ―― Androidの登場で注目高まるETEC(組込み技術者試験制度)

久保 幸夫

tag: 組み込み

コラム 2010年12月17日

●どんな問題が出るの?

 ETEC試験では,実際に出題されている問題を公表していません.そこで,ETEC試験の出題範囲に挙げられている「スキル項目」の内容から推測した,ETECクラス2試験の「予想問題」を参考までに紹介します.まずは,技術要素の予想問題です.

問1 組み込み用マイコンの省電力機能として,不適切なものはどれか.
ア.クロックの生成や供給を停止する
イ.クロックの逓(てい)倍率を上げて周波数を上げる
ウ.メイン・クロックより周波数が低いサブクロックに切り替える
エ.使用しない機能モジュールの電源供給を断つ


解答 イ
解説 プラットフォームのプロセッサの問題です.
 組み込みシステムのプロセッサには,省電力が要求されることがよくあります.使用しない機能モジュールの電源供給を断つのは,省電力に効果があります.また,一般的に,ロジック回路は,動作回数に従って,消費電力が増加します.そのため,プロセッサのクロック周波数が高くなるほど,消費電力が増えます.言い換えると,クロックを下げると消費電力を下げることができます.さらに,クロックの生成や供給を停止すると,消費電力を大きく下げることができます.(この場合,当然ながら,プロセッサは休止状態になります)しかし,イは,クロックの逓(てい)倍率を上げて周波数を上げるので,消費電力は増加してしまい,不適切です.よって,イが答えとなります.

問2 排他制御について,誤っているのはどれか.
ア.セマフォを使用すると,優先度の逆転を回避できる
イ.割り込み禁止により排他制御を実現できる
ウ.排他制御区間(クリティカル・セクション)は短い方がよい
エ.複数の共有資源を,複数のタスクから相互に排他的にロックすると,デッドロックになる可能性がある

解答 ア
解説 基本ソフトウェア 排他制御の問題です.
 排他制御を実現するには,リアルタイムOSのセマフォを使用する方法以外にも,割り込み禁止を使用する方法があります.割り込みを禁止すると,タスク切り替えの契機となるイベントの発生がマスクされるため,タスクの切り替えが発生しません.すなわち,割り込み禁止状態では,実行中のタスクが排他的に資源を利用できることになります(ただし,割り込み禁止状態が長く継続すると,リアルタイム性が低下する場合があるので注意が必要).また,セマフォを使用して排他制御を実現する場合も,排他制御区間をできるだけ短くする方がよいでしょう.ちなみに,優先度が異なる3個以上のタスクが,セマフォを使用して排他的に共有資源を取り合うと,優先度の逆転が発生する場合があります.これを回避するには,ミューテックスなどの優先度を継承させる仕組みを持ったシステム・コールを使用する必要があります.従って,アが誤りとなります.

 次は,開発技術の予想問題です.

問3 C言語におけるvolatile修飾子を使用した宣言の説明はどれか.
ア.コンパイラの拡張機能を使用する場合の宣言である
イ.コンパイラの最適化を阻止する宣言である
ウ.外部変数を定義する宣言である
エ.静的変数を定義する宣言である

解答 イ
解説 ソフトウェア・コード作成とテストのプログラミング(C 言語)の問題です.
 volatile 修飾子は,C言語のコンパイラに対して,最適化を阻止する役目を持ちます.例えば,I/Oポートからの入力を,C言語で記述すると,単なる代入文(=)で記述することができます
ループの中に,I/Oポートからの入力のための代入文(=)がある場合,volatile 修飾子を使用しないと,コンパイラの最適化機能で,I/Oポートからの入力が1回だけしか代入されない場合があります.volatile 修飾子を付けると,最適化されませんので,このような不具合を阻止することができます.

注:これは,メモリマップドI/Oのプロセッサの場合であり,INPUT命令などの入力専用命令を持つI/OマップドI/Oのプロセッサの場合は異なる.

 最後に管理技術の予想問題です.

問4 ソフトウェアの品質特性のうち,信頼性について述べたものはどれか.
ア.プログラム・コードが分かりやすく,修正しやすい
イ.異なる環境にシステムを置き換えやすい
ウ.実行時間が短く,メモリなどのリソースの利用効率が良い
エ.不具合が少なく,エラーに対する許容能力が高い


解答 エ 
解説 管理技術の品質マネジメントの問題です.
 ソフトウェアの品質特性は,機能性,信頼性,使用性,効率性,保守性,移植性の6種に分類されています.さらに,各々の品質特性には品質副特性があり,信頼性は,成熟性,障害許容性,回復性,標準適合性に分類されています.
 信頼性は「指定された条件の下で利用するとき,指定された達成水準を維持するソフトウェア製品の能力」と説明されています.簡単に表現すると,正しく動作すること,といえます.これは,不具合が少なく,エラーが発生しにくい,またはエラーが発生しても影響が出にくいとも考えられます.よって,答えはエとなります.ちなみに,アは保守性,イは移植性,ウは効率性の説明です.

 以上4問,ETECクラス2試験の予想問題を掲載しました.なお,これらの問題は,過去のInterface誌のETEC試験の関連記事からの問題を転載したものです(4).これらの記事の一部はWebでも見ることができるので(「『組込みソフトウェア技術者試験 クラス2』模擬問題」や「10分1本勝負! 組み込みソフトウェア道場」など),参考にしてみてください.

 また,ETECのWebサイトには「スキル・チェック・ミニテスト」が掲載されています.ミニテストの内容は,本試験の内容とは異なるようですが,試験問題の内容やレベルを推測する上で参考になります.

試験の形式は?

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日