¿Cómo funciona copiar y pegar para archivos grandes?

¿Cómo funciona copiar y pegar para archivos grandes?

Tengo curiosidad por saber cómo las computadoras ejecutan "copiar" y "pegar" carpetas grandes. He leído que copiar y pegar texto entre diferentes procesos o el mismo proceso se logra guardando el contenido en la RAM y luego copiándolo desde allí a la ubicación destinada.

Entonces, ¿cómo fluyen las instrucciones de la computadora al copiar una carpeta de, digamos, 10 GB en una máquina que tiene 2 GB de RAM y 4 GB de memoria virtual como máximo? Esta copia de archivo es diferente de la copia de texto.

Creo que es una pregunta básica, pero se agradecen todos los enlaces o ideas.

Respuesta1

El portapapeles no tiene que contener el archivo completo. Cuando copia un archivo (o archivos), solo su ruta se coloca en el portapapeles. También está marcado como un archivo: el portapapeles realiza un seguimiento del tipo de contenido, como texto sin formato, texto formateado, archivo, imagen, texto de Word, etc. Es por eso que no puedes, por ejemplo, abrir una imagen en Paint, presionar Ctrl+ Cy luego péguelo en un directorio, porque ha copiado una imagen y los directorios contienen archivos, no imágenes.

Cuando pega un contenido compatible (es decir, archivos y/o carpetas) en un directorio, alguna aplicación se encargará de la operación de copiar/mover. Por defecto será el explorerproceso (el mismo que es responsable de mostrar el menú Inicio y todas las ventanas del explorador de archivos), pero algunas aplicaciones pueden reemplazarlo. [1]

Lo que suceda ahora depende de lo que estés haciendo:

  • Si eresmover un archivo a otro directorio en la misma partición, no se moverá físicamente en el disco, solo se actualizará su ruta [2] .
  • Si eresmover un archivo a otra partición, se dividirá en fragmentos del mismo tamaño [3] y se copiarán uno por uno, luego se eliminará el archivo original. Los fragmentos demasiado pequeños ralentizarán el proceso y los fragmentos demasiado grandes consumirán más memoria.
  • Exactamente lo mismo sucederá cuando estéscopiando un archivo(no importa si es la misma partición o no), excepto que el archivo original no se eliminará.
  • Escribir en un almacenamiento externo(como las unidades USB) no funciona exactamente así [4] y no estoy seguro de qué sucede exactamente entonces. Supongo que no es un proceso continuo fragmento por fragmento, sino que sucede algo más cada pocos fragmentos (¿relacionado con el búfer?). Si alguien sabe algo sobre esto, no dude en editarlo.

Anotaciones:

[1]. Por ejemploTeraCopy, que es un buen reemplazo avanzado de la ventana de copia.

[2]. La estructura física de archivos en el disco duro no se parece a la estructura de directorios: es plana y toda la información jerárquica se almacena en una parte separada de la partición. Cómo se hace exactamente depende del sistema de archivos (por ejemplo, consulteMFT). Ese bloque de información contiene toda la información sobre las ubicaciones de los archivos, etc. Por lo tanto, cuando mueve un archivo dentro de una partición, no hay necesidad de moverlo físicamente; solo se debe actualizar la información de la ruta.

[3]. No literalmente, nada se dividirá en el disco duro. El programa que maneja el proceso de copia funcionará como si hubiera varios fragmentos separados, pero el archivo original permanecerá intacto. Es puramente virtual.

[4]. Puedes verlo cuando usas TeraCopy: el "progreso previsto" no funciona como en las unidades fijas, sino que el "progreso real" lo alcanza, luego el "progreso previsto" se expande y así sucesivamente. La ventana de copia predeterminada del Explorador también tiene problemas con el USB.

información relacionada