ママのスキンケアのお悩みにおすすめアイテム

よろしくお願いいたします。
キャッシュのことですが、
メモリキャッシュとディスクキャッシュについてなのですが、
これらの違いはなんでしょうか?
例えば、TemporaryInternetFilesに保存されるのは、
ディスクキャッシュで、クリアするとハードディスクの
空き容量が空く。
そして、あるホームページを表示した状態で
TemproraryInternetFilesをクリアしてもまだブラウザに
残っているのはメモリキャッシュに保存されているからである。
と解釈しておりますが、これでよろしいのでしょうか?
用語集など調べたのですが、いまいち自信が持てませんので
アドバイスお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

こんばんは。



gaia5 さんは、どうやら、ブラウザ固有の用語について、
ご質問されているように思います。
私は Windows ユーザーなので、知りませんが、
マックの IE や NN にはそういう設定があるんでしょうか。

だから、用語集などで調べられても、
一般的な意味について書かれていますから、
よけいに意味を、混同されていらっしゃるんだと思います。
私からは、本来の意味を説明させていただきます。


「ディスクキャッシュ」
ハードディスク等からファイルを読み込むとき、
読み込んだデータを、一時的にメモリに貯めておき、
次に使うときは、そのメモリから読み込むことによって、
表面的に読み込みを早くすることです。
書き込み時にも利用します。

「メモリキャッシュ」
メモリからデータを読み込むとき、
読み込んだデータを、一時的に非常に高速なメモリに貯めておき、
次に使うときは、その高速なメモリから読み込むことによって、
表面的に読み込みを早くすることです。
書き込み時にも利用します。

「キャッシュメモリ」
メモリキャッシュを行うときに使う、
普通のメモリに比べて、高価で高速なメモリ。
CPU に内蔵されている物や、マザーボードに付ける物があります。


だから、質問の内容を答えさせていただくと、

> 例えば、TemporaryInternetFilesに保存されるのは、
> ディスクキャッシュで、クリアするとハードディスクの
> 空き容量が空く。

一般的には、これをディスクキャッシュとは言いません。
「TemporaryInternetFiles」に保存されるファイルは、
「インターネット一時ファイル」や「Webキャッシュ」
といいます。

> そして、あるホームページを表示した状態で
> TemproraryInternetFilesをクリアしてもまだブラウザに
> 残っているのはメモリキャッシュに保存されているからである。

これも、一般的には、メモリキャッシュとは言いません。
(キャッシュメモリに保存されている可能性はありますが。)
単純に、メモリに保存されていると考えていいです。

しかし、ブラウザのWebキャッシュの設定上の、
メモリキャッシュ、ディスクキャッシュの説明としては、
terra5 さんのおっしゃる内容が正解なんだろうと思います。

それから、sesame さんのおっしゃる、
メモリキャッシュの説明は、間違っていると思います。
仮想メモリやスワッピングの説明に近いと思います。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
質問がアバウトですいません。

実は、IEとNNでキャッシュの
ことを勉強しているんですが、インターネットでWebページを表示すると
IE5.5は、TemporaryInternetFilesにコピーされる。
NN4.7は、Cacheフォルダにコピーされる。
いずれも、Webページを表示したままクリアしても
そのページが表示されたままなので、
これがメモリキャッシュ(NN用語?)なのかと思っていました。

う~む、奥が深いですね。

お礼日時:2001/09/06 23:58

ブラウザでどこかサイトを見る場合,


その内容をネットワークから読み込みます。

始めの一回はこうですが、2回目からは違います。

メモリキャッシュの場合,1回目にネットワークから
読み込んだ物をメモリにとっておいて,
2回目に見る場合、メモリの内容を表示して,
ネットワークから読み込みません。

ディスクキャッシュの場合もメモリと同様ですが,
保存場所が自分のマシンのディスク上になります。

どちらも、ネットワークから読み込むより早いので,
2回目からは早く見ることができます。
違いは,容量は小さいがより高速なメモリに保存するか,
メモリよりは押しが容量が大きく取れるディスクに
保存するかの違いです。

現在表示している内容はメモリにありますが、
それはメモリキャッシュ上ではないと思います。
プログラムとして現在表示のために保存している
ものです。

メモリキャッシュが有効なら、直前に見たページ以外でもメモリに保存されています。

sesameさんの説明ですが,メモリキャッシュについては誤りで、あの説明は仮想メモリやスワップファイルの説明に近いです。

ディスクキャッシュについては、あれで正しい場合もあります。実際にOSがああいう機能をこの名前で提供してます。
ただ、gaia5さんが質問している内容からすると、
TemproraryInternetFilesという記述からIEのような
ブラウザのメモリキャッシュ,ディスクキャッシュの
意味を知りたがっている思うので,
ちょっと不適切と思います。
    • good
    • 0
この回答へのお礼

遅くなりました。申し訳ありません。
回答ありがとうございます。

実は、あるページ"A"を表示したまま、
回線を切っても見ることができるのは、
ページのコピーが自分のところにあるからで、
そのコピーはIEだったらTemporaryInternetFilesにある。
"A"を表示したままTemporaryInternetFilesをクリアしても
"A"が表示されているのはいったいどこからくるのかが疑問でした。
それがメモリキャッシュかと思っていました。
また、NNも使用しておりますので用語が違うので少し混乱しております。
またよろしかったら回答お願いいたします。

お礼日時:2001/09/06 23:42

【メモリキャッシュ】


メモリ不足をおぎなうために本来メモリに展開されるべきデータをハードディスクに展開すること。(HDDをメモリ代わりに使う)

【ディスクキャッシュ】
ハードディスクのアクセスを高速化するために、いったん読み込んだディスク内容をメモリに展開して、再度アクセス要求があったときにそこから読み出すこと。(メモリをHDD代わりに使う)

…というふうに、意味がまったく逆です。
    • good
    • 0
この回答へのお礼

遅くなりましたが、回答ありがとうございます。
逆ですかぁ。(^^;
勉強になりました。

お礼日時:2001/09/06 23:24

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qディスクキャッシュって 主記憶と磁気ディスクの アクセス時間のギャップを 埋めるためのものらしいです

ディスクキャッシュって
主記憶と磁気ディスクの
アクセス時間のギャップを
埋めるためのものらしいですが

ここでいう磁気ディスクって
HDDのことですよね?

最近のSSDのパソコンには
ディスクキャッシュは
ないってことですか?
不要?

よろしくお願いします。

Aベストアンサー

磁気ディスクは、今では主にHDDのことをさしていますね。
SSDのパソコンでも、HDDと搭載しているものもあります。
また、SSDでも、速度なりを稼ぐために、メモリを搭載しているものも多いです。一応、メモリのないSSDも存在しますけどね。
SSDも高速だけども、まだDRAMのメモリの方が高速ですから。

Qオーバレイ方式と仮想記憶システムの違い

オーバレイ方式は容量が大きくて、一度にローディングできないプログラムをセグメントに分割して必要なセグメントだけをロードして実行する方式。

仮想記憶システムはプログラムを分割して、必要な部分だけを主記憶装置にロードする。

オーバレイ方式は実記憶管理らしいのですが、上記のような感じに考えるとオーバレイ方式も仮想記憶管理になるような気がするのですが、何がどう違うのですか?

Aベストアンサー

No.1の補足です。

> 仮想記憶システムはプログラムを分割して、必要な部分だけを主記憶装置にロードする。

> オーバレイ方式は実記憶管理らしいのですが、上記のような感じに考えると
> オーバレイ方式も仮想記憶管理になるような気がするのですが、何がどう違うのですか?

仮想記憶の説明が中途半端で確かに紛らわしいですね。
仮想記憶の場合、すでに説明したように、プログラムの分割も必要な部分のメモリーへの
ロードも全てハードとOSがアプリケーションに気づかせる事無く勝手に行ないます。

オーバレイ方式ではこれを全てアプリケーションがやらないといけないのです。

次にオーバレイ方式が仮想記憶管理でない証拠をお見せしましょう。
オーバレイ構造の図を使いましょう。
参考URLがdocファイルなのでここにURLを載せられません。
Googleで「コンピュータシステム入門 オーバレイ構造」で検索してください。
問14にオーバレイ構造図があります。

このプログラムの本当の大きさは(A+B+C+D+E+F+G)です。
しかし、実際に使うメモリーの大きさは(A+B+D+F)のように小さいです。
一方、このプログラムを仮想記憶で動かす時には使う仮想メモリーの大きさは
(A+B+C+D+E+F+G)です。
使われる実記憶はこれよりも少ないはずですが実際にいくら使うかは
アプリケーションはノータッチです。

このようにアプリケーションから見た使用メモリー量と実際に使われるメモリー量の間に
差があるものが仮想記憶管理と言われるのです。

No.1の補足です。

> 仮想記憶システムはプログラムを分割して、必要な部分だけを主記憶装置にロードする。

> オーバレイ方式は実記憶管理らしいのですが、上記のような感じに考えると
> オーバレイ方式も仮想記憶管理になるような気がするのですが、何がどう違うのですか?

仮想記憶の説明が中途半端で確かに紛らわしいですね。
仮想記憶の場合、すでに説明したように、プログラムの分割も必要な部分のメモリーへの
ロードも全てハードとOSがアプリケーションに気づかせる事無く勝手に行ないます...続きを読む

Qコンパクションとガーベジコレクションの違いが分かりません

どちらも同じように、メモリ領域の隙間を集めて、連続した利用可能なメモリ領域を増やすとありますが、違いを教えて下さい。

Aベストアンサー

No1 hpsk さんの回答されている通りですが、名前を見てみればイメージしやすいのではないでしょうか。

 メモリコンパクション:記憶領域の圧縮
 ガーベジコレクション:ゴミ収集

使わなくなった領域 (=ゴミ) を解放する (=収集する) のがガーベジコレクションです。
ちなみに、プログラミング言語の機能としてガーベジコレクション (GC と略すことが多いです) と言った場合、使用しない領域をプログラマが意識することなく、自動で解放してくれる機能を指します。
たとえば、Java には GC があるとか、C/C++ には GC がないとか…。

ただし、ゴミを収集しただけでは、使用可能な領域が断片化してしまうことがあります。
この断片化のことをフラグメンテーションと呼びます。
連続した大きな領域が必要になったときに、フラグメンテーションが多数発生していると、必要な領域が確保できないことがあります。
これを解消するのが、メモリコンパクションです。

# MS-Windows 系 OS で、デフラグという機能があると思いますが、
# これはハードディスクのコンパクション (=フラグメンテーションの
# 解消、デフラグメンテーション) を行っているわけです。

本来の意味としては、メモリコンパクションにガーベジコレクションの意味は含まれないと思うのですが、どうなのでしょうか?>詳しい方、フォローあればお願いします!

確かに、情報処理試験の参考書の中には、両者を同じ意味としているものもあったように思います。
しかし、実使用上は上記のような差異があることを覚えておくと良いと思います。

No1 hpsk さんの回答されている通りですが、名前を見てみればイメージしやすいのではないでしょうか。

 メモリコンパクション:記憶領域の圧縮
 ガーベジコレクション:ゴミ収集

使わなくなった領域 (=ゴミ) を解放する (=収集する) のがガーベジコレクションです。
ちなみに、プログラミング言語の機能としてガーベジコレクション (GC と略すことが多いです) と言った場合、使用しない領域をプログラマが意識することなく、自動で解放してくれる機能を指します。
たとえば、Java には GC があるとか、...続きを読む

Q「スワッピング」と「スラッシング」の違いについて

こんにちは。よろしくお願いします。

「スワッピング」「スラッシング」。
どちらも「メモリが少なくなったとき、ハードディスク上の仮想メモリを使用する」という意味だと思うのですが…。

はっきりした区別を教えてください。

Aベストアンサー

スワッピングにはいくつかの意味があるのですが、一応仮想メモリーに
ついてのことだとして
スワッピング・・・単にメモリーとHDDの入れ替えのこと
スラッシング・・・スワッピングが頻発すること。
  結果としてコンピュータは殆んど仕事をしなくなります。

Qキャッシュとバッファの違いは?

はじめまして
キャッシュとバッファの違いがよくわからないので
教えてください。

初歩的な質問だと思いますがこちらの方の方がわかる方が多いと思いますのでよろしくお願いします。

Aベストアンサー

両方、物理的にいえばメモリです
意味合いとしても両方、記憶領域になります。

キャッシュは、使用頻度の高いデーターを蓄えておき、即時実行できるようにするメモリ

バッファは、処理速度や転送速度の差を補うためにデータを一時的に保存しておくメモリ

QHDDのキャッシュは数字が大きければ速い?

HDDの性能詳細によくキャッシュと書いてありますが、8MBと16MBとでは、どちらの方が速いのでしょうか?
というかキャッシュは何に対して速くなる要素なのでしょうか?

Aベストアンサー

理屈としてはキャッシュメモリーというものは
速くするものではありません。
遅くならないようにするものです :-D

HDDの機械的な動作に対して、電気的なメモリーやバスの動作は
瞬間的に理想値を出したり、機械的な動作を待って止まったりします。
読み込みにしろ書き込みにしろ…

そこで、その遅延可能性を、キャッシュメモリを使うことで減らすわけです。

現在では"データの先読み処理"や"順番を入れ換えた読み出し"が
HDD内で行なわれ、バス側との停滞を減らすようにもなっています。

結果的には速くなっているとも言えますが
本来、キャッシュメモリは規格上(理論上)のPC性能に近づけるためのしくみです。

厳密に言えば、多いほうが性能が向上する見込みはあります。
しかし、Quantum LP240Sがもてはやされた時代に比べれば
HDDのキャッシュメモリ容量が、決定的な性能差を生むことは無いと思います。
当時はOSのキャッシュ機構が拡張バス上の遅いメモリー使ったりしてたけど
今は、数GBのメインメモリーがディスクキャッシュに活用されたりするしね。

あと、キャッシュの多いメモリーのほうが機械的動作の負担が少なく
耐久性が上がるという説もあるけど、まゆつば。

理屈としてはキャッシュメモリーというものは
速くするものではありません。
遅くならないようにするものです :-D

HDDの機械的な動作に対して、電気的なメモリーやバスの動作は
瞬間的に理想値を出したり、機械的な動作を待って止まったりします。
読み込みにしろ書き込みにしろ…

そこで、その遅延可能性を、キャッシュメモリを使うことで減らすわけです。

現在では"データの先読み処理"や"順番を入れ換えた読み出し"が
HDD内で行なわれ、バス側との停滞を減らすようにもなっています。

結果的に...続きを読む

Qプログラム設計書の書き方

僕は新人SEです。
今、上司の方からあるシステムの基本設計書・システム設計書・プログラム設計書を作り、プログラミングまでしてから単体テスト・結合テストもやるように言われています。(全て1人で)

おそらく経験のある方ならすぐにできてしまうようなシステムで、上司の方も勉強のために全てやらせているようです。

今、基本設計書・システム設計書まではなんとかできて、プログラム設計書の作成に取り掛かりたいのですが、初めての経験で実際のプログラム設計書には何をどのように書いているものなのかも全く見当もつかずにいるので全く何も書けません。

上司さんは今週忙しいようで
「来週見てあげるから自分で調べたりしてやってみて」
と言っています。
ですが、全く何もできずにいるのもイヤなので何かそれらしいものでも書いてみたいのですが…プログラム設計書とは何をどう書いてあるものなのでしょうか?

日本語が書いてあるのかプログラムが書いてあるものなのか…
そういったところからわからないので少しでも何か教えていただきたいです。
宜しくお願いします。

Aベストアンサー

こんにちは。
No.1様のご回答通りなのですが会社によって異なります。
というのを踏まえた上で・・・うちではという回答になりますが

・日付 2009/10/10
・版 初版(その後バージョンアップで改定するため、改定ナンバー必須)
・タイトル 企業情報印刷(ここでは決定済み名称)
・発注仕様書ナンバー(正式にお客さまと契約で決めた発注番号を記載)
・作成者 boo_boo_suu
・使用言語 Visual C++
・使用データベース ORACLE
・使用帳票アプリケーション Crystal Reports
・フロー図(Visioで埋め込み図)
・概要説明 
メインメニューから呼び出され企業情報の印刷条件を入力し、クリスタルレポートの帳票情報から企業情報ファイル(KIGYOU_INFO)ファイルを呼び出し印字します。
・全企業情報が一覧で印字可能である。
・特定一企業(企業コード指定)での印字も可能である。
・一企業が指定された場合は企業情報を画面表示する。

-----------------------------------
で・・・・プログラム仕様書はこのくらい。
命令書ですからコードそのものは打ちません。
これみて作ってもらわないといけないので日本語メインです。

あとはDBの仕様書をみてもらったりしてプログラムのローカルルール、画面サイズ、文字サイズ プロシージャ定義やら定数や変数、フォーム、構造体定義書などプログラム書くときの決まりごとに添ってPGさんに打ってもらっています。
一応、図とかつけてみました。(^-^;;
全体の雰囲気はこんな感じだとご理解いただければ幸いです。
ではでは~。

こんにちは。
No.1様のご回答通りなのですが会社によって異なります。
というのを踏まえた上で・・・うちではという回答になりますが

・日付 2009/10/10
・版 初版(その後バージョンアップで改定するため、改定ナンバー必須)
・タイトル 企業情報印刷(ここでは決定済み名称)
・発注仕様書ナンバー(正式にお客さまと契約で決めた発注番号を記載)
・作成者 boo_boo_suu
・使用言語 Visual C++
・使用データベース ORACLE
・使用帳票アプリケーション Crystal Reports
・フロー図(Visioで...続きを読む

QLinuxの「セクタ」と「データブロック」の違い

Linuxの本を読んでいたら、
データを保存する領域として「セクタ」と「データブロック」という
二つの単語が出て来ました。

本を読む限り、微妙に意味合いが違っているようなのですが
どのように違うのか明確に分かりませんでした。

どなたか分かる方教えて下さい。

Aベストアンサー

セクタはハードウェア的な最小単位というのは正しいですが、これもHDDでは標準で512バイトというだけで実際には可変です。

※物理フォーマット時に設定(変更)する事ができます。


ブロックサイズは入出力時に一度に扱う単位で管理単位とは違います。

例えばe2fsの場合、mke2fsコマンドで調整できる値としてフラグメントサイズとブロックサイズがあって管理の最小単位はフラグメントサイズで入出力の最小単位はブロックサイズとなります。

例えばフラグメントサイズが1024バイトでブロックサイズが4096バイトの場合に4100バイトのファイルと3000バイトのファイルを書き込む時、4100バイトのファイルは4096+4なので4096バイトのブロックと1024バイトのフラグメント1つ、3000バイトのファイルは2048+952なので1024バイトのフラグメント3つとして扱われ、4つまでのフラグメントは1ブロックとして一度の入出力で読み書きされる場合があります。

※入出力はブロックサイズで行われますが、管理はフラグメントサイズで行われるので速度は4096ブロックの速度で、利用効率は1024バイト/ブロック時の利用効率で使えます。(カーネル内で組立て・分解されるのでその処理に若干の負荷は余分に掛りますが)

前の例では単純にブロックサイズで管理した場合、4100バイトのファイルが2ブロックを消費し、3000バイトのファイルが1ブロックを消費するので合計3ブロックを占めますが、ブロックとフラグメントの2層で管理する事により、1ブロック+1/4ブロックと3/4ブロックで合計2ブロックに占有ブロックを減らせる事になります。効率のみでなく速度も入出力の回数が減らせて向上します。


http://ja.wikipedia.org/wiki/Unix_File_System

上記ページで『ファイルの最後の部分はブロックサイズ未満になるので、それをブロックを分割したサブブロックに格納することで領域を有効活用できるようにする。これをブロックのサブアロケーション、テールマージ、テールパッキングなどとも呼ぶ』と説明されています。また、『Linux の ext2 ファイルシステムは UFS の影響を受けている』とも。

セクタはハードウェア的な最小単位というのは正しいですが、これもHDDでは標準で512バイトというだけで実際には可変です。

※物理フォーマット時に設定(変更)する事ができます。


ブロックサイズは入出力時に一度に扱う単位で管理単位とは違います。

例えばe2fsの場合、mke2fsコマンドで調整できる値としてフラグメントサイズとブロックサイズがあって管理の最小単位はフラグメントサイズで入出力の最小単位はブロックサイズとなります。

例えばフラグメントサイズが1024バイトでブロックサイズが4096バイトの...続きを読む

Qジョブとタスクの違いは?

基本情報処理試験の勉強をしてるのですが、ジョブとタスクの違いがわかりません。
どなたか教えていただけないでしょうか?

よろしくお願いします。

Aベストアンサー

最初に出くわす、疑問です。
懐かしい言葉です。
皆さん、悩む事項の一つです。

Job Task 日本語に訳すと「仕事」です。
ジョブは、一般的に、コンピュータシステムの外部から認識される仕事の単位で、
コンパイル、リンク、実行はよく使われるジョブを構成するジョブステップと言われる例です。

それとは対照的な、タスクは、コンピュータの中での細分化された仕事の単位です。
これは、コンパイルするためにはコンピュータの中でどんな仕事に切り分けられるかです。
これは、コンピュータの中で発生する仕事の単位です。
例えば、ソースイメージをファイルから「読み込む」という仕事、それを何回かで読み込む仕事、読み込んだソースを分析し、機械語に書き直す仕事、機械語に書き直したファイルを「書き出す」仕事、こういったことをコンピュータの中ではやっている訳です。
こうしてタスクを管理するのは、タスクコントローラと言います。
ジョブを管理するのをジョブコントローラと言い、情報処理では、完全に分離されます。

タスクコントローラに関しては、この後だんだんと理論が深くなっていきます。
CPUを使う仕事と、ファイルを読み書きする仕事といったことです。
タスクスケジューラ、I/O完了待ち合わせ、ディスパッチャー、同期管理といった理論に入っていきます。
特にもう一つぶち当たる「壁」は、プログラム作成における「ルーチン」です。
「リエントラント型」、「リユーザブル型」です。
日本語的には、「再入可能」、「再利用可能」というものです。
特にタスクと関係するのは、ディスパッチャの「リエントラント型」のタスクコントローラといった理論は、最高に面白くなると思います。

応援してます。
がんばって。

最初に出くわす、疑問です。
懐かしい言葉です。
皆さん、悩む事項の一つです。

Job Task 日本語に訳すと「仕事」です。
ジョブは、一般的に、コンピュータシステムの外部から認識される仕事の単位で、
コンパイル、リンク、実行はよく使われるジョブを構成するジョブステップと言われる例です。

それとは対照的な、タスクは、コンピュータの中での細分化された仕事の単位です。
これは、コンパイルするためにはコンピュータの中でどんな仕事に切り分けられるかです。
これは、コンピュータの中で発生する仕事の...続きを読む

Q冗長ビット…。

私は今基本情報の勉強をしています。そこで誤り検出という言葉が出てきたのですが、冗長ビットという言葉で少しつまずいてしまっています。わかりやすく言うと冗長ビットってなんですか?素人質問で申し訳ありませんが回答お願いします。

Aベストアンサー

音楽CDを例に説明します
CDの読み取り面には目に見えないほ多くの情報が書き込まれています
そこに指紋や小さな傷がつくと情報を正しく読み込めない可能性が出てきます
そこで もし情報が読み取れなかったとしても後で読み取れなかった分の情報を割り出すための余分な情報を記録しています

1・2・3
というデータがあります
そこに 1+2+3で6という余分な情報を追加しとくと
1・2・3 6
こんな具合にデータが増えます
もし 情報が破損して
×・2・3 6
になっても
6-2-3=1
って感じで×の部分が割り出せる仕掛け


人気Q&Aランキング