Linux カーネルが TLB ミスを処理する方法を理解しようとしています。具体的には、ページ テーブル ウォークが発生することはわかっていますが、TLB ミスが発生した場合follow_page
にmm/memory.c
follow_page がどのように呼び出されるかを知っています。struct page
follow_pageの戻り値 ( ) はどのようにハードウェアに戻されますか? ハードウェアによって TLB ミス例外が発生してから が呼び出されるまでの TLB ミス処理の呼び出しグラフを誰かが説明できますかfollow_page
?
follow_page
カーネル コードhttp://lxr.linux.no/linux+v3.4.4/+search=follow_page内を検索しましたが、結果はあまり役に立たないようです。明確にするために、ハードウェアが x86_64 であるとしましょう。