Linuxでstrace, FreeBSDでktrace C言語 システムコールのデバッグ方法を探していたらstarceなるものがありました。 でもLinuxのみでしか使えないので、もうひと探ししたらFreeBSDにはktraceなるものが 存在することが判明。 「netstat -f inet」というコマンドをトレースしたい、という場合の以下使い方です。 ktrace netstat -f inet > /dev/null ktrace -C kdump > netstat.log 一行目でktraceを開始します。標準出力は捨てます。 2行目は念のためトレースをストップ。 3行目は結果を出力します。 ちなみにルートユーザ以外だとシステムコールは「execve」で終了になってしまうのでご注意ください。
C言語 PSコマンドのソースを読む。 ソースコードを読むシリーズ。WIKIにまとめてありますが、おおまかなものをエントリしておきたいのでこちらにも追記します。 psコマンドのソースコードを読みました。肝はkvm(kernel virtual memory)関連で、ここの情報を読み取るイコール「psコマンドでプロセスを表示させる」ということになります。 サンプルは以下。 #include <stdio.h> #include <stdlib.h> #include <fcntl.h> #include <kvm.h> #include <paths.h> #include <sys/param.h> #include <sys/sysctl.h> #include <sys/user.h> int main(void){ kvm_t *kd; struct kinfo_proc *kp;
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く