3

起動時にカーネルがユーザー空間に転送される時間を測定するカーネル計測ベースの方法はありますか? タイミング情報でprintkを使用できましたが、カーネルがいつユーザー空間に転送されるかを観察するために、このprintkを正確にどこに配置すればよいかわかりませんでした。

4

2 に答える 2

5

start_kernel()、アーキテクチャ固有のコード (arch/architecture_type) によって呼び出されます。カーネルがロードされた後、最初のユーザー空間プロセス、つまり /sbin/init (または最近のディストリビューションでは systemd) を呼び出します。init_post()これらの関数はどちらもinit/main.cで定義されています。

ブート プロセスの詳細な説明については、このブログをお読みください。

于 2012-10-02T07:20:17.280 に答える