このアドレスは何を指定していますか?これらがメモリにロードされる場所のアドレス?System.mapファイルのアドレスの意味
3
A
答えて
8
カーネルは、プロセスの仮想アドレス空間内の固定された場所から開始します。 Linuxカーネルは通常、[あなたのシステムアーキテクチャに応じて] 4GBの仮想アドレス空間の上位1GBにあります。したがって、3G/1Gスプリットを持つシステムアーキテクチャのカーネルは、アドレス0xC0000000から開始します。プラットフォームのメモリマップに応じて、これは物理メモリの物理アドレスにマップされます。
system.mapファイルはカーネルシンボルテーブルです。それには仮想アドレスと共に記号が列挙されています。これらのシンボルがメインメモリにロードされている場所を調べるには、シンボルアドレスからPAGE_OFFSET [3G/1Gシステムの場合は0xC00000000]を引いてオフセットを取得し、このオフセットを物理メモリのカーネルの開始物理アドレスに追加します。システムメモリマップから決定される。
4
カーネルの仮想アドレスです。つまり、アドレス変換が有効になっているカーネル、つまりカーネルの観点から見ると、メモリ内のシンボルのアドレスです。 ではなく、のリアルモードです。
ほとんどの(?)プラットフォームには、これらのアドレスを実際のアドレスに変換するための簡単な式があります。 RAMの実際のアドレスですが、必ずしもそうである必要はありません。
関連する問題
- 1. アドレスの意味
- 2. .zfproject.xmlファイルの意味
- 3. Vulkan:「添付ファイル」の意味
- 4. 私のファイル中のアンダーウェーブグリーンラインの意味は?
- 5. elfファイルの `.rodata.str1.8`セクションの意味
- 6. scssファイルのインポート時に〜の意味
- 7. dylibファイルの意味は何ですか?
- 8. makeファイルで$ <と$ @の意味
- 9. ファイルからJavaの単語と意味
- 10. どういう意味ですか?:意味ですか? Apacheの設定ファイルで
- 11. "スレッドダンプ"の意味
- 12. 'sp_renamedb'の意味
- 13. イメージヒストグラムの意味
- 14. ":"の意味は?
- 15. pub.packageの意味
- 16. `/ * @ 'の意味は?
- 17. 「#」の意味は?
- 18. PHPの意味 '//'
- 19. 式の意味
- 20. VK_DEFINE_NON_DISPATCHABLE_HANDLEの意味
- 21. 「...」の意味と 『##』
- 22. SEQUENCE_NEXT_HI_VALUEの意味
- 23. NuGetの意味
- 24. setContextClassLoaderの意味
- 25. jqueryの意味
- 26. ``?( '')??? `の意味は?
- 27. 'module_name'の意味
- 28. ステートメントの意味
- 29. :/ =%%の意味:/ =%?
- 30. インポートステートメントバイトコードの意味