仮想記憶とメモリ管理
luagate/virtual-memory-intro仮想記憶入門23 枚OS・Linux
上から下へ、全 23 枚そのまま並べています。
発表モードで開く仮想記憶とメモリ管理
目次
今日のゴール
この時間で身につけてほしいことです。
- メモリが足りなくなる場面をイメージできる
- 仮想記憶が「見かけ上広く使う」工夫だと分かる
- ページングとスワップの違いを説明できる
- ページフォールトとスラッシングが分かる
- メモリとディスクの速度差を意識できる
メモリ の復習
以前学んだメモリは、作業中のデータを置く机の上のような場所でした。
メモリが足りない
アプリをたくさん開くと、限られた机の上はすぐにいっぱいになってしまいます。
- アプリを開くほどメモリを使う
- 机の上には限りがある
- 全部を同時には広げきれない
- 足りなくなると新しい作業ができない
- かといってメモリは高価で無限には積めない
仮想記憶 とは
ディスクの一部を借りて、実際より広いメモリがあるように見せる仕組みです。
第2部 ページングとスワップ
ページング とは
メモリを小さなページに区切って管理する、仮想記憶の基本のやり方です。
スワップ とは
メモリが足りないとき、当面使わないページをディスクに追い出すことです。
ページの出し入れの流れ
必要なページをメモリに置き、足りなければ古いページをディスクへ逃がします。
メモリとディスクの速度差(イメージ)
メモリは一瞬、ディスクはずっと遅いので、スワップが増えると待ち時間が膨らみます。あくまでイメージです。
第3部 ページフォールトと落とし穴
ページフォールト とは
必要なページがメモリになく、ディスクから取りに行く必要が生じた状態です。
スラッシング とは
出し入れに追われ、本来の仕事がほとんど進まなくなる困った状態です。
快適なときと苦しいときの比較
メモリに余裕があるかどうかで、ページの出し入れの頻度と体感が大きく変わります。
第4部 記憶階層と全体像
記憶階層の復習
以前学んだ記憶階層を思い出すと、仮想記憶がメモリとディスクをつなぐ工夫だと分かります。
仮想記憶の全体像
メモリとディスクを組み合わせ、見かけ上広いメモリとして賢く使い分けます。
- プログラムは広いメモリがあると思って動く
- 実際はメモリとディスクを組み合わせている
- いま使うページはメモリに置く
- 使わないページはディスクに退避する
- OSがこの出し入れを裏で管理する
仮想記憶のうれしさ
限られたメモリでも、たくさんの大きなプログラムを動かせるようになります。
振り返りクイズ
振り返りクイズ 解答
質疑・次回予告
今日のまとめと、次に学ぶテーマです。質問があればここで受け付けます。
"
仮想記憶はディスクを借りて、メモリを見かけ上広く使う工夫。ページで小分けし、使わない分は退避する。ただし出し入れが多すぎると重くなる。速さと広さのバランスを取るのがメモリ管理です。