"KconfigSize" a Tool to check the Kernal Size / カーネルサイズ検証ツール 「KconfigSize」 (Mr. Ikeda, NEC) * 発表 以前、Linux Tinyの解析をしていた。 kernelのconfig変更によるサイズの差はLinux Tiny より大きく差がでる。 そこで、configとkernel sizeの関係を調査した。 また、この作業はmake menucnfog, make.... と繰り返す必要あって大変なため、 専用のtoolをつくった。 なおconfigには依存関係があるので、そこは考慮するようにした。 今回の目的はconfig単独でのサイズを調べること。 configの種類を以下の三種類に分類。 1. 起動に必要なconfig cpu rootfs device 2. 独立config サイズがその項目単独項目 3. 非独立config 他のconfig項目の設定によってサイズが変動するもの。 SMPサポート。printkサポート base configを上記1. と3. とする。 限界最小サイズsmall bzImage, uImage i386: 400k ARM: 340K ARMではprintkサポートenableでBOOTせづ。 2.6系はkernel サイズはどんどんふとっていってる。 * 今後の予定 使う.configファイルからkernelサイズを予測できるように今後していきたい。 * 質疑応答 - memory使用量はどうやって計っているの。 /proc/meminfoでとれているようなデータ。 chacheの影響を考えた方が良い。 - kernelの.oのサイズを計ってやっていく方法もありじゃない。 切口の問題。 当然その方法もあり。 - 依存関係はどう解決しているの scripts/Kconfigのparserを改良して調べている。