どうしてスタブを作りこまないの?

  • 投稿日:
  • by
  • カテゴリ:



組み込みシステムなら、gdb用のスタブを作りこむべきです。


いまどきは、ターゲットシステム(実システム)上にOSなどが搭載されることも多く、モノによってはシェルを搭載していることもあるためでしょうか。


ターゲット上でgdbを動かすと言う間抜けな解説を目にしました。


そんなもの出荷時には搭載できないのですから、フィールドでのトラブルシューティングにまったく使えません。


相変わらず、古代の手法が繰り返されます。



そんなものgdbスタブを搭載しておいて、gdbラップするツールをサービスオンさせればよいだけのことなのです。


もちろんチェンジニアにそんな能力はないわけですが、重点顧客にたいする即応サービス部隊には、まさにそういうツールが必要なのです。


FAで用いられるPLCなどにはそういうツールがはじめから備わっています。設備のダウンタイム削減はシビアな問題だからです。


プログラムのロジックの書き換えはできなくても、ユーザの保守担当者が内部のモニタは詳細におこなえて当然なのです。



もちろん小さなマッチ箱の中にもそういう仕組みを作りこんでいるメーカは多数あります。そういうメーカではテレメトリがどうとか、GEのシックスシグマがどうとかいうず~~~っと前から、専用のデバッグポートがあり、専用の装置をつなぐだけで、故障解析ができます。


そういうメーカにとって、その機能はあって当たり前で、新しい装置を作るときにも苦も無く移植されます。コストアップになるのは部品代だけですが、新規回路の設計が不要であり、カネがかからないので大して問題になりません。


どちらかというと潜在的に削減されているサービスコストの方が大きいでしょう。



そういう知ってる人は知っている話、を知らない人は、ほんとうに、まったく知らないわけです。


gdbスタブというのはただの例で、誰でもマニュアル読んで実装できるサンプルでしかありません。インターフェースを決めるのが大変だから、gdbを例示しているだけのことです。実際のgdbスタブが大して役に立たないというなら、自前でしっかりしたインターフェースを作りこめばいいのです。


三菱電機やオムロン、キーエンスですらやっていることです。