バイナリ実行可能ファイルをメモリにロードするときには、16進エディタやアセンブラコードのシンボルで逆アセンブルしたり、見ていることもあります。これらは常に0x804のようなもので始まります。私はプログラムのメモリセクションを想定しています。しかし、私の質問は、これらのアドレスは、プログラムの開始からのオフセットではないので、バイナリはどのようにメモリにロードされるのかを知っていますか?バイナリ実行ファイルはどのようにメモリ内の位置を知っていますか?
答えて
実行可能ファイルには、通常、フィールドの1つがロードアドレスであるヘッダーがあります。
しかし、ファイルは常に*同一の場所に読み込むことはできません。 – Jumhyn
Windowsでは、EXEのデフォルトのロード場所は0x400000です。これは、常に(他の)固定場所を持つプリロードされたシステムDLLを除いて、常にプロセスでロードする最初のものであるEXEで使用できます。 –
@Jumhyn同じ場所に実行ファイルがロードされるのをなぜ表示できますか?あなたは図書館に適しています。その場所は他の何かのために使われているかもしれません。しかし、実行可能ファイルの場合は、新しい実行可能ファイル用の新しいアドレス空間を作成しているので、すべてがフリーで始まります。 –
- 1. ファイルの位置を知ってファイルから行を削除するには?
- 2. ARMリンカは、例外テーブルの停止位置をどのように知っていますか?
- 3. ファイルがバイナリであることをPerlはどのように知っていますか?
- 4. OSは物理メモリの実際のサイズをどのように知っていますか?
- 5. フィードバーナーはページの内容をどのように知っていますか?
- 6. func2はどのようにコンテキストを知っていますか?
- 7. androidどのように私は利用可能な位置を持っているかを知る方法
- 8. Railsは移行が実行されたことをどのように知っていますか?
- 9. は、どのように知っていますか?
- 10. バイナリ/ファイルの特定の部分が現時点でメモリに入っているかどうかを知る方法はありますか?
- 11. ImageViewをObjectAnimatorでどのようにスケールダウンしますか?レイアウト内の位置は保持していますか?
- 12. シェイプの位置とグラデーションの位置はHTML5キャンバスにどのように関係していますか?
- 13. Wordpress Taxonomy - どのようにobject_idを知っていますか?
- 14. autotoolsでバイナリを実行するにはどうしますか?
- 15. 任意のメモリ位置を読み取っていますか?可能?
- 16. 位置によってテキストを置き換えますか?
- 17. 2つのバイナリ実行可能ファイルをマージするにはどうすればよいですか?
- 18. 実行時にdivの位置を変更するにはどうすればよいですか?
- 19. Bazaar OS Xインストーラは実行ファイルをどこに置いていますか?
- 20. DotNetCoreコンソールアプリケーションは、ソリューション内の実行可能ファイルをどのように参照していますか?
- 21. CSS:どのように相対位置のdiv内のスパンの絶対位置を設定するには
- 22. RAMメモリのデータレイアウトはどのようになっていますか?
- 23. Maven2はプラグインの場所をどのように知っていますか?
- 24. eclipseはプロジェクトの名前をどのように知っていますか?
- 25. プロセスはバックグラウンドの状態をどのように知っていますか?
- 26. チェックボックスはテキストビューとの関連をどのように知っていますか
- 27. STLはどのようにコンテナの終わりを知っていますか?
- 28. delete []は配列のサイズをどのように知っていますか?
- 29. JavaScriptプリミティブ:同じメモリ位置、新しいメモリ位置、またはエンジンに依存しますか?
- 30. 特定のメモリ位置から構造体を取得するにはどうすればよいですか?
あなたが何を求めているのかは明確ではありません。実行中の実行ファイルがメモリ上の自分の場所をどのように決定するかを尋ねていますか?もしそうなら、なぜそれを知る必要がありますか?また、あなたが考えている特定のプラットフォームがありますか?このドキュメントの[loaders](http://www.iecc.com/linker/linker08.html)に関するセクションを参照してください。 –
私は、プログラムのアドレスがどのように正確であるかをもっと尋ねています。プログラムが常に同じ場所にロードされるとは限らないので、どのようにアドレスが正しいものを指しているのでしょうか。 – Jumhyn
はいできます。 http://en.wikipedia.org/wiki/Paging –