1
Linuxでは、新しいプロセスが作成されると、static_prio
の親プロセスの値normal_prio
を継承します。これは実際にどこで起こりますか?親プロセスからの親プロセスからの優先度の継承Linuxでの新規プロセスによる優先度継承
dup_task_struct()
ファンクションまたはcopy_process()
ファンクションで行われますか?
Linuxでは、新しいプロセスが作成されると、static_prio
の親プロセスの値normal_prio
を継承します。これは実際にどこで起こりますか?親プロセスからの親プロセスからの優先度の継承Linuxでの新規プロセスによる優先度継承
dup_task_struct()
ファンクションまたはcopy_process()
ファンクションで行われますか?
それは実際にcopy_process
によって呼び出されるsched_forkに起こる親の優先順位が最初の子供に、pは、親に子供のtask_struct
とcurrent
ポイントです。この
p->prio = current->normal_prio;
のようなものが転送されます。
そしてnormal_prio
がこの
p->prio = p->normal_prio = __normal_prio(p);
__normal_prio(p)
のように修正され、最終的
return p->static_prio;
のようなものつまるところ、私はより多くを探検するために追加した2つのリンクをご覧ください。
ありがとう。私はこれらのものをトレースできるツールや方法はありますか?私はどのような方法で私は、プロセスが作成され、予定されているのフローをトレースすることができます意味ですか? – rAzOr
Linuxカーネルのデバッグに利用できる2つのデバッガは、kdbとkgdbです。 Linuxカーネルのデバッグは単純な作業ではありません。私はむしろ、Linux/Linuxカーネルに関するいくつかの良い本を読むことを提案したいと思います。ロバート・ラブによるもの。また、参照用としてhttp://lxr.free-electrons.com/を使用してください。 –
参照と提案をありがとう。 – rAzOr