メイン

2008年02月03日

恥ずかしい提案

 PS3に ubuntu を入れて、使っていることはこのブログでさんざん述べた。現在は会社の同僚の助けを得て、色々とセッティングしてXなしで動作させている。

 で、起動時に kboot ってのが立ち上がるんだけど誤解していたのが、これは [enter] が必須だと思っていたのだ。で、kboot を無理やりこなすデバイスなんかも考えていて、それの提案なんかしたんだけど、べつに [enter] なしでも起動は進むのだ!!

 これはショックでしたよ。

 で、今はネットワーク以外に何も接続されていない状態です。ディスプレイの出力もさっき来た地デジチューナーに奪われてしまったのでした。

 まぁ、ssh があるんでソフト開発にはなんの問題もないんだけどね。

Digital Terrestrial Tuner

 部屋も片付け終わったし、場所もそんなに食わない。HDMIがそのまま使えるのでこれにしてみた。

Terrestrial Tuner

 USBとデジタルチューナと言うと、出てくるのがフリーオなわけだけど、別のソリューションも有志の手により開発されている。

Terrestrial Tuner

まぁ、マニュアルを見なくてもフルHDLCDにサクッとつながったのがいいです。

Terrestrial Tuner

全体の環境はこんな感じ。開発はしばらく先になりそうだな。頼まれている原稿を上げなきゃいけないし、PS3のSPEの習得も必要。SDCCも2.7.0になったので、その検証も必要。

クリチカルマス。

まさにこれだ。


2008年01月17日

アプライアンス

 PLAYSTATION3 Linux をベースにしたウェブシステムが稼働し始めた。外部に公開するわけでもない自分たちだけのシステムだが、動き出したことは大きい。可能な限り動作させてみて、問題点を洗い出すのだ。これと今開発中の SPE のプログラムを組み合わせたシステムが完成形である。みちのりはかなり長いけど、はじめの一歩はどんな長旅にも必ずあるのだ。

 色々とやることは多いけど、少しだけ列記してみる。
 1.固定 IP の取得による外部からのログイン
 2.本格運用

 とりあえず、フレームワークの理解からはじめるのだ。

2008年01月13日

システムとしての性能

 PS3をホストとして、ウェブサービスを提供できないかを考えているんだけど、PCとしての実力は??って感じ。やっぱり、ゲーム機としてのピーキーな性能を使いこなすのは難しい。2.5inch のハードディスクではデータベースなど定常的な処理に置いて、足回りの処理でかなり差が出てしまう。速めのデバイスとそれなりのメモリと CPU がやっぱり必要な感じ。

 PS3でサービスさせるのはハッカー的には美しいことだろうと思うんだけどビジネスとしてはどうかな?もう、そんなにやんちゃなことはできないし。

 しばらく使ってみてから検討してみようかと思います。

2008年01月12日

BS, DEL の設定

 Linux で往年の VZ エディターと同等の動作をする ne エディターを使い始めたわけであるが、一カ所だけ気に入らないところがあった。

 BS, DEL キーの設定であるが、これがデフォルトだといまいちだった。色々と調べてみると、Macのターミナル(PS3 にはMacから SSH 経由で入っている)の設定が問題だとわかった。

 CTRL-H の設定をイネーブルにすることでこの問題が解消できた。

 少しづつ、環境を整備していこうと思う。

2008年01月11日

知らなかった

 VZ Editor 互換の ne を使っているわけであるが、コンソールの画面を縦/横を引き延ばしても大丈夫なのを知らなかった。

 これでかなり作業が効率化できそうな予感。

 今日から本格的な開発が始まるわけだ。

2008年01月10日

The last two decade

 PS3Linux の cell をいじり始めているんだけど、環境自体が激重なので ssh で接続しているのは前にも書いた通りだ。で、ssh だと当然コンソールの環境なんだけど、コンソールで使えるエディターは vi とか emacs が基本だ。

 最近では eclipse にすっかり慣れきっている怠惰なプログラマーに vi, emacs での開発は死ぬほどつらい。生産性もガタ落ちである。20年前の環境ですよ。現役で vi, emacs が幅を利かせているのは。X 環境ですら、gedit を使っているだめっぷりなのであるからして。

 コンソールでプログラムを書かなければいけないのなら、せめて VZ くらいは使いたいよなぁー。と言うのが小生の偽らざる感想なのである。で、あるんで
すよこれが、VZエディターのクローンが!!!

 まずはこれ!!
 ne
 作者は日本人でソースを落として来て早速、PS3Linux(ubuntu) でビルドしてみるも、下記のようなエラーが出てしまった。
 


 gcc -c menu.c
 menu.c: In function ‘makev_proc’:
 menu.c:85: error: incompatible types in assignment
 menu.c:92: error: incompatible types in assignment
 

 実際のコードはこんな感じ、
 

void makev_proc(int a, mitem_t *mip, void *vp)
{
va_list args;
char *p;
args=*(va_list *)vp;

p=va_arg(args, char *);
if (p==NULL)
strcpy(mip->str,"null"); else
strcpy(mip->str,p);

*(va_list *)vp=args;
}
 


 
 何か情報がないかと探してみると、ページ内に掲示板を発見した。で、見つけたのがこのサイト。
 ne, the nice editor
 それっぽいのでダウンロードして早速ビルドしてみることにした。configure も無いので、少しビビったけど少しワーニングが出るくらいで、ビルド完了。

 で、早速、
 ./ne[Enter]

 おぉー、なんとなく last two decade に見慣れた画面がぁー!!

 

 特に下側に注目ですよ。これが特徴だったような気がします。

 これで開発効率が高まりそうです。

 しかし、最新アーキテクチャのチップ開発に約20年前のソフトを引っ張りだそうとは……。


2008年01月05日

SPE を喰らう

 cell プログラミングの情報を集めようと、インターネットを彷徨ったところこんなページを見つけた。他にも FixStars なども有名だ。そこで、CTK(CellTookKit) なるミドルウェアが作成されているが、小生の環境は SDK3.0 なのでうまく実行できない。sourceforge からソースをとってこようとしても微妙にはじかれてしまう。仕方がないので最初のサイトを参考にして cell に慣れようと思う。

 このサイトの作者は当初は PS3 自体を所有していなかったようだ。でも、こんだけのものを作ったわけで情熱があればある程度はいけるのだなと痛感した次第。で、最初の頃はエミュレータ環境でプログラムを組まれていたわけであるが、少しはまった。

 spe のプログラムを一つのファイルにパッケージせずに別ファイルになっている。後になるとこれをワンパッケージ(CESOF)にしていたわけであるが、spe のイメージをppe のディレクトリに置かずに spe のプログラム部分がが動作しなかった。

 少しコードを読んで、ようやく解決したわけだ。

 実機ではない x86 アーキテクチャのPCに cell の開発環境をインストールしようと思ったが、ubuntu(debianベース)の環境には rpm のパッケージはきついみたい。もちろん、alien コマンドとかも試したけど、あまりうまくなかった。と言うことで、しばらく実機で開発を行うことにする。

2008年01月04日

RSX Hack

 ついに RSX 用のXドライバが出たらしいので試してみることにした。起動しなくなったらどうしようとドキドキものだったが、画面の高速化が行われているかどうかはあまり良くわからない。いささか拍子抜けだった。まぁ、それでもこういう動きがあるのは非常にすばらしいことだと思う。ハックなくして、コンピュータ関係の進歩はないからね。

 今日も環境構築。ssh でログインできるので、キーボードは外してテンキーだけにしてしまった。テンキーも外したいところだけど、kboot の時にどうしても[Enter] キーをたたく必要があるんだよね。

 SPE への計算をどのように与えるかを考えている。色んな種類の計算を行うから、SPEはバラバラに使おうかと考えている。いずれにしても色々と使い込んでみないとわからないな。

 実機だけだと自宅でしかプログラミングが出来ないので、シミュレータをダウンロードしにいくもなんかサーバーがダウンしているみたい。もう少ししたら、また行ってみよう。

 あとはデータベースとの接続とか色々ありそうだけど、すこしずつやっていきます。

2008年01月03日

cell programming をはじめました

 正月休みはこればっかりだな。以来の受けた原稿を書かなきゃいけないんだけど、こっちも優先順位が高いので、かなり困っている。

 元々、数学とか計算機工学とかはあまり得意じゃないのにこういうアーキテクチャがらみのプログラミングをしなきゃいけないのはつらい。でも、ジャンプアップのためには仕方ないのだ。ssh でPS3にはログインできるようになったので、すごく便利。手元のPCでシミュレータでプログラムをしてから、実機で動作確認が簡単にできる。

 SPEでどんだけのことができるか分からないけど、いまやっているような分野の計算(データが連続で来るけど、計算その物は繰り返しが多い)では威力を発揮すると思うんだけどね。CELLは。

 2008年はこのあたりが中心になりそうだな。

 

2007年02月08日

GCC for ARM on the PS3Linux

PS3 Linux の環境構築が粛々と進んでいる。こんなページを作ってみた。

RoboShell の開発環境を PS3 で構築すべく、作業を進めている。素から構築するページや参考資料はあまり無いので、似たようなことをやる人には福音になるのではないだろうか?

あとはデバッガがあれば、suite になるな。 OpenOCD は完全にマスターしておく必要があるな。

2006年12月27日

Kicad2

Kicad のインストールの詳細を記してみた。


2006年12月25日

Kicad

Linux は最近でこそバイナリのソフトも出回り始めたが、基本はソースからのビルドである。特に今はまっているPS3Linuxだとバイナリはあまりないので、ソースの入手が必要になってくる。今回、インストールした Kicad もそんなソフトの一つだが、規模がそれなりにでかいのでインストールに苦労した。今回も TeamKNOx の非常勤研究員である T.M.氏に尽力してもらった。

とりあえず、動作確認は出来たので、色々と試してみるつもり。今製作中のプロジェクトもこれでやってみようと思う。

とりあえず、ビルドのメモ

wxWidgets の設定

mybuild_wxwidgets_linux.txt を wxWidgets にピーコする。
sh mybuild_wxwidgets_linux.txt で Makefile を作成する

wxWidgets の .lib/wx/include/gtk2-ansi-relase-2.x/wx/setup.h 中の
#define wxUSE_GLCANVAS 1 にする

kicad の設定
スタティックライブラリ→シェアードライブラリに変更する
libs.linux

#KICAD_STATIC_LINK = 1 にする。
コメントアウトする

2006年12月13日

OpenCV for PS3 linux

 TeamKNOx の芸風である自作USB機器を PS3 Linux に接続すると言うテーマはほぼ終了した。そこで、PS3Linux でなければ出来ないテーマはなんだろう?と考えてみた。

 俺が以前の会社で働いていた時の研究テーマに画像処理があった。そう、画像処理なんか、SPEの使いこなしを必要とする分野ではなかろうか?と思ったわけだ。

 最近では良い画像処理ライブラリが出ている OpenCV なんかその一つだと思う。不幸にして研究中はこのライブラリの恩恵に預かる事はなかったけれど、最近秋月電子で買った安物 WebCamera で WindowsXP ベースで環境を構築することが出来た。これを PS3Linux ベースで活用できれば、けっこう面白い実験が出来そう。

ちょっと、カメラでもつないでみますかね?

2006年12月11日

PS3 Linuxの PCとしてのパワー

 先週から、PS3Linux を使い始めている。現在、RoboShellのプログラム開発は Eclipse ベースで行っているので、PS3Linux でも出来ないかと色々と試している。Eclipse は PS3Linuxではデフォルトで入っている。メニューからそのまま起動できる。これはこれで、素晴らしいと思うのだが、メモリ食いの Eclipse では起動にものすごく時間がかかる。

 普段使っているPCの倍近い時間がかかっているのではなかろうか?これではちょっと萎える。よく考えてみると、RoboShellの開発ではビルドとフラッシュとGDBサーバとのやりとりだけだ。これだったら、emacs に GDB のフロントエンドをやらせるだけで、済みそうだしそっちの方が軽い気がする。

 Linux 上での EZ-USB のハックは出来上がっているので、GDBサーバとJTAGのピンドライブで一応の完成を見る。これで、Linux上でも RoboShell の開発が出来るようになるわけだ。

2006年12月09日

DVI - HDMI

PS3 Linux は稼動し始めたわけであるが、WUXGA での表示がうまくいかなかった。画面は出るが、ものすごくノイジーだったのだ。PS3本体とLCDをDVI->HDMI変換アダプタを介して接続していたのである。これがうまくいかなかった元凶の様だった。ケーブルを代えた途端に問題なく表示できるようになった。どうやら、DVIの高速・広帯域の信号に負けていたらしい。久々にアナログ品質がシステムに重大な結果を与えてしまう状況をみた。これだから、新しいシステムの導入はたのしい。

そろそろ、本格的なソフト開発だな。

2006年12月08日

0 -> 1

 PS3Linux で EZ-USB を動かせるようになった。そう、昨日まで出来なかったことが出来るようになったわけだ。かなり、うれしい!!今回の作業に当たっては、TeamKNOxの非常勤研究員のT.M.氏によるところが大きい。以前にWindows用に制作したEZUSBのクラスライブラリをラッパークラスをかぶせて、Linuxにポートしてくれたのだ。

 WindowsはVistaに移行しようとしているが、ここでLinuxにポートした意味が出てくる。Cypressは64ビット版のドライバを出していない。Vista用のドライバも未知数だ。Linuxなら気合を入れれば、自分で出来る可能性がWindowsより大きい。

 TeamKNOxで開発した一連のアプリの移植も面白そうだ。例えば、「鬼吸い」。PCと比肩できる高性能なマシンであるPS3で実際はどの位、I/O周りが速いのかを調べる指標になるだろうし、PS3でファミコンエミュレータをULA-GPを使って、ゲームボーイアドバンスでプレイすることも夢ではない。

 楽しくなってきた。