CONFIG_EMBEDDED ルネサスソリューションズ 宗像尚郎 ( [email protected] ) ©2006. Renesas Technology Corp., All rights reserved. 組み込み界でありがちな愚痴 Linux 開発コミュニティの中では “組み込み” は亜流 組み込み開発者の要求はあまり聞いてもらえない kernel 2.6 は潤沢なリソースが使える環境を想定 しているので 組み込み向きではない メインラインの kernel 開発ポリシーと共存できる形で 組み込み向けの Profiling を導入してもらうには 何を とっかかりにすれば良いのか ・・・・・ CELF Tech Jamboree #9 Non-confidential ©2006. Renesas Technology Corp., All rights reserved. kernel configuration に config_embedded という項目がある (kernel 2.6 から追加された) CELF Tech Jamboree #9 Non-confidential ©2006. Renesas Technology Corp., All rights reserved. 何を設定する config か 一部の kernel config 設定を拡張するもの 組込系向けに必ずしも必要の無いオプションを選択し チューニングで切るようにするためのオプションである 基本的にわかっている人だけが使うことを想定している • • • • • UID16 VM86 KALLSYMS HOTPLUG PRINTK • • • • • ELF_CORE BASE_FULL FUTEX EPOLL SHMEM • • • • • CC_ALIGN_FUNCTIONS CC_ALIGN_LABELS CC_ALIGN_LOOPS CC_ALIGN_JUMPS SLAB kernel 内のアルゴリズムには影響しない page size などのパラメータ設定にも影響しない CELF Tech Jamboree #9 Non-confidential ©2006. Renesas Technology Corp., All rights reserved. 導入された経緯をさかのぼってみる ー ① [http://lkml.org/lkml/2003/5/16/158] kernel 2.5.68 当時に FUTEX 機能の組み込みに関連し FUTEX は組み込みには必要ない(フットプリントが大きい) という意見に対し、 Alan Cox が “Linux の組み込み応用 も大事だから….” という発言をしている 当時 Alan は no-MMU サポートを推進していたので、 FUTEX が使えない CPU サポートを考慮してくれていた ? CELF Tech Jamboree #9 Non-confidential ©2006. Renesas Technology Corp., All rights reserved. 導入された経緯をさかのぼってみる ー ② [http://lkml.org/lkml/2003/5/16/191] Andrew Morton が kernel config menu を見直して 組み込み用に kernel の一部の機能を 切り離す設定を 追加する事に合意し、 現在のメニュー構造が導入された ⇒ その後 組み込みの要求に応じて選択可能な項目が 追加されてきた (ようだ)。 あまり深く考えず.... それならここに入れときましょう という吹きだまり状況 ? CELF Tech Jamboree #9 Non-confidential ©2006. Renesas Technology Corp., All rights reserved. 現状 config_embedded の総括 積極的な使われ方(受け止められ方)はされていないようだ 一部機能を使わなくするための拡張オプションという性格 組み込みで欲しい機能、設定を追加する目的では使われていない 現在の設定内容は必ずしも “組み込み” の要求を反映していない ⇒ 例えば NPTL を使うためには FUTEX サポートは必須なのだし… どちらかというと no-MMU 型のサポート用の設定の色彩が強い? “組み込み” も多様化 → 一言でグループ化できなくなった SH7785 (>1,000 MIPS)、 SH7751R (430 MIPS)、 SH7619 (100MIPS) Multi-Core CPU、 SMP CPU、 Numa memory CELF Tech Jamboree #9 Non-confidential ©2006. Renesas Technology Corp., All rights reserved. この先 どのようにもっていきたいか 既に kernel 2.6 でサポートされている config_embedded 設定オプションをどう活用するか という問題提起で、積極的に 組み込み向けの プロファイリングをメインラインに反映できないか….? 現在の kernel tuning parameter 及び今後の拡張 として 組み込みの要求プロファイルを何種類か提案 することができないか…. 次回以降の Jamboree などを活用して意見集約したい CELF Tech Jamboree #9 Non-confidential ©2006. Renesas Technology Corp., All rights reserved.
© Copyright 2024 ExpyDoc