6Sep
Às vezes, algo realmente estranho acontece ao usar nossos computadores que não faz sentido. .. como copiar uma imagem simples para a área de transferência e o computador congelando por causa disso. Uma imagem é uma imagem, certo? A publicação SuperUser de hoje tem a resposta para o dilema do leitor perplexo.
Pergunta de hoje e amp;A sessão de atendimento chega a cortesia do SuperUser - uma subdivisão do Stack Exchange, um agrupamento comunitário de sites Q & A.
Imagem original cortesia da Wikimedia.
O questionário
SuperUser Joban Dhillon quer saber por que copiar uma imagem para a área de transferência em seu computador congela:
Eu estava mexendo com algumas imagens de mapa de altura e encontrou esta:
( http: //upload.wikimedia.org/wikipedia/commons/1/15/ Srtm_ramp2.world.21600 × 10800.jpg )
A imagem tem 21.600 * 10.800 pixels de tamanho. Quando eu clicar com o botão direito do mouse e selecionar "Copiar imagem" no meu navegador( eu estou usando o Google Chrome), ele desacelera meu computador até congelar. Depois disso, devo reiniciar. Estou curioso sobre o porquê isso acontece. Eu presumo que é o tamanho da imagem, embora seja apenas cerca de 6 MB quando salvo no meu computador. Também estou usando o Windows 8.1
Por que uma imagem simples congelaria o computador do Joban depois de copiá-lo para a área de transferência?
A resposta
O contribuinte do SuperUser Mokubai tem a resposta para nós:
"Copiar imagem" está copiando os dados de imagem em bruto, em vez do arquivo de imagem em si, para a área de transferência.
Os dados da imagem em bruto serão 21.600 x 10.800 x 3( imagem de 24 bits) = 699.840.000 bytes de dados. Isso é aproximadamente 700 MB de dados que seu navegador está tentando copiar para a área de transferência.
JPEG comprime os dados brutos usando um algoritmo com perdas e pode obter uma boa compressão. Assim, o arquivo comprimido é apenas de 6 MB.
O motivo pelo qual o seu computador está lento é que provavelmente está enchendo a memória com pelo menos os 700 MB de dados de imagem que seu navegador está usando para mostrar a imagem, outros 700 MB( juntamente com qualquer sobrecarga na área de transferência) paraarmazená-lo na área de transferência e uma quantidade de energia de processamento não insignificante para converter a imagem em um formato que pode ser armazenado na área de transferência.
As possibilidades são que se você tiver menos de 4 GB de RAM física, então essas cópias dos dados da imagem estão forçando seu computador a exibir a memória para o arquivo de troca na tentativa de cumprir as duas demandas de memória ao mesmo tempo. Isso fará com que os programas e o acesso ao disco sejam lentos à medida que usam o disco e tentam usar os dados que podem ter sido pagas.
Em resumo: Não use a prancheta para imagens enormes, a menos que você tenha muita memória e um pouco de tempo de sobra.
Como gráficos bonitos? Isso é o que acontece quando eu carrego essa imagem no Google Chrome e, em seguida, copie-a para a área de transferência na minha máquina com 12 GB de RAM:
. Começa no ponto inferior usando 2,8 GB de RAM, carregando a imagem para 3,6GB( aproximadamente 700 MB) e, em seguida, copiá-lo para os picos da área de transferência, até lá em 6.3 GB de RAM, antes de se ajustar novamente no 4.5-ish que você esperaria ver por um programa e duas cópias de uma imagem bastante grande.
Isso é um enorme 3,7 GB de dados de imagem que estão sendo trabalhados no pico, que provavelmente é a imagem inicial, uma quantidade reservada para a área de transferência e talvez um par de buffers de conversão. Isso é suficiente para levar qualquer máquina com menos de 8 GB de RAM aos joelhos.
Estranhamente, fazer o mesmo no Firefox apenas copia a imagem arquivo em vez da imagem dados ( sem o aumento de memória assustador).
Tem alguma coisa a adicionar à explicação? Som desligado nos comentários. Deseja ler mais respostas de outros usuários Tech-savvy Stack Exchange? Confira o tópico de discussão completo aqui.