Design Solution Forum(以下、DSF)では、毎年ソフトウェア技術者の方に向けた特別企画やエンジニア・セッションを実施しており、今年のDSF2017では、「Linuxシステム解析について語ろう」と題した少人数制のディスカッションを開催する予定です。
- DSF2014:Software-Testトーク「テストを意識したハードウェア、ソフトウェア設計」
- DSF2015:LLVMコンパイラ基盤を、いろいろ応用してみる
- DSF2016:ソースコードの管理について語ろう
- DSF2016:Linuxを語ろう ~Linuxのメリット・デメリット、また困ったことなど~
ここでは、ディスカッション「Linuxシステム解析について語ろう」に先立ち、同企画担当者に聞いたその背景と目的について紹介致します。
「Linuxシステム解析について語ろう」企画担当者 DSF2017実行委員辻 邦彦(写真左手)、加藤雅和(写真右手)
*聞き手 DSF企画 EDAエクスプレス菰田
菰田:まず今回の企画をやろうと思った背景についてお聞きかせ下さい。
辻:今回の企画は組込みLinuxを用いた製品開発において、トラブルが発生した時にどう対処するか?そのノウハウ、手法についてディスカッションする予定ですが、元々加藤さんとは仕事を通じてバグ解析などについて良く一緒にディスカッションしていました。
加藤:辻さんとはバグ解析に関する考え方を議論したり、関連する情報やツールなどを一緒に探したりもしていました。それで実際にバグ解析の効率が上がりましたね。
辻:二人の間でディスカッションを重ねる事でお互いに技術を高め合う事が出来ました。デバッグは製品の生産性に直接繋がらない無駄な作業と言えるのですが、コストはかかります。加藤さんと僕で話しをしている中で、ここのコストを下げる方法のアイデアは色々出てくるのですが、であれば、もっと多くの人で話をすれば、さらに新しい方法が見つかったり、またその方法を共有できるんじゃないか、と思いました。
菰田:組込みLinuxを用いた製品開発/デバッグは難しいという事でしょうか?
辻:いまの組込みLinux自体は品質がかなり良く安定して動きます。Linuxのカーネルでつまずくという事はまずありません。つまずくとすると自分で作ったところ、すなわち組込みLinux用に追加したところになります。ただLinuxのカーネル部分とごく僅かな自作部分が混在しているので、トラブルが起きるとその解析が面倒な事になります。
加藤:Linuxの巨大なカーネルの中身が見えなくて困ってしまうという事がありますが、Linuxはツールが無くてもカーネルが様々な情報を出してくれるので、それらを活用することで問題を解決できる場合もあります。
辻:Linuxのトラブル調査って、まず「dmesg」ですね。
加藤:まさにそうですね。私も「dmesg」を読めるようになるのが基本中の基本だと考えています。そして、次は「/proc」ですね。
辻:僕も仕事がらLinuxが動作するいろんなボードを触りますが、まず「/proc」見ますね。そこ見ることで、そのLinuxの素性が見えてきます。調査、ってことであれば「strace」コマンドや、またカーネルの「ftrace」も、もっと活用されても良いと思いますね。。
加藤:はい、Linuxを見える化するためのOSSのツールが色々有ったりしますね。しかし、Linuxカーネルの基本機能にしてもOSSのツールにしても実際にはあまり使われていないようです。
辻:使い方についての情報が何処かに体系的にまとまっている訳でも無く、せっかくOSSのLinuxにOSSのツールが有るのに、少なくとも日本語では情報の共有化がうまく出来ていない気がします。英語であれば「Stack Overflow」 などのwebサイトが有りますが。
加藤:情報の共有はとても重要です。でもその前に、問題に直面した時に対処法を考える、イメージする、調べるという事も大事だと思っています。
辻:その通りです。商用OSと違ってOSSのLinuxを使うにあたっては意識改革が必要なんじゃないかと思います。OSベンダの提供物では無いので、問題発生の際にサポートに頼るのではなく自分で調べるというのは当然必要となります。
加藤:自分で調べるにあたってOSSの良いところは、OSSの世界は世界中が自分のパートナー/仲間と考える事が出来る点です。
辻:そうですね。商用OSと違ったOSSの良さとは、オープン、無料、カスタム可能という点がしばしば強調されますが、それだけではなく世界中のコミュニティと情報を共有できる点は非常に大きな利点だと思います。
加藤:10年ぐらい前の組み込みLinuxだと、ハードウェア面での情報共有が難しかったのですが、いまだと「ラズパイ」などがあるために、ARM×Linuxというプラットフォームの情報共有がしやすい環境が整ってきたという感じですね。
辻:コミュケーションのし易さ、オープンな人の繋がりもOSSの良いところです。そういった意味でOSSはセミナーDSFが掲げているコンセプト「設計者ネットワーク」そのものだと思います。今回の特別企画:「Linuxシステム解析について語ろう」では、組み込みLinuxを中心にOSSについて様々な方と語り合いたいと思います。
加藤:DSF2017では、みんなでOSSの知見を集めてそれをどう発信するか?といったところまで話し合いたいと考えています。是非私達のディスカッションにご参加下さい。オタクが集まればきっと楽しくなるはずです。(笑)
DSF2017 ソフトウェア特別企画:「Linuxシステム解析について語ろう」は、セミナー当日10:40-12:40の2時間の開催を予定。会場の関係で参加人数に制限がありますので(最大20名程度)、ご興味お持ちの方は早めにお申し込み下さい。
※参加資格は問いませんが、Linuxを使った組み込みシステムの開発・デバッグ経験のある方の参加をお待ちしています。