大きな画像をクリップボードにコピーするとコンピュータがフリーズするのはなぜですか?
単純な画像をクリップボードにコピーしたり、コンピュータがフリーズしたりするなど、まったく意味をなさない私たちのコンピュータを使用しているときに、本当に奇妙なことが起こることがあります。イメージはイメージですね。今日のSuperUser投稿は、困惑した読者のジレンマに対する答えを持っています.
本日の質疑応答セッションは、コミュニティ主導のQ&A Webサイトのグループである、Stack Exchangeの下位区分であるSuperUserの好意により提供されます。.
元の画像提供:ウィキメディア.
質問
SuperUserの読者Joban Dhillonが、自分のコンピュータのクリップボードに画像をコピーするとフリーズするのはなぜなのか知りたい。
私はいくつかの高さマップ画像をいじっていて、これを見つけました:
(http://upload.wikimedia.org/wikipedia/commons/1/15/Srtm_ramp2.world.21600xx10800.jpg)
画像のサイズは21,600 * 10,800ピクセルです。ブラウザを右クリックして[画像のコピー]を選択すると(Google Chromeを使用しています)、コンピュータがフリーズするまで遅くなります。その後、私は再起動しなければなりません。私はなぜこれが起こるのか興味があります。私はそれが画像のサイズだと思いますが、それは私のコンピュータに保存された時にはたった約6 MBです。私はWindows 8.1も使っています
クリップボードにコピーした後、単純なイメージがJobanのコンピュータをフリーズさせる?
答え
SuperUserの貢献者であるMokubaiが私たちに答えを持っています。
「Copy Image」は、画像ファイル自体ではなく生の画像データをクリップボードにコピーします。.
生画像データは21,600×10,800×3(24ビット画像)= 699,840,000バイトのデータとなる。ブラウザがクリップボードにコピーしようとしている約700 MBのデータです。.
JPEGは損失の多いアルゴリズムを使用して生データを圧縮し、かなり良い圧縮を得ることができます。従って 圧縮された ファイルはわずか6 MBです.
コンピュータの動作が遅くなるのは、ブラウザが画像を表示するために使用している700 MB以上の画像データと、さらに700 MB(クリップボードのオーバーヘッドを含む)を格納するためのメモリがいっぱいになっているためです。クリップボードに保存することができ、画像をクリップボードに保存できる形式に変換するためのわずかな処理能力.
4 GB未満の物理RAMを使用している場合、両方のメモリ要求を同時に満たすために、イメージデータのコピーによってスワップファイルにメモリをページアウトする必要があります。これは、ディスクを使用して、ページアウトされたばかりのデータを使用しようとするため、プログラムとディスクアクセスが遅くなる原因となります。.
一言で言えば:あなたが大量のメモリと暇な時間がある場合を除き、巨大な画像にクリップボードを使用しないでください.
きれいなグラフが好きですか?これは、Google Chromeにその画像を読み込んでから、12 GBのRAMを搭載した自分のマシンのクリップボードにコピーしたときに発生します。
それは2.8 GBのRAMを使用して低い点から始めて、イメージをロードしてそれを最大3.6 GB(およそ700 MB)までパンチし、そしてそれをクリップボードにコピーします。あなたはプログラムとかなり大きいイメージの2つのコピーのために見ることを期待するであろう4.5っぽさ.
それはピーク時に処理されているなんと3.7 GBの画像データです。これはおそらく最初の画像、クリップボードの予約量、そしておそらく2、3個の変換バッファです。 RAMが8 GB未満のマシンであれば、それで十分です。.
奇妙なことに、Firefoxで同じことをしても画像がコピーされるだけです ファイル 画像ではなく データ (怖い記憶急増なしで).
説明に追加するものがありますか?コメントで音を消す。他の技術に精通したStack Exchangeユーザーからの回答をもっと読みたいですか?こちらのディスカッションスレッドをチェックしてください。.