2005年10月18日(Tue) シゴトたまってますよー [長年日記]
● -DNDEBUGでSIGSEGV
assert(file = fopen(...));とかやっちゃいけません。昔の自分のアホー。
…やっとgmon.outができた。次はgprofの出力の読み方のべんきょー(泥縄)
● 折りたたみ式箸
旅行用の歯ブラシみたいに分割できるの。初めてみた。やっぱり飛行機に持ち込むのはしんどかったそうで。
● shm_open(3)のプロトタイプ
日本語のmanを読むとvoid * shm_open(...)と書いてあって焦った。英語だとint shm_open(...)で、こっちが本当だよね。
man-pages-ja-0.6-0.20050215。バグレポートはどこに出すのが正しいんだろ?最新版ではなおってたりする?
● gprofはシステムコールは測れないのだと気づきがっかりする
gprofは頼れないのでどんどんソースの贅肉を落として速度を測りまくりました。SolarisでPOSIX共有メモリへの書き込みが遅くみえるのは、shm_open(3)かftruncate(3)が遅いためのようだ。
で、Google先生におうかがいを立てると、SunOS 5.7_x86: librt.so.1 Patchなんていうページ*1がみつかりました。職場のSolarisは5.8だしSparcなので関係ないような気もするけど関係あるような気もする…ていうか関係あることになってくれ。
そういうわけで既知の問題として片づけちまおうかと思っている今日このごろ。次の仕事に移ろう。
*1 マウスポインタを動かすだけでドロップダウンメニューが開きまくるので注意
● [memo][Ruby] SNMP Library for Rubyを/usr/localに入れる
相変らずsetup.rbの使いかたをわかっていない。すまーん。
で少なくともruby -rsnmp -e ''
はできた。
最近のツッコまれどころ