2007-05-01から1ヶ月間の記事一覧

CでRubyライブラリを作ってて思った事

まだ、Rubyのソースも読み始めたばっかりだけど、 それでもCでRubyライブラリを作ってて思った事。 Linux Kernelのソースのときも感じたんだけど、 乱暴ないい方をするとC言語のラッパーというか、 C言語を便利にしただけのような気がしてきた。 もちろん、…

CライブラリとRuby間でバイナリデータのやりとり

色々あって、CでRubyのライブラリを作成中。 http://www.loveruby.net/w/RubyExtensionProgrammingGuide.htmlを参考にしています。 まあ基本は上記サイトとか,Rubyに付属のREADME.EXT.jaを見れば大体分かる。 でタイトルの件だけど、今まで不思議だったのは…

GCC 4.2.0 リリース

GCC

ちょっと遅いけどメモ。 http://slashdot.jp/developers/07/05/19/1254245.shtml changesに4.2の主な変更点が載っているが、最大の変更点はOpenMP (gomp)への対応のようだ。 OpenMPって何か調べると、どうやら並列化処理を行う物らしい。 どうやらMPI系とは…

pthread_cond

久しぶりにPthreadについて。 Ruby1.9のYARVではスレッドがRubyレベル出はなく、システムのスレッドを使用するようになる。 Ruby1.9のソースを眺めていたらpthread関係で、 pthread_cond系を使用していたのを見たのを切っ掛けにメモ。 普段からPthreadは使用…

1.9と2.0の違い

ruby_dev:29912に書いてある。 1.9と2.0です。つまり、「将来のRuby」と言われていたもののうち、 現実的な期日でリリースできそうなものを1.9と呼び、もうちょっ と(だいぶ?)時間がかかりそうなものを2.0と呼んでます。 大幅に変更するのは2.0、1.9はYARV+…

1.8と1.9

速度測定4でソースを見ずに書いていたところの追記。 1.8.6を落として、適当にdiffで軽く見た。 やっぱりArrayとかHashなどの基本的なところはソースが同じだった。 もちろん1.8からの修正は多数あったけど。 なので1.8と1.9で速度がほとんど変化していない…

速度測定4

昨日1.9をとりあえずコンパイルできたので、 1.9で今までのと同じ比較をする。 先に結論を書いておくと、 速度 基本的に1.8よりも早くなる。 早さは数倍から10倍くらい。 ただ、ほとんど変化しないのもある。 速度比較 今までやってきた速度比較を1.9でも行…

1.9のコンパイル。

ささださんからコメントをもらったのを、切っ掛けに1.9をコンパイルしてみる。 次のバージョンは1.9に決定? Ubuntuだからなのか、autoconf、bisonやflexが入っていなかった。 Ubuntuはインストール直後はgccや/usr/includeすらなかったはず。 DeskTopとして…

速度測定3

injectを使用する/しない n = 500000 Benchmark.bm do |x| ary = Array.new(n){1} x.report{ num = 0 ary.each do |i| num += i end } x.report{ ary.inject(0){|result, item|result += item} } end user system total real 0.940000 0.240000 1.180000 ( 1…

RubyInline

Rubyコード中にCのコードを埋め込めることが出来る。 これでRubyを高速化出来るらしい。 これって、コンパイラがいるのかな? コンパイラ無しでいいのなら組込みで使用できるんだけど。 まあ、CでRubyライブラリの作り方も分かったので最悪はCで作ればいいけ…

FUSE

これでユーザー空間ファイルシステムを簡単に作成できるらしい。 http://www-06.ibm.com/jp/developerworks/linux/060317/j_l-fuse.shtml

http://memo.wnishida.com/?date=20070501#p01

何やら面白そうな本を紹介している。 W. Richard Stevens Advanced Programming in the UNIX Environment (APUE) 2nd Ed. Marc J. Rochkind Advanced UNIX Programming 2nd Ed. Bruce Molay Understanding Unix/Linux Programming 英語が難点かと思いきや、 …

Linux系Net Magazine?

http://www.linuxjournal.com/ を発見。 英語だが色々乗っていて便利そう。

Ethernetケーブルがささっているのか、抜けているのかを検出

http://www.komoto.org/etc/ethlink.html に書いてあった。 サンプルソースを見ると、ioctl()でSIOCETHTOOLオプションを渡している。 Linuxのみなのかな? 他のUnixでも使えたら便利なんだけど。

どうしてプログラマに・・・プログラムが書けないのか?

私と同様、この著者は、プログラミングの仕事への応募者200人中199人はコードがまったく書けないということで苦労している。繰り返すが、彼らはどんなコードも書けないのだ。 彼が引用している著者というのはイムランのことで、彼は単純なプログラムも書けな…

再インストール

ここ数年ソフトをインストールしてはアンインストールしまくって、 動作がおかしくなってきた。 HHKも認識しなくなった。 GWなので時間があるし、再インストールをしたのはいいが、 Windows Updateが出来ない。 サイトが落ちている?

新規インストール

パーテションを手動で行うと、 Can`t have the end before the start というエラーメッセージが出てパーテションを作成できない。 自動で行うと問題がないけど、今時ファイルシステムがEXT3。 ネットで調べてもほとんど出てこない。 JA本家にも情報がないし。…

Gnome-Termが落ちる

Gnome-Term + Vim + scimである条件でターミナルが落ちる。 現象としては、Vimのコマンドモード時に日本語を入力すると落ちる。 原因を追うのもめんどくさいので、ターミナルをMltermに変更。

Synergyの使用

HHKがUSBキーボードのためにCPU切替器が使用できない。 (家のはPS/2用の切替器) このためSynergyを使用してみた。 Synergyってすごく使い易いです。 まあ、ディスプレイが1つしかないのでPS/2切替器は必要ですが、 HHKがこれで複数のPCで使用できます。

再度購入

以前のは仕事専用にして、家用に買った。 仕事で毎日使用していると、これに慣れて他のが使用できなくなってきた。 多少不満もあるけど、こんなの些細な事。これで家でもほとんどストレスがなくPCを使用できる。