※ 本記事では、基本情報技術者試験の対策として私が勉強したことを備忘録的にまとめておきたいと思います。
少しでも参考になれば嬉しいです。
はじめに
さて今回は、基本情報技術者試験対策として、仮想記憶の仕組みについてまとめたいと思います。
名前だけ聞くと、仮想って何です??ってなりますよね。気持ちは分かります。
主記憶装置と補助記憶装置をうまいこと使っていくわけですが、それだけでも分かっていればとりあえずOKです。
簡単なイメージだけでも持っておくようにしましょう。
ちなみに私はこの参考書を使って勉強してました。
漫画形式で読みやすく、分かりやすい内容になっているため、無理なく学習を進められると思います。
過去問を解きまくり、不明点があれば参考書で知識を補う、このサイクルで試験対策するのが私のオススメです!
最新版はこちらです。
少し内容が異なる部分もあるかもしれませんが、大まかには変わらないはずですので、安心して下さい。
仮想記憶管理とは??
仮想記憶とは、コンピュータシステムにおけるメモリ管理技術の一つであり、プログラムが実行する際に必要なメモリ領域を効率的に割り当てる仕組みです。この技術により、主記憶装置と補助記憶装置を1つの大きなメモリとしてとらえることができ、実際の物理的な主記憶装置の容量以上のメモリを使用しているかのように見せることが可能となり、大規模なプログラムを効率的に実行することができます。
少しざっくりとしていますかね??重要なポイントは主記憶装置と補助記憶装置を区別なく利用するというところです。
仮想記憶は、主記憶装置(RAM)と補助記憶装置(ハードディスクやSSD)の組み合わせによって実現されます。主記憶装置は高速ですが容量が限られており、補助記憶装置は容量が大きいもののアクセス速度が遅いため、この2つを効果的に使い分けることで、システム全体のパフォーマンスを向上させることができます。
ただし、実際にプログラム上はこっちが主記憶装置、こっちが補助記憶装置とは区別しません。単純に大きなメモリがあるととらえているだけです。実際にはその裏で色々と工夫をしているんですけどね。
あたかもプログラム上は1つに見えるので、仮想的な記憶装置(メモリ)といったイメージで、仮想記憶と呼ばれます。
せっかくなので細かいワードも紹介しておきますね。必須かどうかはさておき、余裕があったら覚えておくといいでしょう。
- メモリ変換ユニット(MMU):
仮想アドレスから物理アドレスへの変換を行うハードウェア装置です。プログラムは仮想アドレス空間を使用してデータや命令にアクセスしますが、実際のデータは主記憶装置や補助記憶装置の物理アドレスに格納されています。MMUは、この変換を高速に行い、プログラムがあたかも連続した大きなメモリ空間を使用しているかのように動作します。
- 動的アドレス変換機構(DAT):
仮想アドレスを物理アドレスに変換する過程で、DATは変換テーブルを使用して効率的にアドレスを対応付けます。このテーブルは通常、ページテーブルと呼ばれ、各ページ(メモリの小さな単位)に対する仮想アドレスと物理アドレスの対応関係を保持します。メモリ変換ユニット(MMU)がメモリ変換する仕組みをが動的アドレス変換機構(DAT)ですね。
- ページングとスワッピング:
主記憶装置の容量を超えるデータを扱う場合、ページング技術を用いてデータを小さな固定サイズのブロック(ページ)に分割し、必要なページだけを主記憶装置にロードします。また、使用頻度の低いページは補助記憶装置にスワップアウトされ、主記憶装置の空き容量を確保します。これにより、プログラムは実際の物理メモリよりも多くのメモリを使用しているように動作できます。
※おまけ:基本情報関連知識
仮想記憶に関連している重要な知識もこちらにあげておきますね。量が多かったのでわざわざ章分けしています・・・
最後に
さて今回は、基本情報技術者試験対策として、仮想記憶の仕組みについてまとめました。
細かいところはまぁさておき、どんなもんかさえ理解しておけばOKです。
★仮想記憶
主記憶装置と補助記憶装置を1つの大きなメモリとしてとらえ、主記憶装置の容量以上のメモリを使用しているかのように見せることが可能
以上!
前回まとめた記事も読んでもらえると嬉しいです!
基本情報以外の勉強記事も是非!
オススメ参考書 & Udemy講座
過去問編
兎にも角にも過去問を解かないことには始まりません。解いて解いて解きまくりましょう!
特に以下の参考書は問題数が多いのでオススメです。
この1冊だけ買って、とりあえず1周すれば合格がかなり近くなると思います!
科目A+B両方合わせて4セット収録されてるとかヤバすぎます・・・
知識網羅編
以下は知識網羅編として、講義系の参考書、動画をピックアップしています。
1からしっかりと学習し、知識を身に着けたい方はとてもオススメです。
過去問を解きまくり、不明点を参考書で補う。これが最高の勉強サイクルです~
私が勉強する際に使用していたオススメ参考書は以下です。
上記シリーズの最新版は以下です。(内容はそこまで変わらないはずですが・・・)
私がぜひオススメしたい、Udemyの講座もいくつかピックアップしておきます。
誰かに解説してもらった方が分かりやすい場合もありますからね~
画像でもボタンでも、どちらを押下しても講座へ飛べるようにしてありますので是非!
コメント