13Aug

¿Qué hace 'Verify Disc' en realidad después de la grabación para verificar los datos?

click fraud protection

La función 'verificar disco' es ideal para asegurarse de que su disco recién quemado resultó bien, pero ¿cómo funciona exactamente? La publicación SuperUser Q & A de hoy tiene la respuesta a la pregunta de un lector curioso.

Pregunta de hoy &La sesión de respuesta nos llega por cortesía de SuperUser, una subdivisión de Stack Exchange, una agrupación de sitios web Q & A dirigida por la comunidad.

Foto cortesía de cobalt123( Flickr).

El usuario de la Pregunta

SuperUser user1301428 desea saber cómo se verifican los discos después de que se queman:

¿Qué verifica realmente el disco después de la grabación para verificar los datos? Me imagino que es una especie de comparación entre los archivos originales y los archivos que se han grabado en el disco, pero, ¿alguien sabe cómo se hace realmente en un nivel bajo?

Quiero decir, ¿crea un hash del contenido de origen y destino, y luego los compara? Si es así, ¿almacena el hash del contenido grabado en la RAM?¿O lo guarda en un archivo temporal en el disco duro?¿Hay un archivo de registro de lo que está pasando?

instagram viewer

Solo curiosidad por saber exactamente cómo funciona esta característica. Y me refiero a Windows Image Burner.

¿Cómo funciona el proceso de verificación de disco?

La respuesta

SuperUser colaboradores Frank Thomas y Synetech tienen la respuesta para nosotros. Primero, Frank Thomas:

Eche un vistazo a estas páginas de MSDN en la API de Windows para la interfaz IBurnVerification y la enumeración IMAPI_BURN_VERIFICATION_LEVEL.

Para los discos de datos, parece que en el modo rápido no comprueba el disco completo, solo una selección de sectores. Luego se asegura de que la API llame a READ_DISC_INFO y READ_TRACK_INFO para que tenga éxito contra el disco nuevo.

Para la verificación completa, realiza las comprobaciones anteriores, luego realiza una suma de comprobación completa en la última sesión en el nuevo disco contra una suma de comprobación calculada en la secuencia de memoria que se está quemando. Las sumas de comprobación deben almacenarse en RAM, pero probablemente sean valores de corta duración. Tenga en cuenta que la comparación va en contra de la imagen del disco en la RAM, no de los medios de origen en sí, de modo que si los datos de origen no se leen correctamente, se escribirán incorrectamente. La verificación no detectará esto.

Para discos de música, se enfoca en verificar READ_TRACK_INFO y la tabla de contenido del disco, pero no realiza un cálculo de suma de comprobación. No hay un modo de verificación completo para la música.

Seguido por la respuesta de Synetech:

Frank explicó muy bien la verificación específica de Windows. Daré una respuesta más general.

  • ¿Qué hace Verify disk after burning en realidad para verificar los datos?
  • Quiero decir, ¿crea un hash del contenido de origen y destino, y luego los compara? Si es así, ¿almacena el hash del contenido grabado en la RAM?¿O lo guarda en un archivo temporal en el disco duro?¿Hay un archivo de registro de lo que está pasando?

Esa es ciertamente una forma en que se puede implementar una comparación: hash un archivo( con suerte con una baja probabilidad de lectura de algoritmo de colisión suficientemente grande), repetir para el otro y comparar hash. Si así es como se implementa una verificación, entonces podrá ver el LED del variador por un momento, luego el LED del CD / DVD parpadeará por un tiempo.

Otra forma de implementar la verificación es leer un bloque de un archivo, luego el mismo bloque del otro archivo, compararlos, luego repetir hasta que se llegue al final del archivo. En este caso, verá que los LED de las dos unidades se alternan de un lado a otro.

Por supuesto, si el disco duro y la unidad óptica no tienen LED, entonces no será tan obvio. Pero aún se puede ver con algo como ProcessMonitor porque registrará una serie de lecturas de una, luego la otra, ya sea en una sola ráfaga grande o alternar pequeñas ráfagas.

  • Me imagino que es una especie de comparación entre los archivos originales y los archivos que se han grabado en el disco, pero ¿alguien sabe cómo se hace realmente en un nivel bajo?

En realidad, todo lo que hace es limpiar la memoria caché de la unidad para que la función de comparación lea los datos del disco real en lugar de la memoria caché.Obviamente, este es un paso crítico porque si la verificación se realiza desde la memoria caché, entonces no representa lo que está realmente en el disco, por lo que la corrupción puede pasar fácilmente.

Puede ver si se realiza una comparación desde la unidad o desde la memoria caché en la RAM por la rapidez con que ocurre. Si realiza manualmente una comparación simple( es decir, con WinDiff, WinMerge o al mezclarlos con una herramienta de hash), notará que la comparación ocurre mucho más rápido de lo esperado porque está leyendo los archivos de la memoria caché.Debe vaciar el caché para forzarlo a leer del disco actual. Para unidades ópticas( y otros medios extraíbles como memorias USB y tarjetas de memoria), simplemente expulsar la unidad es suficiente para limpiar la memoria caché, pero para discos duros, no es tan simple( aunque generalmente eso no importa porque elnueva copia es la que desea probar).

¿Tiene algo que agregar a la explicación? Suena apagado en los comentarios.¿Desea leer más respuestas de otros usuarios de Stack Exchange expertos en tecnología? Mira el hilo de discusión completo aquí.