私は、TLBキャッシュのウェイ数を知る作業をしています。どのアルゴリズムを使うべきですか?TLBの結合性(方法の数)を学ぶには?
1
A
答えて
0
質問はあなたの助けが必要であるかどうか不明なので、これはあなたが言及したトピックに関連する情報の要約です。
メモリにアクセスする2つの "方法"があります。直接マッピングでは、ページテーブルはメモリに保持され、仮想ページ番号でインデックスが付けられます。仮想ページ番号から実ページ番号に変換するには、OSはページテーブルのベースアドレスに移動し、仮想ページ番号を追加します。この場所の値は、ページの実際のアドレスを示します。
他の方法は連想マッピングです。連想マッピングはページテーブルをコンテンツアドレス指定のメモリに保持するので、仮想アドレスを参照すると、すべてのプロセスのページが並行して検索され、O(1)検索時間の複雑さが生じます。もう1つの利点は、実際に割り当てられたページだけを格納することです。
連想マッピングでは、コンテンツアドレス指定メモリを実現するために特別なハードウェアが必要になるという問題があります。
だから、トレードオフは、直接マッピングを使用して大多数で、(TLB =変換索引バッファ、あなたの質問に参照する)コンテンツ・アドレス・メモリの少量が使用されていることです。
次に、TLBにアドレスを配置する時期と、TLBから退去させる古いアドレスを考慮する必要があります。これには多くの選択肢があります。時間的局所性を利用するには、LRU(Least Recently Used)が最も一般的です。他の選択肢は、Least Frequently Used、Round Robin(おそらくあまり良くない)、WS_Clockなどです。
関連する問題
- 1. 数学記法を学ぶには?
- 2. Silverlight Fastのプリズムを学ぶ方法は?
- 3. agdaを学ぶ方法
- 4. Cakephpを学ぶ方法
- 5. Ajaxを学ぶ最良の方法
- 6. アンドロイドのフレームワークを学ぶ方法
- 7. WebGLを学ぶ最良の方法
- 8. linuxネットワークスタックのソースコードを学ぶ方法
- 9. CLRでILを学ぶ方法
- 10. 数学クエリを結合するMySQL
- 11. フレームワーク(レール)を学ぶには?
- 12. objectArxを学ぶには?
- 13. Zend Frameworkを学ぶ最速の方法は?
- 14. Javaの `instrument`パッケージを理解して学ぶ方法は?
- 15. C#facebook sdkの使い方を学ぶ
- 16. PostgreSQLを学ぶ
- 17. YIIでCDbCriteriaの結合属性を取得する方法は?
- 18. マルチコアプログラミングの課題について学ぶ方法
- 19. Pythonファイルのインポートについて学ぶ方法
- 20. ブラウザ間の互換性について学ぶ
- 21. asp.netの状態管理のベストプラクティスを学ぶ方法
- 22. Webアプリケーションの設計を学ぶ最善の方法
- 23. 複数のモデルの多態性結合
- 24. 最良の方法は、JMS宛先にMDBを結ぶこと
- 25. scikit SVMを学ぶ、サポートベクターを保存/読み込む方法は?
- 26. 正式なapiを使ってJavaを学ぶ方法は?
- 27. DTraceのカーネル変数について学ぶには?
- 28. 慣用のC++コードを書く方法を学ぶ
- 29. ASP MVCを学ぶには、まずC#を学ぶべきですか?
- 30. 私はClojurescript Omを学ぶ前にReactを学ぶべきですか?
「計算する」とはどういう意味ですか?チップ上のシリコンに変化するものではありません。あなたは何をしようとしているのですか? – Mat
これを「宿題」とフラグを付けますか? – paulsm4
私は「学ぶ」ことを意味します。私は配列をバイパスしようとするが、私は結果を得ていない。 –