2007/09/01

PS3でLinuxのデバドラ開発を勉強

最近いろんなことに手を出しすぎてる感もありますが、仕事でLinuxのデバドラ開発をすることになったので、全くの0からですが、勉強を始めることにしました。PS3のプログラミングでも関わるところなので、平行してやっていく予定です。

ちなみにデバドラとは、デバイスドライバの略で、デバイスドライバがなにかというと、例えば外付けのHDDをUSBで接続する時に、OSとHDD間でデータの橋渡しをするのがデバイスドライバです。市販品は大抵汎用のドライバで動くように設計するので、特殊なドライバは必要ないですが、外部機器が特殊な場合はそのハードに対応したデバドラ開発が必要です。

手始めに参考文献として以下を購入。


ごついだけに、詳細な説明が多く、PCIやUSBのドラーバーの構成についても書かれている。これは頼もしい。

デバドラ関連は興味があった分野なので、これを期にどっぷりハマりたいと思います。これをクリアすれば、僕も組み込み系エンジニアのエキスパートとなれることでしょう。しかし、この本の厚みがこれから乗り越える壁の高さを物語っているような気もします。

まあ、やったことないからやるわけで、だから面白いわけで、「ダメだったどうしよう」とか考えずに、楽しんでやっていきたい。

<関連記事>
PS3で素数発見プログラム
CellプログラミングのTutorial
PS3にLinuxインストール成功したがGUI使用不能

<追伸>
素数発見プログラムを、Perlで作ってみたらどうなるか試してみた。これが結構すんなり動く。FFT変換などは一切無しでなので大きな桁になるとオーバーフローしそうですが、Perlは変数のサイズを適当に選択してくれるので、適当になんかしてくれれてるようだ。でも、PerlじゃSIMD化できないからな。とりあえずアルゴリズムが正しいという検証にはなったか。