差分

移動先: 案内検索

記憶管理

429 バイト追加, 2020年2月17日 (月) 03:05
/* Linuxのスワップ */
仮想記憶の機能があっても、もし実メモリが十分余裕があれば、わざわざスワップのための設定をする必要がありません。またプラクティカルには実メモリは、スワップ先である外部記憶装置よりも高価であり、そのスワップのオーバーヘッドを考えても利益があると考えた場合に有効です。またスワップする先が用意できなければ当然できません。たとえばCDもし実メモリが十分余裕があれば、スワップのための設定をしなくても支障なく動作できます。たとえばCD-ROMからブートするKNOPPIXではデフォルトではスワップを使っていません。ROMからブートするKNOPPIXではデフォルトではスワップを使っていません。しかし、たとえば実メモリはI/Oのキャッシュに使ってパフォーマンスを改善しますが、アクセスがされないようなプログラムのメモリ空間を実メモリにかかえていているようば場合はどうでしょうか?これでは実メモリを有効に使っているとはいえません。ならばプログラムが抱えたまま使っていないメモリ空間を外部記憶装置に送り出し、その分の実メモリをI/Oのキャッシュに利用するならば、全体のパフォーマンスが向上するはずです。プログラムのメモリ空間で使っていないページをページアウトしてしまうことができれば実メモリは有効利用できるはずです。
先ほど説明したように記憶空間はページと呼ばれる単位で分割されています。主記憶と補助記憶とのやりとりはページ単位で行われ、ページイン、ページアウトを行います。  一般的にはハードディスク上にスワップ用のパーティションを取って、そこをスワップ先に指定します。多くの場合はインストール時にセットアップするようになっています。通常はパーティションをマウントするための情報を書くさて、先ほど説明したように記憶空間はページと呼ばれる単位で分割されています。主記憶と補助記憶とのやりとりはページ単位で行われ、ページイン、ページアウトを行います。一般的にはハードディスク上にスワップ用のパーティションを取って、そこをスワップ先に指定します。多くの場合はインストール時にセットアップするようになっています。通常はパーティションをマウントするための情報を書く/etc/fstabにスワップパーティションの割り当ての記述が作られているはずです。
<pre>