仮想アドレス空間管理とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > 仮想アドレス空間管理の意味・解説 

仮想アドレス空間管理

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

仮想記憶」の記事における「仮想アドレス空間管理」の解説

プロセス仮想アドレス空間には、そのプロセス使用するコードデータ配置されるページング方式であれ、セグメント方式であれ、仮想アドレス空間内で使用している範囲管理制御仮想記憶機構として必須である。例えば、実行ファイル内容仮想メモリ上に配置する領域スタック配置する領域などがある。このような領域セグメントと呼ぶ。セグメント方式セグメント似ているが、純粋に仮想的なオブジェクトである。実行ファイル配置する領域は必ずしも連続ではない。プログラムコード部分データ部分を分離して配置するのが一般的で、前者をテキストセグメントもしくはコードセグメント、後者をデータセグメントと呼ぶ。Unix系システムWindows では、一般的にデータセグメントの一部としてBSSセクションヒープ領域を含む。BSSセクションにはプロセス起動時に0に初期化される静的変数配置する初期値が0の静的変数を別扱いしているのは、読み書き発生するまで0で初期化するのを後回し出来るようにするための高速化テクニックである。Unix系システムではヒープ領域はデータセグメントの末尾配置されbrk() 関数などでデータセグメントのサイズ変えることでヒープ領域サイズ変えられるようにする。各セグメントマッピングしているオブジェクトが何であるか、その領域へのアクセス権などを属性情報として保持する。 テキストセグメントはファイルシステム上の実行ファイル一部と完全に対応しており、書き換えられることもない。従って、マッピングしているオブジェクト実行ファイルであり、アクセス属性は「リードオンリー」となる。データセグメントやスタック一時的な存在であるため何かをマッピングしているわけではない。そこでこれらは匿名ファイルAnonymous File)をマッピングしているものとして管理される匿名ファイルマッピングしているセグメント対応するページ匿名ページ呼び、これがスワッピングの際にスワップ領域書き出される。データセグメントは当初実行ファイル一部対応しているが、書き込み可能な属性設定されている。ページング方式場合、データセグメント内の内容更新されページページ単位匿名ページへと属性変更されるexec() システムコールなどで新たにプロセス仮想アドレス空間設定した当初は、基本的にこのような仮想アドレス空間管理するデータ構造カーネル内作成されるだけで、実際実行ファイル内容ロードされない。Unix系システムでは、exec() システムコールからユーザ空間制御戻され瞬間ページフォールト発生し、そこで初めページ単位実行ファイル内容ロードされる。ただし、性能上目的で事前にマッピング作成する場合もある。 各プロセス仮想アドレス空間アドレス範囲は同じでありオーバーラップしているのが一般的である。これを多重仮想記憶と呼ぶ。MMUは現に実行中のプロセス仮想空間のみを認識するコンテキストスイッチプロセス切り替える際、MMUに対して仮想アドレス空間切り替え指示する必要があるが、その方式はアーキテクチャによって様々である。 同じプログラム実行するプロセス複数存在する場合多重仮想記憶ではそれぞれが同じ仮想アドレス実行ファイルマッピングしていながらそれぞれ独立した仮想空間使用するこのため実行ファイル配置する仮想アドレスはどのプロセスでも同じにすることができ、実行ファイル自体配置すべきアドレス格納しておくようになっているのが一般的である。また、それぞれのプロセス実行ファイルのテキストセグメントをマッピングするのに使う物理メモリ共有することができる。他にも mmap()ファイルマッピングする場合共有メモリ機能プロセス間の通信を行う場合マッピングされる物理メモリ共有される。 なお、アーキテクチャによっては、多重仮想記憶オーバーラップしていると捉えず、全仮想空間フラット並んだ巨大な仮想空間想定することもある。この場合仮想空間識別番号巨大な仮想空間アドレス一部考えられる。もっとも、これは単にモデル化の手法が違うだけで実装大きな違いがあるわけではない実際、各ユーザープロセスが自分仮想空間識別番号以外の仮想空間アクセスすることはできない

※この「仮想アドレス空間管理」の解説は、「仮想記憶」の解説の一部です。
「仮想アドレス空間管理」を含む「仮想記憶」の記事については、「仮想記憶」の概要を参照ください。

ウィキペディア小見出し辞書の「仮想アドレス空間管理」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



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

辞書ショートカット

すべての辞書の索引

「仮想アドレス空間管理」の関連用語

仮想アドレス空間管理のお隣キーワード
検索ランキング

   

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



仮想アドレス空間管理のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaの仮想記憶 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS