メモリー・フットプリントとは? わかりやすく解説

Weblio 辞書 > コンピュータ > IT用語辞典 > メモリー・フットプリントの意味・解説 

メモリフットプリント

別名:メモリーフットプリント
【英】memory footprint

メモリフットプリントとは、コンピュータ上でプログラム動作する際に使用されるメインメモリ容量メモリ使用量)のことである。

一般的に大規模なプログラムほど大きなフットプリントを必要とする。物理メモリ量に対するメモリフットプリントの割合大きければ大きいほど、システム不安定になったり障害発生したりしやすくなる

メモリフットプリントは、単に「フットプリント」と呼ばれることも多い。ただし、フットプリントという場合ディスプレイサーバー設置した場合設置面積などを意味している場合もある。

ハードウェアのほかの用語一覧
半導体メモリ:  IGZO液晶  ガリウム砒素  メインメモリ  メモリフットプリント  単機能半導体  有機トランジスタ
外部記憶装置:  アンフォーマット

メモリー・フットプリント

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/02/11 03:14 UTC 版)

メモリー・フットプリント英語: memory footprint)は、プログラムが実行中に使用または参照するメインメモリの合計量を意味する[1]

フットプリント (footprint) という単語は、一般には、物体が専有する物理的な次元の範囲、つまり、物体の大きさを意味する。コンピュータ科学の分野では、ソフトウェア・アプリケーションのメモリー・フットプリントとは、プログラムの実行中に必要なメモリの量を意味する。このメモリの中には、(大部分の)プログラムの命令(や一部の定数)が格納されているコードセグメント英語版、(初期化または未初期化状態の)データセグメント英語版ヒープメモリコールスタック、その他に必要な追加のデータ構造であるシンボルテーブル、デバッグ用データ構造、オープンしたファイル、現在のプロセスにマップされた共有ライブラリなど、プログラムが実行中や実行後に少なくとも1回読み込まれる可能性のある、あらゆるアクティブなメモリ領域が含まれる[2]

大きなプログラムは大きなフットプリントを持つ。アプリケーションのメモリフットプリントは、大まかに言って、読み込む共有ライブラリやクラスの数やサイズに比例し、一方、静的なライブラリや静的なデータ領域は、固定サイズ(定数)のフットプリントを増加させる。通常、メモリー・フットプリントの大部分を占めるのは、プログラム本体のサイズではなく、むしろ、ランタイム環境によって追加される構造である。たとえば、C++コンパイラは、プログラムの実行中にアクティブな、vtables、型情報のオブジェクト、多数の一時的で匿名のオブジェクトなどを追加する。Javaのプログラムでは、メモリー・フットプリントの大部分は、Javaアプリケーション実行時に間接的に読み込まれる、Java Virtual Machine (JVM) の形で実行環境を構築するために消費される。さらに、ほとんどのオペレーティングシステムでは、アプリケーションがオープンしたディスクファイルもアプリケーションのアドレス空間に読み込まれるため、フットプリントが増加する。

メモリ使用方法の変遷

1990年代に、コンピュータのメモリが安価になったため、大きなメモリフットプリントのプログラムは一般的なものになった。この傾向は大量のメモリを消費する商用のアプリケーション(たとえばデータベース)や、メモリインテンシブなマルチメディアのオーサリング・編集ソフトウェアなどのコンピュータソフトウェアの普及による。増加し続けるメモリ必要量の問題に対処するために開発されたのが、仮想メモリのシステムである。これは、利用可能なメモリを均等なサイズに分割し、ハードディスク上に「ページ」という単位でメモリーを保存し、アクセスが必要になったタイミングで、必要に応じて読み込むという手法である。

巨大なメモリフットプリントのプログラムをサポートするこのアプローチは大成功したため、Microsoft WindowsApplemacOS、全バージョンのLinuxおよびUnixなど、現在のほぼすべてのオペレーティングシステムは、仮想メモリシステムの機能を提供している。

組込みシステム

メモリー使用量に制約のある組込みシステムでは、伝統的にメモリー・フットプリントの小さいプログラムが重要であった。そのため、組込みシステムの開発者たちは、通常、効率性(処理速度)を犠牲にしてでも、利用できるRAMに収まるようにプログラムのフットプリントを小さくする努力をしてきた。たとえば、サン・マイクロシステムズはそのようなメモリ制約のあるデバイス用のJava仮想マシン (JVM) である、K virtual machine英語版を提供している。通常の家庭用PCやスマートデバイスでは、メガバイトからギガバイトのメモリが利用できるが、KVMはキロバイトレベルのメモリしかないプラットフォームでも動作するようになっている。

脚注

  1. ^ Definition of: memory footprint”. PC Mag. 1 August 2012閲覧。
  2. ^ Reduce your Linux memory footprint”. IBM developerWorks. 1 August 2012閲覧。

関連項目



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「メモリー・フットプリント」の関連用語

メモリー・フットプリントのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



メモリー・フットプリントのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
IT用語辞典バイナリIT用語辞典バイナリ
Copyright © 2005-2025 Weblio 辞書 IT用語辞典バイナリさくいん。 この記事は、IT用語辞典バイナリの【メモリフットプリント】の記事を利用しております。
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのメモリー・フットプリント (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2025 GRAS Group, Inc.RSS