タグ

ブックマーク / mkosaki.blog46.fc2.com (7)

  • 革命の日々! Cross compilers available on kernel.org

    ふーん Date: Thu, 25 Nov 2010 11:02:04 +1100 From: Tony Breeds To: Linux Kernel ML Cc: Mikael Pettersson , Rabin Vincent , =?utf-8?B?TcOlbnMgUnVsbGfDpXJk?= , linux-arm-kernel@lists.infradead.org Subject: Cross compilers available on kernel.org Hi All, I've just added 4.4.5 and 4.5.1 hosted on i686 and x86_64 to: http://kernel.org/pub/tools/crosstool/files/bin/ These compilers do not have libc support

    kotak
    kotak 2010/11/26
    どうしてもカーネル*だけ*のコンパイルしたいときに?
  • 革命の日々! CFSのnice値について

    某所で話題に上がったので軽くまとめてみる 以下のようなテストプログラムを走らせてみる。nice値5とnice値10のスレッドが ビジーループを何回回すことができるか競争するというプログラムである struct thread_param { int prio; long counter; }; #define barrier() __asm__ __volatile__("": : :"memory") void* loop(void* _param) { struct thread_param *param = _param; setpriority(PRIO_PROCESS, 0, param->prio); usleep(1000); for(;;) { param->counter++; barrier(); } return NULL; } int main() { pthread

    kotak
    kotak 2010/05/02
    nice値が5変わるごとに3倍CPU時間が変わる。
  • 革命の日々! Autotest というコミュニティがあるらしい

    IPALinux互換性検証のプレスリリースhttp://www.ipa.go.jp/about/press/20091014.html で知ったAutotest というコミュニティ&ツール http://autotest.kernel.org/ http://test.kernel.org/linux_symposium_2009.pdf ざっと見た感じだと ・ジョブスクリプトを書いておくと、複数のテストマシンにテストを振り分けて自動実行してくれる ・テストサーバとテストクライアントが別マシンなのを生かし、テストでカーネルクラッシュが発生してもテストサーバはクラッシュを自動検知 fail +1 としてテストを継続してくれる。 というのがウリのよう。開発主体はGoogle。 これは、勉強する価値があるかもしれない。

    kotak
    kotak 2009/10/19
  • 革命の日々! libmemusage

    備忘録 libmemusageを使うと以下のように、どのようなメモリの使い方をしているのかをヒストグラムで表示してくれる。 $ LD_PRELOAD=libmemusage.so ls bin etc kdump lib64 misc opt sbin sys usex-tmp work boot home kexec lost+found mnt proc selinux tftpboot usr dev initrd lib media net root srv tmp var Memory usage summary: heap total: 47175, heap peak: 30979, stack peak: 11632 total calls total memory failed calls malloc| 135 46455 0 realloc| 7 720 0 (nom

    kotak
    kotak 2009/09/02
    libmemusageを使うと以下のように、どのようなメモリの使い方をしているのかをヒストグラムで表示してくれる。
  • 革命の日々! printkの非互換にたいする指摘

    カーネルウォッチ没ネタ集 linux-2.6.26のリリース直前でLinusがprintkに構文拡張を入れました(そうです。Linusが書いたコードはマージウィンドとか関係なく常にいきなりmainlineにマージされるのです) 具体的には %pS: ポインタのシンボル名を表示(データ) %pF: ポインタのシンボル名を表示(関数) の2つ。ああ、IA64とかでは関数ポインタの扱いが特殊だから%pSだけに出来ないんだわ。 最初は%Sにするつもりだったのだが、誰かが、それってgccの__attribute__((format(printf, ..)))が警告だすやんけ。という話があって、二文字フォーマットしかないねという結論に。 んで、それに対して、Matthew Wilcoxがつけたコメントが printk("Function %pSucks\n", sys_open); が非互換になるよね

    kotak
    kotak 2009/09/02
    printkに構文拡張 %pS: ポインタのシンボル名を表示(データ) %pF: ポインタのシンボル名を表示(関数)/何気に便利かもめ
  • 革命の日々! プロセスが寝ている原因を知る方法

    さだださんと雑談していて、Solarisはページフォルトで寝ているとtopのステータスにそう表示されるから便利とかいう話に。 それLinuxでも出来るよ。wchan表示したら、スリープしてる関数名表示されるから一発だよ。 やりかた top を起動 f キーを押す(表示項目設定画面に遷移) y キーを押す(wchanを有効化) ESC キーを押す(topの表示画面に戻る)

    kotak
    kotak 2009/08/31
    sleepしているプロセスの関数をtopで表示できる
  • 革命の日々! A new GCC runtime library license snag?

    http://lwn.net/Articles/343608/rss 新しいgccで、GPLv2のプログラムをコンパイルすると再配布不可能になるよ。という話。よく知られているように、gccはコンパイル時に(勝手に)libgccをリンクする。これは除算のサポート等が含まれている。うろ覚えだけどC++の例外の補助コード等もここ。 んで、勝手にリンクされる都合上、あんまりきつい制約に出来ないのでGPLなんだけど、特別免除としてプロプラなライセンスとリンクしてもOKということにしてあげるよ。ということになっている。 で、このGCC runtimeのライセンスが、gcc 4.4からGPLv3になった。で、プロプラなライセンスは従来の特赦条項で救われるのでOKだけど、GPLv2は再配布時にライセンス変更しちゃダメ条項があり、かつ、GPLv2とGPLv3はincompatibleなので、自動的にライセン

    kotak
    kotak 2009/08/25
    gccはコンパイル時にlibgccをリンクする。GPLv3とv2は非互換。gcc 4.4ではGPLv3になった。ので、gcc 4.4でビルドしたGPLv2なプログラムは再配布不可。ってマジですか?
  • 1