ページングとは?物理メモリ不足を補うシステムの仕組み

ざっくりと

  • 物理メモリ不足時に発動
  • 仮想メモリへのデータ移動手段
  • パソコンフリーズを防ぐ方法

ページングとは、物理メモリ不足時の救済処置です。

概要説明

ページングとは物理メモリが不足した時の不足を補う仕組み。 なぜならば、不足したメモリを仮想メモリに移動させるから。

例えば、たくさんのタスクを同時に動かすとパソコンは重くなる。そして、メモリが足りなくなるとページングが行われる。

つまり、パソコンの動作をスムーズにするための方法である。だから、重たくなる前にページングが働く。

職業職種

  • システムエンジニア
    ページングは、システムの最適化やトラブルシューティングである。なぜなら、メモリ管理とパフォーマンスの向上に必要だから。例えば、高負荷のアプリケーション対策。
  • ITサポートスタッフ
    ページングは、問題の診断や解決手段である。なぜなら、顧客のパソコンがフリーズしたときの対応に使うから。例えば、メモリ使用量のチェック時。
  • 一般ユーザー
    ページングは、パソコンの快適な使用のための仕組みである。なぜなら、重くなったパソコンを軽くするために自動で動くから。例えば、多くのアプリを開いて作業するとき。

ページングは、名前の由来は「ページ」から来ています。これはメモリのデータを「ページ」という単位で仮想メモリに移動させることから名付けられました。

代表例

  • Microsoft
    Microsoftは、ページングで有名である。なぜなら、Windows OSでページングの機能を積極的に採用しているから。例えば、Windowsの「ページファイル」という仮想メモリシステム。
  • Linux
    Linuxは、ページングで名高い存在である。なぜなら、オープンソースのOSとして多くのサーバで使用され、ページングの機能が重要な役割を果たしているから。例えば、スワップ領域の利用。
  • Andrew S. Tanenbaum
    Andrew S. Tanenbaumは、ページングで世間に知られている。なぜなら、計算機科学の教育者として、オペレーティングシステムの理論を多くの学生に教えてきたから。例えば、彼の著書「Modern Operating Systems」。

手順例

以下は、ページングを理解する手順です。
  1. 物理メモリの状態を確認
    物理メモリの使用量をチェックする。なぜなら、ページングが必要かどうかを判断する第一歩だから。例えば、タスクマネージャーやhtopでメモリ使用率を確認。
  2. 仮想メモリ領域を設定
    必要なら仮想メモリ領域(ページファイルやスワップ領域)を設定する。なぜなら、物理メモリが足りないときに使用するから。例えば、Windowsのシステム設定やLinuxのスワップ設定。
  3. ページングの設定を最適化
    ページングのパラメータを調整する。なぜなら、システムのパフォーマンスを最適化するためだから。例えば、ページングの頻度やサイズを調整。
  4. システムの動作を確認
    変更後のシステムの動作を確認する。なぜなら、不具合がないか、またパフォーマンスが向上しているかを確かめる必要があるから。例えば、各アプリケーションの動作テスト。
  5. 必要に応じて調整
    問題があれば、再度設定を調整する。なぜなら、最適な状態を保つためだから。例えば、ページファイルのサイズを変更。

類似語

  • スワッピング
    スワッピングは、ページングの類似語である。なぜなら、両者ともメモリ管理の一部として物理メモリと仮想メモリの間でデータを移動する機能だから。例えば、全てのプロセスを仮想メモリに移動すること。
  • ディスクキャッシング
    ディスクキャッシングは、ページングの類似語である。なぜなら、ディスクの読み書きの効率を上げるためのキャッシュ機構で、高速なメモリ領域を使用するから。例えば、HDDやSSDの読み取り・書き込みの速度向上。
  • メモリマッピング
    メモリマッピングは、ページングの類似語である。なぜなら、アドレス空間を他の物理メモリやデバイスにマップする機能だから。例えば、I/Oデバイスとのデータのやりとり。

反対語

  • ページイン
    ページインは、ページングの反対語である。なぜなら、ページングが物理メモリから仮想メモリへのデータ移動を指すのに対し、ページインはその逆、仮想メモリから物理メモリへのデータ移動を指すからだ。例えば、データを物理メモリに戻す時。
  • データ読み込み
    データ読み込みは、ページングとは異なる行為だが、反対語として捉えることができる。なぜなら、ページングはメモリの管理とデータの移動に関わるのに対し、データ読み込みはデータの取得を主目的とするからだ。例えば、ファイルを開く時。
  • キャッシュヒット
    キャッシュヒットは、ページングの反対語であるとは言えないが、関連する概念として捉えることができる。なぜなら、キャッシュヒットはデータがキャッシュ内に存在する場合を指し、ページングはデータの移動を指すからだ。例えば、キャッシュ内に必要なデータがある時。

会話例

  • システムエンジニアとプロジェクトマネージャーの会話
    「最近、このアプリケーションが遅くなってない?」
    「ページングが頻繁に発生しているからかもしれない。リソースの確認をしよう。」
  • サーバーエンジニアとネットワークエンジニアの会話
    「サーバーのCPU使用率は低いけど、何か問題がある?」
    「ページングが発生している可能性がある。メモリの状態を見てみる必要がある。」
  • データベースエンジニアとアプリケーションエンジニアの会話
    「このクエリの実行時間が長いんだけど、何か原因がわかる?」
    「ページングが原因かもしれない。メモリの使用状況を調べてみよう。」

注意点

ページングを使用する時の注意点はメモリの使用状況を適切にモニタリングすることである。なぜならばページングが頻繁に発生すると、システム全体のパフォーマンスが低下する可能性があるからだ。

例えば、大量のデータを処理するアプリケーションである。そして、ページングが頻繁に発生している場合は、追加の物理メモリの検討やアプリケーションの最適化が必要である。

ページングとスワッピングは、間違えやすいので注意しましょう。

ページングは、物理メモリと仮想メモリ間のデータ移動を指します。

一方、スワッピングは、プロセス全体をメモリとディスク間で移動させることを指します。

記事を書いてる人

ガラケー時代からWEB開発やってる自宅SE です。

「○○を知りたい!!」「○○が分からない!!」などありましたら、Twitterでもブログでもコメントいただければ、ご期待に添えるように頑張ります!

ネット事件簿チャンネルを運営しているので、YouTubeもぜひ覗いてみてください!!

雨おやじのSNSを覗く!!
IT用語辞典
雨おやじのSNSを覗く!!
ITkagyo

コメント