2007-11-05から1日間の記事一覧

50行straceもどき

すこし前に、straceコマンドもどきを50行くらいで書いてみたことがあるので、それを貼ってみまーす。いきなりコード。あ、C99です。 // strace_modoki.c: Linux/x86専用です。x86_64カーネルでは-m32でコンパイルしても動きません。 #include <stdio.h> #include <unistd.h> #in</unistd.h></stdio.h>…

構造体のサイズ違いで悩んだのでリンク時に検出

先日、次のようなC++のクラスが原因で少々悩みました。 struct A { #ifdef V2 int bar_; /* バージョン2以降でしか使わないメンバ変数(らしい) */ #endif int foo_; /* 以下略 */ }; このAを使っている.cppの一部は、g++ -DV2でコンパイルされており、残りは…

ついカッとなって実行バイナリにパッチ

とある都合で、ソフトウェア開発の際にソースコードの提供されていないツールを使うことになりました。x86なLinux上で動く、ちょっとしたtoolchainです。が、そのツールの処理速度が遅く、入力サイズに対して、結果が出てくるまでの時間がどうもO(N^2)かそれ…