Serviceを読んで理解し、同意したものとみなします。スタック・オーバーフローはプログラマーとプログラミングに熱心な人のためのQ&Aサイトです。360件4プログラミングの参考書などでよく、メモリー空間の先頭にスタックがあり、後方にヒープがある図を見かけます。今時のOS上の仮想空間も実際に図の様に連続で、つながっていて、そのような位置関係にあるのでしょうか。それとも間のどこかに、セキュリティ的なこと以外に、実メモリが確保されておらず、アクセスできない領域があったりするのでしょうか。票7メジャーなOSの1つとしてWindowsであればVMMapというツールが提供されています。Windowsをお使いでしたらご自身で確認してみてはどうでしょうか?Windowsであれば後方はシステム領域です。その手前にはImage(実行ファイル・DLL)が配置されていました。スタックもヒープも複数存在します。スタックが複数存在する理由は、スレッド毎にスタックが必要になるためです。そのため「前の方」ではありますが「先頭」ではありません。ヒープが複数存在する理由は、ヒープ確保の際にスレッド間ロックを排除するため、つまりパフォーマンスのためです。複数存在するため「後方」に配置する理由はなく、メモリー空間内に自由に点在していました。これらはWindows以外にも当てはまる部分もあるかと思います。それとも間のどこかに、セキュリティ的なこと以外に、実メモリが確保されておらず、アクセスできない領域があったりするのでしょうか。OSになるとアドレス空間が広すぎて使い切れていないのは事実で、その空いた領域にアクセスさせないのはセキュリティが理由だと思います。個の銅バッジ残念ながらWindowsは手近にありませんでしたが、macにも同じ名前のコマンドラインツールがありました。|回答スタック・オーバーフローに参加してくれて、ありがとうございます!質問の回答を共有してください。回答を説明し、自分の検討結果も共有してください。意見を述べること(意見を述べるなら、参照リソース、自分の経験で意見をサポートしてください)さらにサポートが必要な場合このヘルプを参考してください。“回答を投稿”をクリックすることで利用規約、プライバシーポリシー、及びクッキーポリシーに同意したものとみなされます。タグが付いた他の質問を参照するか、自分で質問をする。開催しました!🎉コメントで回答する理由を教えてください関連する質問9ヒープ領域とスタック領域の違いについて教えてください5C#でList<構造体>とした時、ヒープメモリなのかスタックメモリなのか?0メモリ管理、スタックのmutabilityについて4静的型付と動的型付のメモリの動きを理解したい。質問のフィードこのRSSフィードを購読するには、このURLをコピーしてRSSリーダーに貼り付けてください。