川辺と申します。 >>>>> "Naoto" == Naoto Shimazaki <igy@xxxxxxxx> writes: Naoto> よろしいかと。 そっ、そうなんですか 。 Naoto> 「あらかじめ hook しておいた関数を呼ぶような明解な方法は Naoto> ないの?」と考えてるんだろうなと、私は想像していた訳です。 そうですね。組み込み系では普通そうしちゃいますね。 Naoto> Linux ではなんらかの既存のデバイス抽象化レイヤとインタフェースするか、 Naoto> さもなければ read, write, select (poll) でインタフェースするしか Naoto> ないので、その先が pthread かどうかはあんまり関係ないというか。 はい。少なくとも、fileopのインターフェイスを全く介さない方法は難しい (と言うか、新規にシステムコールを組み込むしか無いかな)と思います。 でも、2.6.x系の epoll だとレベルトリガーとエッジトリガーと言う割り込み 系でお馴染の概念が導入されているので、ちょっと面白そうかなと思います。 同じ 2.6.x系だと futex のおかげで、やっとプロセス間共有のmutexとかcond とか使える様になるし。(ってこれは、無関係かな。) Naoto> 個人的には、async I/O するくらいなら multithread にしたほうが Naoto> きれいだと思います。 はい。私もマルチスレッド派です。と言うかここ4年位は多数スレッド(1000オー バ)のものを書くことが多くなりました。 性能上どうしてもと言う特殊なケースに限り非同期I/Oのお世話になる感じで すね。あっ、ネットワーク系の場合には、pollでタイムアウトと言う感じで使っ たりしてます。 昔は、よく wait_for_something と言う感じの名前の関数を書いて、自分でイ ベントディスパッチしたりしたのですが、今となっては効率がいいとは言えな いですね。 # X11のソースは、R4以降ちゃんと見てないので、今でも同じ名前かしら。 # R4の頃は、X端末へのポーティングとかもやってたんですけどねぇ。 -------- Kawabe,Yoshihiro <ripula@xxxxxxxxxxxxxxx> Who is calling me from where? Knock on my shell and my mind? from Pearl song.
References:
- [linux-users:102095] Re: 組込Linuxドライバの作成方法Naoto Shimazaki
- [linux-users:102097] Re: 組込Linuxドライバの作成方法Yoshihiro Kawabe
- [linux-users:102100] Re: 組込Linuxドライバの作成方法Naoto Shimazaki
- Prev by Subject: [linux-users:102102] Re: rsyncのパスワードについてお尋ねします。
- Next by Subject: [linux-users:102104] Re: rsyncのパスワードについてお尋ねします。
- Previous by thread: [linux-users:102100] Re: 組込Linuxドライバの作成方法
- Next by thread: [linux-users:102082] Re: 組込Linuxドライバの作成方法
- Indexes:[Main][Thread]