Windows Vistaのコピーが遅い。
以前から思ってましたが、原因がわかりました。
ライトキャッシュが無いというか遅延書き込みをやってないのが
原因みたいです。
???なんじゃそれ?? かも(^^;
HDDよりメモリーのアクセスがとんでもなく早いのはご存知でしょうか?
エクセルなどを起動する際・・1回目の起動より2回目の起動が早いですよね。
まー ソフト、テンコ盛りの安いメーカー製パソコンだとわからないみたいですが。
簡単な実験ですが条件があります。
Windows2000/XPでは メモリー512M以上
WindowsVistaでは メモリー1.5G以上
上のパソコンならほぼ実験できます。100%OKの保証は無いけど。
パソコンの電源を入れて DISKTOP画面が出てから5分ぐらい待ちます。
で エクセルを起動させます。起動したらすぐエクセルを終了します。
で また エクセルを起動させて見て下さい。かなり早くエクセルが
起動すると思います。
これは、キャッシュという効果のおかげです。
HDDから読み込んだデータ(この場合はエクセルというプログラム)を
空きメモリーに一時的に保存して、次に同じデータの要求が来た場合は
HDDからデータを読み込まず、一時的にメモリーに保存したデータを利用するからです。
上の実験をHDDのアクセスランプを見ながらやっていただければ よくわかると思います。
この1回目と2回目の時間的な差がHDDとメモリーの速度差だと思ってください。
この機能はOS(この場合はWindows)が提供している機能です。
プログラム的に言うと(OSもプログラムです)
xxxというデータを読み込んで下さい。ってOSに依頼します。
でOSはメモリーにあればそのまま 読み込んだよ(^^
って返事をプログラムに返します。
でもメモリーに無い場合は、そのデータをHDDから読み込んでメモリーに入れたら
プログラムに 読み込んだよ(^^ って 返事をします。
その読み込む間は、じっと返事が来るのを待っています。
これが 読む場合ですね。
書き込みをする場合は
xxxと言うファイル名でデータを書き込んで下さいって OSに依頼します。
で ここで XPまでは とりあえずHDD書き込み用の一時的なメモリーに書き込んでから
書き込み完了しました ('◇')ゞ って返事するんですが
Vistaでは、まじめにHDDに書き込みをするのでその間まじめにじっと
プログラムは待ってるんです。
HDDに直接書いているので 時間がかかります。
だから・・・遅いんです。って わかるか こんな説明で o(`ω´*)o
じゃー XPまでやってるメモリーに書き込んだ奴はどうするの? ってなりますが
CPUの負荷の状態を見て 負荷が掛かっていない時に人知れず
データをHDDに書いていきます。
他には、書き込み用の一時データに入らなくなったら急いでHDDに書き込みを行います。
これがライトキャッシュとか 遅延書き込み って 言うやつです。
HDDへの書き込みが終わる前に停電とかで電源が切れたら、データは消えてしまいます。
危険ではあるんですけどね・・でも速度は速くなります。
この遅延がVistaのコピーのときは機能していないらしい。
普通は遅延が動いてるかどうかは知りません。頭が悪いミアにはわかりません。
ここを読む人は殆ど居ないので・・・適当に書いてます。
嘘じゃないと思うけど・・・大きくは間違ってないだろうと。
最近OSに近いプログラム書かないので良く知らない (つд・)
あと、処理時間計算とかの問題とかあるけど・・
以前から思ってましたが、原因がわかりました。
ライトキャッシュが無いというか遅延書き込みをやってないのが
原因みたいです。
???なんじゃそれ?? かも(^^;
HDDよりメモリーのアクセスがとんでもなく早いのはご存知でしょうか?
エクセルなどを起動する際・・1回目の起動より2回目の起動が早いですよね。
まー ソフト、テンコ盛りの安いメーカー製パソコンだとわからないみたいですが。
簡単な実験ですが条件があります。
Windows2000/XPでは メモリー512M以上
WindowsVistaでは メモリー1.5G以上
上のパソコンならほぼ実験できます。100%OKの保証は無いけど。
パソコンの電源を入れて DISKTOP画面が出てから5分ぐらい待ちます。
で エクセルを起動させます。起動したらすぐエクセルを終了します。
で また エクセルを起動させて見て下さい。かなり早くエクセルが
起動すると思います。
これは、キャッシュという効果のおかげです。
HDDから読み込んだデータ(この場合はエクセルというプログラム)を
空きメモリーに一時的に保存して、次に同じデータの要求が来た場合は
HDDからデータを読み込まず、一時的にメモリーに保存したデータを利用するからです。
上の実験をHDDのアクセスランプを見ながらやっていただければ よくわかると思います。
この1回目と2回目の時間的な差がHDDとメモリーの速度差だと思ってください。
この機能はOS(この場合はWindows)が提供している機能です。
プログラム的に言うと(OSもプログラムです)
xxxというデータを読み込んで下さい。ってOSに依頼します。
でOSはメモリーにあればそのまま 読み込んだよ(^^
って返事をプログラムに返します。
でもメモリーに無い場合は、そのデータをHDDから読み込んでメモリーに入れたら
プログラムに 読み込んだよ(^^ って 返事をします。
その読み込む間は、じっと返事が来るのを待っています。
これが 読む場合ですね。
書き込みをする場合は
xxxと言うファイル名でデータを書き込んで下さいって OSに依頼します。
で ここで XPまでは とりあえずHDD書き込み用の一時的なメモリーに書き込んでから
書き込み完了しました ('◇')ゞ って返事するんですが
Vistaでは、まじめにHDDに書き込みをするのでその間まじめにじっと
プログラムは待ってるんです。
HDDに直接書いているので 時間がかかります。
だから・・・遅いんです。って わかるか こんな説明で o(`ω´*)o
じゃー XPまでやってるメモリーに書き込んだ奴はどうするの? ってなりますが
CPUの負荷の状態を見て 負荷が掛かっていない時に人知れず
データをHDDに書いていきます。
他には、書き込み用の一時データに入らなくなったら急いでHDDに書き込みを行います。
これがライトキャッシュとか 遅延書き込み って 言うやつです。
HDDへの書き込みが終わる前に停電とかで電源が切れたら、データは消えてしまいます。
危険ではあるんですけどね・・でも速度は速くなります。
この遅延がVistaのコピーのときは機能していないらしい。
普通は遅延が動いてるかどうかは知りません。頭が悪いミアにはわかりません。
ここを読む人は殆ど居ないので・・・適当に書いてます。
嘘じゃないと思うけど・・・大きくは間違ってないだろうと。
最近OSに近いプログラム書かないので良く知らない (つд・)
あと、処理時間計算とかの問題とかあるけど・・


