14:51:20 # Life gitをemacsで使う。 git.elがどうなっているのか最近みていなかったのだが、どうやら git-checkout とか git-branch (git checkout -b 相当のブランチ 作成をしてくれるようだ)の機能が追加されているようだ。便利っぽ い。
07:28:14 # Life ひさしぶりにandroidをつなげてみたらadb shell でつながらない。 なんでだっけなぁ。 久しぶりにミキサーとかを接続してごにょごにょと。
07:32:29 # Life 昨日はperlの話をききにいってきた。 shibuya.pm。 東京駅のサウスタワーというものがあって、リクルートの会議室がそこに、23階で開催。 会場は素敵でした。 cpuid 命令さえわかってればわかる内容なのかなと思ったら perl の VM の理解が必須な内容で僕の期待の斜め上をいかれてしまいました。
11:18:28 # Life 東京エリアDebian勉強会報告。 2009年4月18日土曜日に 東京エリアDebian勉強会の 第51回 をあんさんぶる荻窪にて開催しました。 今回の参加者は 中尾、北原、明渡、眞戸江、小川、 山本、 山田たくま 、高橋(masaka)、 前田耕平、 吉田@板橋、日比野、吉藤、でんすけ 藤澤りそう,上川x2 の16名でした。
(+ ;;会場代 -1500 ;;勉強会費 x 14 +1400 ;;景品代 -105 ) -205 の赤字
13:49:32 # Life ふと気づいたが。 Debian amd64 では /lib64 は /lib へのシンボリックリンクになっている。 絶対パスのシンボリックリンクなので、chroot を作成しようとして、 ..../lib64 以下に書き込もうとしたら/libを上書きしてしまう 気がする。
15:21:52 # Life Open MPI. 最近MPICH関連がどうなっているのかはまったく見ていなかったのですが、久しぶりにメーリングリストをよんでみたら、 Open MPI というのが登場して活発に開発されているようです。 lam は開発終了して open MPI に移行してしまったような。 mpich はまだしぶとく生き残っていると。 mpich2 のアナウンスメールはいまだに送られてくるので、なんらかの開発はされているんだろうなぁ。
06:29:52 # Life emacs で setq-default show-trailing-whitespace t したらあらゆるファイルで警告が表示される。 たとえば、shell mode で何もコマンドをいれていない行であったり、コマンドの出力であったり。 これは気になる。 そういうのはCだけでよいんじゃないか?と思うので、変更してみた。
(add-hook 'c++-mode-hook '(lambda () (setq show-trailing-whitespace t))) (add-hook 'c-mode-hook '(lambda () (setq show-trailing-whitespace t)))
08:44:43 # Life cpulimit のソースをよんだ。 ulimit -t とどう違うのだろうと思って見た。 まず最初の疑問、なんでCPUの使用率の計算を自前でやろうとしているのか? カーネル内部にはそういう計算をしているところはなかったか? jiffies = 100 は正しくないんじゃないか? でも、CPU負荷が十分高いと SIGSTOPでプロセスを停止してくれるという機能自体は便利そう。
22:20:53 # Life bash_completion の追加コードを書くのを試してみる。 /etc/bash_completion.d 以下においてあるファイルは、 have とかいう関数が定義されているのでそれを使えるのですが、 手元で追加する関数で便利に使う方法がよくわからず。 ~/.bash_completion ファイルを利用してくれるというのがわかったので、とりあえずそこに追加していろいろ変更してデバッグしてみたが、 これは正しいデバッグの方法ではないような気がする。 しかし、今日までbashで配列を変数に代入する方法を知らなかった。 不思議な記法だなぁと思っていたら ( ) でかこった文字列は配列として扱われるらしい。
$ test=(12 23 34) $ echo ${test[1]} 23 $ echo ${test[0]} 12
23:44:05 # Life trailing whitespace. emacs では、 show-trailing-whitespace を t に設定すると 不必要な空白が赤く表示されるようになる。
22:42:46 # Life qemubuilder で qemu が暴走し、CPU100%で実行しつづける場合がある。 qemuというより中で実行している Linux Kernel が Kernel Panic で終了した場合にはタイトループに入る。 そういうときには ulimit -t などで使用するCPUを制限してやるのがよさそう。 しかし、その終了は親プロセスには何も通知されないような挙動をした。 親プロセスが wait していない場合は、sigchld で通知されるのだろうかと思って調べたら、 sigchld のハンドリングはデフォルトで無視、のようだ。 sigchld をハンドルするように変更したらよさそう。
23:20:51 # Life 一旦こたつに入るとむこうにおいてあるi386のマシンの電源をつけるのが面倒。 32bit コードのデバッグをやるために気合を入れるまで至らず。 chrootでやるのがよいのだろうか? 32bit のlinux のコードで面倒なのは、large file support。 正しいフラグをつけると正しいコードがコンパイル・リンクされるというようになっている。 正しくフラグがわたされていないと大きなファイルをアクセスできずにエラーがでるので Makefile のデバッグをせねばならない。 あと、large file support の挙動、特にlseek 関連の何かを僕が誤解しているのかもしれない。 520721 ... 結論としては、 Makefile では$(shell xxxx...)として外部コマンドを呼び出さないといけないのを 忘れていた、と。
18:05:50 # Life 久しぶりにoprofileメーリングリストをよんだ。 元いたメンバーとはまったく違う構成になっているけど、 なんだか活発に議論してるみたいですね。 amd の 10h用のパフォーマンスカウンタ以外の仕組み(Instruction based sampling, IBS) の対応のためにいろいろといじっている人がいるみたい。
20:32:44 # Life ocamlでは型を明示的に宣言しなくてもよいらしい。 C++でいうテンプレートみたいな仕組みがあって、こっちのほうが記述方法がスマートにみえる。 let の parametric polymorphism 。 しかし有用な利用方法が思いつかない。
$Id: 200904.html.ja,v 1.20 2009/05/01 01:26:58 dancer Exp $