アプリケーションのメモリモデル

アプリケーションのメモリモデル
• OS
– メモリなどのリソースやアプリケーションプログ
ラムの管理をする。
• アプリケーションプログラム
– 実行されるときに、OSによってメモリに読み込
まれる。
– メモリ上で実行される。
アプリケーションのメモリ構成
アプリケーションのメモリ構成
アプリケーションのロード
スタックとヒープ
• スタック:
– 関数内部のローカル変数や、関数を呼び出す
時のパラメータを格納するためのメモリ領域
• ヒープ:
– プログラムの実行時に動的に用意される配列
やオブジェクトを格納するためのメモリ領域
メモリの管理は、OSに依頼して行う。
メモリの使用方法
• 変数領域:グローバル変数
int a[10];
void main()
{
• スタック:ローカル変数
void func( )
{
int a[10];
• ヒープ:動的に用意した変数
int *a;
void func( )
{
a = new int[10];