最近の変更サイトマップ

GPGPU関連リンク

卒研でGPGPUを扱うことになった。

学校で使ってるマシンはWindowsだが、Mac厨の俺としてはMacでも開発がしたい(願わくばコーディングは全てMacで行って、Windowsは動作確認程度に使いたい)。なので、ターゲットはOpenGL+GLSLとする。nVidiaのCgという手もあるが、Cgで書いたシェーダがRadeonでも動くかどうか不明なのと、やっぱりオープンな規格でしょ、ということでGLSL。資料が全然ないという、茨の選択のような気がしないでもない。ま、ま、Macでプログラミングしてるって時点で茨の道を素足で歩いてるようなものなので、今更、棘の1本や2本、増えたところで気にならないと思う………多分。

能書きはこれくらいにして、研究で役立ちそうなページへの個人的リンク集。

    • とっても分かりやすいGPGPUの解説。現在ここで勉強中。英文だが平易な単語&文章で、GPGPUの概念からGLSLを使った実装まで学ぶことが出来そう。
    • GLSLを基礎から解説してるページ。英文が若干読み難い感じだが、記事を全部読めばGLSLについては一通り理解できそう。

FBO(Frame Buffer Object)に関する資料

MacBook Pro買っちゃった

7月はまるまる1ヶ月間、教育実習で三重に行かなければならくて、パソコン環境はどうしようかなぁと考えていたところに、丁度よく新MacBook Proの発表&発売が重なったのでポチってしまった。

15インチの2.4GHzモデルを土台に、キーボードを英語配列に変更して注文。学割を使って30万円弱也。高ーっでも、高いだけあって、その辺のデスクトップよりよっぽど高性能。当然、うちのマシン達の中では群を抜いた性能。 Intel Macを買ってまずすることと言えば、BootCampと仮想化ソフト。 というわけで、早速BootCamp入れて、XP入れて、Parallesのコヒーレンスモードで起動してみた。 これは何というカオスwwww Mac OS Xネイティブのアプリと、X11のアプリと、Windowsのアプリ(というかWindowsそのもの)が同時に動くなんて… 実際に動いてる所を見ると、感動も一入だ。

実習に行くまでに環境を整えないとなぁ。まぁ、それも楽しみの1つではあるけど。

今までメインで使ってたPPC Mac miniは、iPodの母艦として、各種サーバ用途として運用していく予定。なので、こっちの環境も作り直さねば。

AUGraphへのコールバック設定

最近ハマったこと。

AUGraphにコールバックを通じてデータを流し込む時は、データの受け入れ先としてグラフにAUConverterを追加し、それに対してコールバック関数を設定するようにしないといけないっぽい。

他のAudio Unitにコールバックを設定しても、データの受け渡しが行われているにはいるようだが、非常にノイジーな音になってしまう(除く、出力ユニット)。AudioStreamBasicDescription構造体で入力音声ストリーム情報を設定しようにも、エラーになってしまい、上手く設定されないようだ。

尚、この結果は当方の実験に基づくものであり、公式な文献などで調査したものではないので、間違っていたとしても悪しからずご了承頂きたい。というか、林檎さん、早くCore Audio関連のドキュメントを整備して下さいよ……。

AJZaurusUSBを使ってMacと繋ぐ

リナザウへのデータ転送や同期は、専用ソフトをインストールしたPC(Windows)にUSBで接続して行う。例によって公式にはMacは蚊帳の外だ。

そこで登場するのがAJZaurusUSB

これを入れるとMac OS Xに仮想Ethernetアダプタが追加され、この仮想NICとUSB接続したZaurusの間でEthernet接続が確立されるようになる。ちなみに公式サイトによれば、Zaurus以外でも同じような仕組みで通信するデバイス(iPAQとか)にも使えるらしい。

Zaurusの設定

必ずUSBケーブルを外した状態で、「PCリンク」設定で以下のように設定する。IPアドレスはデフォルトのままでもいいし、適当な値に置き換えてもOK。

AJZaurusUSBのインストールと設定

  • 公式サイトからAJZaurusUSBをダウンロードする。OS Xのバージョンによって、使用するAJZaurusUSBのバージョンが違うから要注意。
  • 解凍後AJZaurusUSB.pkgを実行してインストール。そして再起動。
  • ZaurusをUSBケーブルで繋ぐとMacの仮想NICが有効になるので、IPアドレス等々を設定。

telnetとアクセス制限

telentでリナザウを弄れると何かと便利なので、使えるようにする。

telnetの有効化

/etc/inetd.confの行頭コメント(#)を外すだけ。

(上略)
### With tcpd (TCP Wrapper) ###
#ftp    stream  tcp     nowait  root    /usr/sbin/tcpd  in.ftpd -l -a
telnet  stream  tcp     nowait  root    /usr/sbin/tcpd  in.telnetd
↑この行

アクセス制限の設定

上記の方法でtelnetは有効になる。しかしながら、このままだとセキュリティ的にかなり危険だ。何せ、telnetでアクセスさえすれば、誰でもどこからでもパスワート無しでログイン&rootになれてしまう。

そこで、/etc/hosts.allowと/etc/hosts.denyを用いたアクセス制限を行う。基本的には、まず全てのアクセスを拒否するようにし、続いて必要な物のみ許可するように設定する。

まずはアクセス拒否(/etc/hosts.deny)の設定。前途したように、全てのサービスについて全ての接続を拒否する。

ALL:ALL

1つめのALLがサービスを、2つめのALLがホストを表わす。

続いてアクセス許可(/etc/hosts.allow)の設定。今回は192.168.*.*がtelnetを使えるようにした。

in.telnetd: 192.168.

本体を再起動するか、inetdを再起動すれば完了。

# /etc/rc.d/init.d/inet restart
start.txt · 最終更新: 2016-05-07 17:46 by decomo
CC Attribution-Noncommercial-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0