2022年8月14日日曜日

TOPPERS/ASPのビルドからデバッグまで その5

続きを書きました。

OpenOCDの導入編です。


で、この「OpenOCD」とはなんぞや?ということですが、一言で言えばオンチップ・エミュレータのオープンな実装です。

GNUデバッガ(GDB)と組み合わせて使用されます。

これらのソフトウェアと、あとは簡単なハードウェアがあれば、それがたとえ開発しているパソコンの外に繋がっている別のターゲットで動いているソフトウェアであっても、ブレークポイントを仕掛けたり、そのときの変数の値を参照したりすることができます。

まるで、VisualStudioでパソコンのアプリケーションを開発するときみたいに。


パソコン上で、同じパソコンで動くソフトウェアを開発することを「セルフ開発」とか言います。

このセルフ開発の場合は、比較的早い時期からデバッグ環境は整っていましたし、別途ハードウェアも必要ないことから、無償か安価で広く使われてきました。

一方、パソコン上で、別のターゲットで動くソフトウェアを開発することを「クロス開発」と呼びますが、この場合には、デバッグのために大掛かりなハードウェアと専用のソフトウェアが必要となり、お値段もそれなりに掛かりました。

かつては多くのメーカーが使用するCPUごとに様々な製品を発売し、市場を賑わせていたものです。

その状況を一変させてしまった要因の一つが、この「OpenOCD」です。

これと簡単で安価なハードウェアを組み合わせることにより、市販のオンチップ・エミュレータと同等のデバッグ環境を構築することが可能となったのです。

安価なハードウェアとは、例えば、私も愛用しているブルガリアの企業Olimexのデバッガです。

8000円以下で買えちゃいます。

これと組み合わせて使うソフトウェアが「OpenOCD」です。

Olimexのデバッガ


そんな便利なソフトウェアである「OpenOCD」はタダで使えます。


それをやられちゃあ、オンチップ・エミュレータを作っていたメーカーはタマッたモンじゃない!


…というわけで、近年これらのメーカーは物凄い勢いで撤退していきました。

今残っているのは、コンピューテックスさんや、京都マイクロコンピュータさんくらいじゃないかな?

ただし、これら有償のオンチップ・エミュレータは近年著しく高性能化しています。

生き残りのために「OpenOCD」にはできない機能をバンバン入れて、付加価値を高めています。

両方のメーカーの製品を使ったことがありますが、お値段に見合う信頼性と機能性は十分持ち合わせています。

ただ、個人が趣味で使うには高価過ぎるというだけです。


そんな偉大な「OpenOCD」なんですが、Cygwinにはパッケージが存在しないので、ソースコードからビルドしなければなりません。

面倒くさいですがお付き合いを。


それにしても、オープンソースが既存の市場を壊滅させてしまう世の中とは。

くわばらくわばら。

0 件のコメント:

コメントを投稿

MLAA License

 名称:「MLAAライセンス」(MLAA) タイプ: ・コピーレフト…× ・ライセンス文の掲示…〇(ソースコード頒布のみ) ・コピーライト(著作権)…〇(ソースコード頒布のみ) ・その他…〇(バイナリ頒布のみ) 原文: Copyright: 2010 Jorge Jimenez ...