2012-03-05 11 views

答えて

1

Windowsでは、スタックとヒープの間にガードページがあるため、ヒープとスタックは決して接触しません。これはセキュリティ上の理由からです(スタック枯渇のバグは、より悪用可能なヒープオーバーフローのバグにつながりません)。

ヒープがいっぱいになったときに何が起こるかを尋ねるなら、malloc(またはHeapAllocなど)の呼び出しがNULLを返すようになるという単純な答えです。スタックがいっぱいになったときに何が起こるかを尋ねているのであれば、スタック枯渇例外が発生します(スタックオーバーフローと誤って呼ばれることもあります)。どちらの場合でも、通常はプログラムによってメモリが解放され、デスクトップが続行されるか、終了します。

関連する問題