3

一般に、オブジェクトファイルにはコード、データ、ヒープ、スタックのセクションがあることを私は知っています。
しかし、これがWindows実行可能ファイルとLinux実行可能ファイルでどのように配置されているか知りたいです。
インターネットで検索して、いくつかの構造を見つけました。
.textはコード用で、.dataはグローバル変数用であることを理解しました。
LinuxとWindowsの両方のプラットフォームのスタックとヒープがここにあることを知りたいですか?
実行可能ファイルの構造を教えてもらえますか?

前もって感謝します...

4

1 に答える 1

3

これは、Microsoftがリリースした仕様です。

http://msdn.microsoft.com/en-us/windows/hardware/gg463119

また、これはこのテーマに関する良い読み物です:http: //msdn.microsoft.com/en-us/magazine/cc301805.aspx

編集:

スタック/ヒープはメモリ内の構造であり、実行時に作成/変更されるため、本質的にはファイル自体には含まれません。存在することはできません。それらを、すべてのプログラムが実行時データを格納できるメモリ内の特別な場所と考えてください。実行時データとは、変数を意味します。関数の呼び出し、戻り値、および低レベルで発生しているすべての本質的なもの。

于 2011-08-17T11:43:58.083 に答える