(toppers-users 1059) Re: アプリケーション・プログラマのための入門書

Hiroshi Doi pikachu @ kaguyahime.ne.jp
2003年 8月 19日 (火) 23:39:54 JST


アスタの土居です。

> 1 ネットワークに繋がった組み込み機器
> 2 ネットワークに繋がった他の機器から制御する
> 3 2から複数の1を制御するため、ホームサーバを設置する
> と3つの課題が想定できますね。

 私は 3 の考え方が一番重要であると考えています。たとえ機器がひとつ
しかなくたってその考え方をいつもするのだということを心がけています。

 Unix 屋が、上記のようなことを実現しようとするなら、まず 3 でいう
ところの「ホームサーバ」の機能を提供する daemon を動作させることを
考えます。

 次に、その daemon が制御する機器 (デバイスですね) を抽象化させて
いろんなデバイスに対応できるようなプロトコルを考えます。

 daemon が多種類の機器とやりとりする部分はデバイスドライバと
いうことになりますね。機器に依存する部分を吸収するためにデバイス
ドライバを書くという作業を行います。

 そして、クライアントは daemon に対して唯一通りの手順で多数の
機器を制御できる...  そのように設計することで、新たな機器が出現
したとしてもクライアント側のプログラムとサーバの核の部分に手を
加える必要はないということになります。

 さて、そのようなことを「組み込み」の世界でも実現したいわけですが
そもそも、それは可能なのかどうかを見極めることが今の私にはできない
わけですね。

> 自分でも作りたいと思っているので、いろいろお聞きしたり、整理して
> いるところです。

 それは、今後公開されるおつもりなのですよね。もしそうならば
微力ですが私もお手伝いしたいと思います。

> 1-2
> 対象となる機器の洗い出しをするのか、

 これはもう絶対に必要な作業ですよね。

> 2-2
>  IrDA対応で、いろんなことができるリモコンが売っていますが、自作してみなが
> ら、考えるのがよいのでしょうか。

 もちろん、必要に応じて「自作」は必要な作業となります。そのために
ハードウェア屋さんの協力も得られるように努力する必要があります。

> 3-2
>  ホームサーバの設計は、各接続機器ごとに、タスクを作ってそのタスクに対する指
> 示を処理するのがよいか、全体を一つのタスクが受け付けて、処理をするのがよい
> か。

 一番、安易には決められない部分ですね。このあたりは、組み込みの経験が
豊富な人たちの意見を是非聞いてみたいところです。
--
pikachu @ kaguyahime.ne.jp