![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
No.3ベストアンサー
- 回答日時:
>> #1の方の回答とそのお礼
> ページテーブルを管理するのはOSで、ページテーブルもカーネル領域にあり、これ自体はページアウトされないものだと決め付けてしまっていました
いえ、質問者の方の認識でいいと思いますよ。
> LRUとはLast Recent Used
Least Recently Usedでは?
> 実現は不可能でもないが、その古いページ枠の検索に時間がかかかってしまう
それが一番大きな理由でしょう。
質問者さんの方法は一番率直な方法ですが、これをソフトウェアでやるとページ入れ替えのたびに、ページサイズに比例する時間がかかってしまいますよね。
これを高速にやろうとすると、連想メモリのようなハードウェアの支援が必要になるわけです。
あと、「アクセスした時刻」のための領域を何ビット用意するのかも大きな問題です。ページごとに用意する必要があるわけですから。
「率直ではない」方法もありますが(参考URL)、やはりオーバーヘッドの面で厳しいです。
それで、LRUを近似的に実現する方法としてaging方式や時計針のアルゴリズムがあるわけですが、これらはもうご存知でしょうか?
参考URL:http://f.csce.kyushu-u.ac.jp/~furusho/OS_4/OS4.h …
詳しく回答していただきありがとうございます。
> LRUとはLast Recent Used
>Least Recently Usedでは?
おっしゃるとおりでした。#2の方もそれをご指摘してくれたのですね^^;お騒がせいたしました。
>それで、LRUを近似的に実現する方・・・
はい、agingやWSclockは授業で一通り学びました。
他に、アクセスしたごとに参照ビットを1にし、しかし定期的に参照bit(1bit)を定期的に0にリセットする、という簡易的な近似アルゴリズムやNFU(Not Frequently Used)も学びました。一応理解はしたつもりですが、厳密なLRUにするには「ハードウェアのサポートが必要」ということに引っかかってしまっていたのでので。。
専用のハードウェアとしてはやはり連想メモリが必要になってくるんですねぇ。連想メモリ自体もあまり段数を増やせない(あとお金がかかる)ということもなるみたいなので、なかなか実現が難しいということなんですね・・・。
参考にあげていただいたURLも前に見てみたのですが、そのときは何故かリンク切れだったような・・^^;
しかしこうしてWSclock等の参考文献も無事見ることができるのでとても助かりました。
こちらの方を改めて読んでみますね。
No.2
- 回答日時:
LRUとはLast Recent Usedですねその対抗馬として
FIFOが有る訳でFirst in First outと成っているのですね。
FIFOは前近代的で今は大抵はLRUではないかと。。。。
>専用のハードって
FIFOはスタックでしょうがLRUは 少し難しいか?
>FIFOはスタック・・・
ですねぇ。FIFOならキューを使って、いっぱいになったら先頭に戻って・・ってやれば簡単ですよね。。
ありがとうございました。
No.1
- 回答日時:
> メモリ上のページテーブル(ページ枠テーブル・・?)に、アクセスした時刻を添えて記録し
これこそが「専用のハードウェアが無いと実装が困難」の理由では?
メモリ上のアクセスを記録する領域もメモリ上。
従って、メモリ上のアクセスをメモリ上に記録し、そのまたメモリ上のアクセスを・・・。
だからメモリ上のアクセスを記録する仕組みが必要なんだと思います。
この回答への補足
すいません、急に疑問に思ったのですが、ページテーブル事態もページアウトの対象になってしまうと、ページテーブルの意味がなくなってしまうのでは・・
補足日時:2004/12/15 23:21>メモリ上のアクセスを記録する領域もメモリ上。
とありますが、ページテーブルを管理するのはOSで、ページテーブルもカーネル領域にあり、これ自体はページアウトされないものだと決め付けてしまっていました(ユーザ領域のデータのみページアウトされると思い込んでいた)。そうではなかったんですねぇ。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- WordPress(ワードプレス) ワードプレス。複数の投稿ページを、複数の固定ページに区別して、表示させる方法は 1 2023/03/04 19:54
- Android(アンドロイド) Androidには、iPhoneにあるSafariのような機能はないのでしょうか…? ホーム画面の検 2 2023/04/23 08:46
- ホームページ作成・プログラミング パスワードつきホームページ トップページ以下はどうなる 6 2022/08/16 12:04
- その他(プログラミング・Web制作) パイソンでのプログラミングについて 3 2022/08/11 20:31
- SEO 検索エンジンにインデックスされない 3 2023/02/20 08:59
- Visual Basic(VBA) VBAでPDFのアクティブページ番号取得 1 2023/05/25 12:41
- SEO 検索エンジンペナルティについて 2 2022/04/13 12:07
- ノートパソコン ページ番号の入れ方について 3 2023/02/16 17:11
- SEO 検索エンジン反映遅い 1 2022/06/04 07:35
- PHP PHP ページング データベース 1 2022/06/16 10:30
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
医師・看護師・助産師
薬剤師・登録販売者・MR
医療事務・調剤薬局事務
歯科衛生士・歯科助手
臨床検査技師・臨床工学技士
理学療法士・作業療法士・言語聴覚士
臨床心理士・心理カウンセラー・ソーシャルワーカー
介護福祉士・ケアマネージャー・社会福祉士
弁護士・行政書士・司法書士・社会保険労務士
フィナンシャルプランナー(FP)
中小企業診断士
公認会計士・税理士
簿記検定・漢字検定・秘書検定
情報処理技術者・Microsoft認定資格
TOEFL・TOEIC・英語検定
建築士
インテリアコーディネーター
宅地建物取引主任者(宅建)
不動産鑑定士・土地家屋調査士
マンション管理士
電気工事士
美容師・理容師
調理師・管理栄養士・パティシエ
シェフ
保育士・幼稚園教諭
教師・教員
国家公務員・地方公務員
警察官・消防士
その他(職業・資格)
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ページ置き換え LRU方式
-
ソフトウェア開発技術者~タス...
-
主記憶装置からの動的割り当て
-
セレン整流器は金属のセレンが...
-
ubuntuで デイスク/deb/loopと...
-
プログラムの規模を表す単位「k...
-
パソコンでインターネット接続...
-
ステップ数??
-
ステップ数について
-
ライン数とステップ数の違いに...
-
職場でサブスタッフが 自分の仕...
-
Octaveでのオイラー法とルンゲ...
-
昔したタイピングソフトが思い...
-
サンプル文章が長文のタイプ練...
-
pthreadのスタックサイズ設定取...
-
gccでスタックサイズを変更する...
-
PTYサーチ?PTYスキャン?
-
hdmiはパラレル?シリアル?
-
エラー?メッセージ
-
Excel VBA マクロ処理 リンク先...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Ic-PcAn はどこのこと?
-
SP領域とはなんですか?
-
コンパクションとガーベジコレ...
-
ページ置き換え LRU方式
-
ミキサの原理
-
半導体の前工程と後工程について
-
【電気】フリッカー回路ってな...
-
アイソレータとはなんですか?
-
RS-FF回路について
-
TLBミスの扱いについて
-
ソフトウェア開発技術者~タス...
-
第一級陸上特殊無線技士
-
スラッシングはどのようにイメ...
-
セレン整流器は金属のセレンが...
-
[病院関係者の方] 人工呼吸器回...
-
ドライブ段の意味(回路用語)
-
CR発振回路って何ですか?
-
リユーザブル,リエントラント...
-
DMAチャネルの劣る点とは?
-
電気のインターロック回路でa接...
おすすめ情報