応用情報技術者過去問題 平成22年春期 午後問7

問7 組込みシステム開発

タクシーの料金メータの設計に関する次の記述を読んで,設問1〜3に答えよ。

 S社は,タクシーの料金メータ(以下,タクシーメータという)を開発している。S社では,ソフトウェアの品質向上を図るために,設計後のレビューを強化することにした。実施したレビューにおいて,タクシーメータのソフトウェアに不具合が見つかった。

〔ソフトウェア構成〕
 タクシーメータは,リアルタイムOS(以下,RTOSという)を使用している。RTOS上では,表示タスク,料金計算タスク,操作パネルタスク,走行距離通知タスク及びRTOSのタイマタスクが動作する。これらのタスク実行中は,特に指定がない限り,すべての割込みが許可されている。
 タクシーメータは,タイマ割込み及び操作パネル割込みを使用している。これらの割込みは,タイマ割込みハンドラ及び操作パネルハンドラで処理される。各ハンドラは,それぞれタイマタスク及び操作パネルタスクを起動する。
 タクシーメータのタスク一覧を表に示す。
pm07_1.gif/image-size:512×310
〔RTOSの仕様(一部)〕
  • タスクは,優先度によって実行が決定される。優先度は変更することができる。
  • タスク同期制御にイベントフラグを使用する。イベントフラグの操作にはセット及びクリアがある。
  • タスクはイベントフラグのセット待ち要求を行うと,イベントフラグがセットされるまで待ち状態となる。既にイベントフラグがセットされている場合は,セット待ち要求を行っても,待ち状態にはならない。
     セット待ち要求では,タイムアウトの設定ができる。タイムアウトになると,指定時間内にイベントフラグがセットされなくても,待ち状態が解除される。
  • タスクごとに,特定又はすべての割込みに対して,割込み禁止及び割込み許可を指定できる。
〔タクシーメータの仕様〕
 操作パネルで"賃走"を指定すると,最初に"L0メートル走行するまで"又は"T0秒経過するまで"料金はP0円である。これを初乗りという。
 初乗りの条件を過ぎると,"L1メートル走行する"又は"T1秒経過する"ごとに,料金がP1円ずつ加算される。L0,T0,P0,L1,T1,及びP1は特別な装置によって設定可能である。
 料金の計算は,操作パネルで"支払い"ボタンが押されるまで続けられる。

〔料金計算タスク〕
 料金計算タスクの処理の流れを図に示す。料金計算タスクは,初乗りから"支払い"ボタンが押されるまでの間,図の②〜⑦の処理を続ける。
pm07_2.gif/image-size:495×379
〔不具合の指摘〕
 レビューを実施したところ,次の二つの指摘があった。
  • イベントフラグのセット待ち方法の不具合とその対策
     料金計算タスクにおいて,イベントフラグのセット待ちを要求しでも,待ち状態にならないことがある。その結果,表示金額の計算が過大となってしまう。
     この不具合は,aの直後に,bが起きると発生する。aによってcが解除され,料金計算タスクは実行状態となり,イベントフラグをdする。この直後にbがあると,イベントフラグがセットされてしまい,次のイベントフラグのセット待ちで待ち状態にならない。
     この不具合は,図中のeと⑤とを入れ替えることで回避できる。
  • 操作パネル割込み制御の不具合とその対策
     図中の処理⑦では,表示タスク通知処理の開始から終了までの間,操作パネル割込みは禁止されているので,操作パネル割込みは実行されないはずである。しかし,次のような場合に,操作パネル割込みを実行してしまう。
     操作パネル割込みを禁止した直後にfが発生すると,fハンドラによってgが起動され,料金計算タスクは処理が中断される。
     起動されたタスクは,操作パネル割込みを許可しているので,hが発生すると受け付けてしまう。
     現在の処理を大きく変更せずにこの不具合を回避するには,表示タスク通知処理実行中は,タスクの優先度をタイマタスクの優先度と同じにするか,又は表示タスク通知処理を行う間は,すべての割込みを禁止すればよい。

設問1

イベントフラグのセット待ち方法の不具合について,(1),(2)に答えよ。ただし,表示タスク通知処理では,ほかのタスクを起動することはないものとする。
  • 本文中のadに入れる適切な字句を答えよ。
  • 本文中のeに入れる,図中の処理の番号を答えよ。

-解答入力欄-

    • a:
    • b:
    • c:
    • d:
    • e:

-解答例・解答の要点-

    • a:タイムアウト
    • b:走行通知
    • c:イベントフラグのセット待ち 又は 待ち状態
    • d:クリア
    • e:C

-解説-

この設問の解説はまだありません。

設問2

操作パネル割込み制御の不具合について,fhに入れる適切な字句を答えよ。

-解答入力欄-

  • f:
  • g:
  • h:

-解答例・解答の要点-

  • f:タイマ割込み
  • g:タイマタスク
  • h:操作パネル割込み

-解説-

この設問の解説はまだありません。

設問3

操作パネル割込み制御の不具合とその対策で示したように対処する場合,表示タスク通知処理の実行時間をできるだけ短くしなければならない。その理由を30字以内で述べよ。

-解答入力欄-


-解答例・解答の要点-

  • タイマタスクの実行が遅れないようにするため (21文字)

-解説-

この設問の解説はまだありません。
問7成績
【22年春期 午後問題】
 問1 問2 問3 問4 問5 問6 問7 問8 問9 問10 問11 問12
© 2010-2019 応用情報技術者試験ドットコム All Rights Reserved.

Pagetop