オペレーティングシステムは、第V章仮想オペレーティングシステムを[ノート]

仮想記憶

最新のオペレーティングシステムのメモリ管理における重要な技術として、仮想メモリは、メモリの拡張を実現しています。この機能により、ユーザーはメモリ容量が実際の容量よりもはるかに大きいと感じすることを可能にする物理メモリ容量を拡張するのではなく、論理的にメモリ容量の拡大を達成することは現実的ではありません。

 

仮想メモリの概要

メモリへのワンタイムの仕事は、二つのことが発生します。
偉大1.いくつかのジョブは、ジョブはすべてのメモリにロードすることはできません。
多数のジョブによって2.実行するために必要な、しかし、メモリはすべてのジョブを収容するのに十分ではありません。

 

一般的なストレージ管理の特徴や地域の原則

  1. ここで、従来のメモリ管理方法

    呼ば我々は先に述べた様々なメモリ管理:従来のメモリモードは
    、1回限り、すべての操作を実行するために開始される前にメモリにロードされなければならないことを使い捨て手段:によって特徴づけられます。2.Parkプロパティは、ジョブがメモリにロードされ、ジョブ全体がメモリに常駐していること、仕事の終わりまで、スワップアウトの任意の一部にはなりません。

  2. 地域の原理

    プログラムは、比較的短時間で、プログラムの実装は、特定の部分に限定されていることを地域の法律の実施に表示され、対応する収納スペース、それはまたの訪問に制限されています:局在する現象プログラムの存在が実行されていますエリア。制限事項も含まれています:時間の制限、スペースの制限。

  3. 仮想メモリの基本的な操作

    アプリケーションは、前のすべてがメモリにロードされて実行する必要がないことを地域のショーの原則に基づいて、単にそれらのいくつかのページまたはセクションでは、現在、あなたが実行する前に実行するためにメモリにロードされました。

 

仮想メモリで定義され、特徴

  1. 仮想メモリの定義

    仮想メモリ要求を指し、並び替える機能および特徴に転送される論理的メモリ記憶システムから展開します。ロジックは、メモリ容量及びメモリ速度の速度に近い外部メモリの容量の和により決定されます。

  2. 仮想メモリの特性
    1. 複数回メモリへのプログラムおよびプログラムデータ:いくつかの。
    2. スワップ:時に、ジョブの実行永久記憶せずにプログラムやプログラムデータを指しますが、ジョブの動作中に変更を許可し、スワップアウト。
    3. バーチャリティ:バーチャルセックスを数回トランスセクシュアルに基づいています。

 

仮想メモリの実装

例外なく、仮想メモリの実現は、ストレージ管理上の離散分布に基づいています。

  1. ページング要求システム

    システムをページングすることに基づいて、要求ページングシステムを高めることであるデマンドページング機能とページ置換ページタイプの機能形成された仮想ストレージシステム。

    1. ハードウェアサポート

      1)要求ページテーブルページング機構。
      2)ページフォルトメカニズム。
      3)アドレス変換メカニズム。

    2. デマンドページングソフトウェアを実装
  2. 要求部システム

    セグメント要求システムが増加し、セグメント化されたシステムの基礎となっているデマンドページングセグメントセグメントの置換仮想ストレージシステム機能を形成した後段階。これは、ユーザーがいくつかのデータセグメントと動作プログラムの開始限り、プログラムをロードすることができます。

    1. ハードウェアサポート

      1)要求テーブル機構部セグメント。
      2)メカニズム割り込みセグメントを欠いています。
      3)アドレス変換メカニズム。

    2. ソフトウェアサポート

 

ページメモリ管理要求

デマンドページングとページの置換機能機能を高めながら、デマンドページングは​​、仮想メモリ機能をサポートするために、基本的なページに基づいています。スコアセグメント方式は、シンプルで仮想メモリを実装するための最も一般的に使用される方法です。

 

におけるデマンドページングのためのハードウェアサポート

  1. リクエストページテーブル機構
    1. ステータスビット:一つだけ、ページがメモリにロードされているかどうかを示すために使用されていることを示します。
    2. Accessフィールド:このページはアクセスされている時間をかけた回数を記録するために使用される、またはどのくらいこのページの最近のレコードがアクセスされていません。
    3. 修正ビット:メモリにページを特定した後に変更されていません。
    4. 外部メモリアドレスは:通常、物理ブロック番号、外部メモリ内のページのアドレスを示すために使用されます。
  2. ページフォルトメカニズム

    あなたが存在しないページにアクセスしたいときデマンドページングシステムでは、それはページフォルトを生成します。ページフォルト割り込みとして、また、「CPU環境の保護」を通過する必要があり、処理のためのページフォルトハンドラを回す「「分析は、中断」。」相違点:
    1.命令実行処理と割り込み信号の間には、生成されます。
    【請求項2】命令は、実行時に複数のページフォルトになることがあります。

  3. アドレス変換部

 

ページングでのメモリ割り当て要求

ときにメモリ割り当てプロセス、3つの問題を伴う:物理ブロックの最小必要数を決定するために、通常の演算処理を保証するために、1; 2何の戦略は、処理ブロックの選択において選択されるべきである; 3つの異なるプロセスに割り当てられ...物理ブロック番号は、同様または比例的サイズに分割されます。

  1. 物理ブロックの最小数を決定します

    最小物理ブロック番号は、通常の処理に必要な最低限のを確実にするために、物理ブロックの数を意味します。

  2. メモリ割り当て戦略

    デマンドページングシステムでは、これは、2つのメモリ割り当て戦略、即ち、固定および可変割当戦略を取ることができます。

    1. 部分置換の固定割り当て

      各プロセスは、プロセスが動作中に変化しない、物理ブロックの固定数を割り当てます。いわゆる部分的置換、オンザフライで不足しているページを見つけ、あなただけのメモリ空間は、プロセスに割り当てられていることを保証するために、スワップアウトした後、いずれかに転送nページにおけるプロセスの分布から選択することができるかどうかのプロセスを指し、変わらず。

    2. 割り当てグローバル変数の変位

      プロセスの動作中に、各プロセスのために物理ブロックの特定の数を割り当てる、いわゆる可変割当手段は、増減適切な状況の下で行うことができます。いわゆるグローバル置換、プロセスを指すは、すべての空き物理ブロックがOS(通常空き物理ブロックキューとして編成)は、全ての物理ブロックまたはすべてのプロセスウィーに抽出プロセスに割り当てられている予約操作でページフォルト見つから対象は、スワップアウトを選択します。

    3. 部分置換の変数分布

      戦略はプロセスの同じタイプに基づいて、またはプログラマの要件、各プロセスのために割り当てられた物理ブロックの特定の数に応じて、そのプロセスは、ページが欠落発見されている、唯一のプロセスは、メモリページスワップアウトを選択することを可能にします。

  3. 物理ブロック割り当てアルゴリズム

    固定割り当て方式を使用する場合、以下のアルゴリズムを使用して:

    1. 平均割り当てアルゴリズム
    2. 比例配分アルゴリズム
    3. 優先割り当てアルゴリズムを考えてみましょう

 

ページングされた戦略

適切に機能するプロセスのためには、プログラムやデータの一部が最初に転送メモリに行われなければならないことページ。

  1. ページに転送する場合
    1. プリページング戦略
    2. デマンドページング戦略

      彼らはページ内で発見された場合、その場でのアクセス、特定のプログラムの一部やデータへのプロセスのニーズは、メモリ内にない場合、それはすぐにメモリに必要なページへのOSを要求します。

  2. 転送ページ

    ファイル領域とスワップ領域:ページングシステムは、外部メモリは、2つの部分に分割されている要求します。

    1. システムは、十分なスワップ領域があります
    2. このシステムは、十分なスワップ領域を欠い

      変更されていないファイルは、ディスクを書き換える必要はありません、ファイル領域から直接転送により変更されることはありません。

    3. UNIX方法

      そして、プロセス関連のファイルは、すべてのファイル領域から転送する必要があるページをオフに実行し、ファイル領域に配置されています。

  3. ページインプロセス

    メモリが新しいページ、ブートディスクI / O、メモリにページの欠落に対応して、ページ・テーブルを変更することができた場合まず、ページフォルトハンドラに中断の原因を分析し、CPU環境を禁じます。置換アルゴリズムとの完全にメモリは、メモリからページを選択した場合、スワップアウトされます。

  4. ページフォルト率

    = F \ F. FRAC {A}は{} F = A F. 、fはページフォルト率であり、Fは、ページにアクセスする失敗の数であり、Aは訪問の総数です。ページフォルト率は、以下の効果の大きさに影響されます。

    1. ページサイズ
    2. 割り当てプロセスの物理ブロック番号
    3. ページ置換アルゴリズム
    4. プログラムの固有の特性

 

ページ置換アルゴリズム

プログラムは、メモリへのアクセスをお願いしない場合は、ページを実行し、メモリにそれらを配置する必要があり、ない空き領域を持つメモリ、プロセスが適切に機能できることを確実にするために、システムがメモリからプログラムを呼び出す必要がありますされますか、ディスクスワップ領域へのデータ。選択アルゴリズムと呼ばれるページをスワップアウトする:ページ置換アルゴリズム。

 

ベスト置換アルゴリズムおよびFIFO置換アルゴリズム

ベスト置換アルゴリズムは、良好な性能を持っていますが、達成できない理想的なアルゴリズムです。最も直感的な、しかし、法律と矛盾FIFO置換アルゴリズムは、アルゴリズムの最悪のパフォーマンスかもしれません。

  1. ベスト置換アルゴリズム(最適)

選択ページには、おそらく、ページ内の最長は、もはやアクセス可能であり、後に、決して使用し、段階的に廃止されていません。

  1. FIFOページ置換アルゴリズム(FIFO)

最初の最初のうちは、メモリページを入力します。

 

使用に最も最近の最低使用置換アルゴリズム

  1. LRU置換アルゴリズムの説明

    排除する最低使用インターフェイスを選択します。

  2. ハードウェアサポートでLRU置換アルゴリズム

    LRU置換アルゴリズムが良いアルゴリズムであるが、システムのハードウェアからより多くのサポートを必要とします。

    1. 登録

      メモリ内のプロセス・ページの使用を記録するために、各メモリページのためのシフトレジスタを装備します。

    2. スタック
  3. 最も使用置換アルゴリズム

    メモリ内の各ページは、ページのアクセス頻度を記録するためにシフトレジスタを設けています。

 

時計置換アルゴリズム

LRUは、より多くのハードウェアサポートが必要なので、LRU近似アルゴリズムの使用:クロックアルゴリズム

  1. シンプルな時計アルゴリズム

    私たちは、ページセット、サイクルの表情を手放すために、循環キューを必要としています。

  2. 改善されたクロック置換アルゴリズム

 

ページングされたアルゴリズム

時間の間に起因するプロセスは、多くの場合、事情の変更にページアウトされたページングシステムでは、ページは、オーバーヘッドシステム性能賃金の内外にスワップされることが重要な影響を与えている非常に明白な事実です。

  1. いくつかの要因が、効率をスワップアウトされるページに影響を与えます
    1. ページ置換アルゴリズム
    2. ディスクへの書き戻しの頻度
    3. メモリに周波数を読みます
  2. ページングされたアルゴリズムPBA

重要なことには、ページに変更を減らす周波数を変更、ディスクI / Oを使用して操作の回数が著しく、これにより、ページに変更を減少、低減され、オーバーヘッドを変更します。特別なハードウェアのサポートを必要としない、シンプルに実装します。

 

効果的なメモリアクセス時間

EAT実効メモリアクセス時間は、高速なテーブル検索時間がλである、トン、実際の物理的なアクセスを提供します。

  1. テーブルでも速いメモリ内のページにアクセスし、そしてれる:EAT =λ+ T
  2. 高速メモリ内のテーブルにありません:= 2(λ+ T)EAT
  3. メモリ内にない:~~(長い、書き込みはありません)

 

「ジッター」とワーキングセット

アナログメモリのデマンドページング型システムの優れた性能に起因するが、効果的にプロセッサの使用率やスループットを改善するために、メモリフラグメンテーションを低減することができ、それは一般的なシステムです。しかし、不足しているページの場合は、頻繁に発生します。

 

「ジッター」のマルチチャネル・プログラム

  1. プロセッサの使用率との程度をマルチプログラミング
  2. 原因「ぼかし」

同時に、システム上で実行中のプロセスが多すぎるが、各プロセスに割り当てられた物理ブロックが小さすぎることによって、頻繁にページが欠落して表示され実行されている各プロセスで、その結果、プロセスの正常な動作のための基本的な要件を満たすことができない、システムが要求する必要がありますメモリに不足しているページ。

 

ワーキングセット

  1. ワーキングセットの基本的な考え方

プログラムが実行されている知られている地域の原則に基づいて、動作中のプログラムは、ページへのアクセスが均一でない、いくつかの時間が少ないページに制限されています。これらのページは、「アクティブなページ。」となって

  1. ワーキングセットの定義

いわゆるワーキングセットは、一定の時間間隔を参照し、実際のプロセスは、ページのセットによってアクセスされます。

 

予防の方法を「ディザリング」

  1. 部分的な代替戦略を取ります
  2. プロセッサ内のワーキングセットスケジューリングアルゴリズム
  3. 「L = S」ページフォルト率の調整基準を使用して
  4. 一時停止プロセスを選択

 

セグメント別のストレージ管理要求

ページに基づいて確立デマンドページング仮想メモリのページングシステムは、スワップアウトの単位で交換されます。要求されたセグメントは、転流に基づいて確立された仮想メモリシステムがスワップアウトユニットに分割されるセグメント。

 

ハードウェア・サポート・セグメントをリクエスト

  1. 要求セグメント・テーブル・メカニズム

セグメント・テーブル・エントリでは、処理セグメント番号、外側セグメント長のスタートアドレス、メモリ内のセグメントは、また増加:アクセスモード、アクセスフィールドA、変更ビットM、Pビット、ビットの追加、外部メモリ開始アドレスの存在を

  1. メカニズム割り込みセグメントが不足しています
  2. アドレス変換部

 

共有と保護セグメント

  1. 共用セグメント・テーブル

    共有のために、各セグメントの全ては、共有テーブルエントリを占有する、システム内のテーブルを共有するように構成されてもよいです。セグメント長、セグメント数、メモリスタートアドレス、ステータス・ビット、外部メモリ開始アドレス:上記テーブルエントリレコード共有セグメントで。

  2. 共有セグメント割当及び回復
  3. セグメント保護
    1. 境界チェック
    2. アクセス制御チェック
    3. リング保護庁

 

エクササイズ

  1. 二つの主要な特性を持つ従来のメモリ管理?システムへの影響は何ですか?

    1. 一次性:进程必须全部装入内存,对空间浪费很大。
    2. 驻留性:在程序运行过程中,进程全部驻留内存,暂时不用的数据无法释放
    
  2. プログラムの時間と空間の制約の限界は何ですか?

    1. 时间局限性:如果程序中的某条指令一旦执行,则不就的将来该指令可能再次执行;如果某个存储单元被访问,则不久的将来,该存储单元可能再次被访问。产生时间局限性的典型原因是在程序中存在着大量的循环操作。
    2. 空间局限性:一旦程序访问了某个存储单元,则在不久的将来,其附近的存储单元也最有可能被访问,即程序在一段时间内所访问的地址,可能集中在一定的范围内。产生空间局限性的典型原因是程序是顺序执行的。
    
  3. 仮想メモリは、これらの機能で構成されて?つまりそのうち最も本質的な特徴は何ですか?

    虚拟存储器具有多次性、对换性、虚拟性三大特征,其中呢最本质的特征是虚拟性。
    
  4. これらのニーズをサポートするために、仮想メモリのハードウェア?

    1. 请求分页(段)的页(段)表机制
    2. 页(段)中断机制
    3. 地址变换机构
    
  5. 仮想メモリは、いくつかの重要な技術を必要としますか?

    (1)在分页请求系统中是在分页的基础上,增加了请求调页功能和页面置换功能所形成的页式虚拟存储系统。允许只装入少数页面的程序(及数据),使启动运行。
    (2)在请求分段系统中是在分段系统的基础上,增加了请求调段及分段置换功能后形成的段式虚拟存储系统。允许只装入少数段(而非所有段)的用户程序和数据,即可启动运行。
    
  6. デマンドページングシステムでは、ページテーブルエントリは、どのようなデータが含まれている必要があり、それぞれの役割は何ですか?

    页表应包括:页号、物理块号、状态位P、访问字段A、修改位M和外存地址。
    
  7. ページフォルトメカニズムと一般割り込みメカニズムの比較、それらの間の違いは何ですか?

    一般中断机制只需要保护现场然后就可以直接调到需及时处理的地方。
    缺页中断除了保护现场外,还要判断内存中是否有足够的空间存储所需的页或段,然后再把所需页调进来再使用。
    
  8. ページングシステムにおけるテスト要求アドレス変換処理:

    1)取逻辑地址分解为页号P和页内偏移w;
    2)根据页号查找页表,获得该页的描述信息;
    3)若该页中断位为1,产生缺页中断;  
    4)更新该页的描述信息;
    5) 根据页块号和页内偏移w,计算物理地址。
    
  9. 固定および可変配分し、グローバル交換の部分置換のメモリ割り当て戦略の割り当てとは何ですか?

    (1)固定分配局部置换固定分配是指,为每个进程分配一组固定数目的物理块,在进程运行期间不再改变。
    局部置换是指,如果进程在运行中发现缺页,则只能从分配给该进程的n个页面中,选出一页换出,然后再调入一页。
    (2)可变分配全局置换可变分配是指,先为每个进程分配一定数目的物理块,在进程运行期间,可根据情况做适当地改变。
    全局置换是指,如果进程在运行中发现缺页,则将0S所保留的空闲物理块或者以所有进程的全部物理块为标的,选择一块换出,然后将所缺之页调入。
    
  10. いくつかの頻繁に使用されるページ置換アルゴリズムを持つデマンドページングシステムでは?

    答:采用的页面置换算法有:最佳置换算法和先进先出置换算法,最近最久未使用(LRU)置换算法,Clock置换算法,最少使用置换算法,页面缓冲算法等。
    
  11. あなたは現在、「ジッター」を防ぐために、いくつかの方法を使用できますか?

    (1)采取局部置换策略(2)把工作集算法融入到处理机调度中(3)利用“L=S”准则调节缺页率(4)选择暂停的进程

おすすめ

転載: www.cnblogs.com/caigua/p/12076886.html