ヒープ | Programming Place Plus 用語集

トップページ用語集

名称

このページでは、メモリ領域としての「ヒープ」を取り上げています。このほか、データ構造としての「ヒープ」があります。

解説

メインメモリの領域のうち、プログラム実行中に確保解放をおこなう目的で使用される領域のことです。

データ構造としての「ヒープ」と混同しないように、「ヒープ領域」や「ヒープメモリ」などと呼ぶと明確ですが、どちらも単に「ヒープ」と呼ばれることも多いです。

プログラムの実行開始時に、OS などがメモリ領域の一部をヒープとして使えるように準備します。プログラムの実行中、メモリの確保が必要になったときに OS に要求を出し、ヒープ領域の一部を割り当ててもらいます。割り当てられた領域が不要になったら、解放の操作を行って返却します。このように、プログラムの実行中にメモリの確保と解放をおこなう手法を、ダイナミックメモリアロケーション(動的メモリ確保)といいます。

多くの処理系で、ダイナミックメモリアロケーションの実現のためにヒープ領域を用いますが、必ずしもそうでなければならないわけではありません。たとえば、OS がない環境では、静的に使えるメモリ領域の一部分をヒープに見立てて、自力で確保・解放を行うプログラムを書いて実現することがあります。


参考リンク

更新履歴


用語集のトップページへ

Programming Place Plus のトップページへ



はてなブックマーク に保存 Pocket に保存 Facebook でシェア
X で ポストフォロー LINE で送る noteで書く
rss1.0 取得ボタン RSS 管理者情報 プライバシーポリシー
先頭へ戻る