Principios eticos que ayudan el ejercicio de las profesiones
¿Cuántas veces nos hemos encontrado con que un fichero se niega a cargar, tras repetirnos incesantemente nuestro ordenador un mensaje del estilo de "Error leyendo Backup: (R)epetir (I)gnorar (P)ánico"?
Este error tan poco deseado es común a cualquier sistema de almacenamiento: es imposible crear un sistema fiable al 100%. Ni siquiera las RAMs se salvan: en el ambiente haymuchos tipos de radiación capaces de alterar el bit preciso para que nuestro programa cuelgue irremisiblemente el ordenador. Si bien la probabilidad de que ocurra es bastante baja para una sola celda de memoria (del orden de varios millones de años), cuando agrupamos varios millones de ellas para formar los tan comunes 4 megas, dicha probabilidad sube, hasta situarse en unos 20 días. Esta es larazón de que los grandes ordenadores incluyan un código de control en sus memorias.
El problema se agrava cuando no es solo nuestra paciencia la que depende de esos datos, sino, por ejemplo, los miles de millones de dolares invertidos en una misión espacial (la misión VOYAGER a los planetas exteriores), la seguridad económica de un pais (transaccion electrónica de capital entre bancos), la salud deuna persona (transferencia electrónica de partes clínicos entre hospitales) o la reputación de un sistema de grabación de música revolucionario (el Compact Disc). En estos casos, un error en un solo bit puede dar al traste con todo, por lo que se hace necesario el poder detectarlos y corregirlos.
Se han ideado multitud de sistemas de detección y corrección de errores. Si bien en general son muydistintos entre sí, todos se basan en añadir información extra a los datos originales, de tal forma que permitan detectar si han sido o no dañados, y recuperar la información original.
El sistema más simple de detección de errores es el llamado Checksum, o suma de comprobación. Se basa simplemente en añadir al final del bloque de datos la suma de todos ellos. El receptor debe comprobar que estedato se corresponde efectivamente con la suma de los datos recibidos. De no ser así, es que ha ocurrido un error, por lo que debe pedir al transmisor que repita el bloque de datos.
Normalmente, este sistema se aplica a pequeñas porciones del bloque total a transmitir; por ejemplo, cada 256 bytes o 1 Kbyte. De este modo, si sucede un error, la cantidad de datos a repetir es menor.
Un segundosistema es el control de paridad. Se basa en añadir a cada porción del bloque un bit extra, el cual tomará el valor adecuado de forma que el número de bits a cero o a uno de la porción sea siempre par, o siempre impar, según sea el tipo de paridad escogido.
Este sistema se usa, por ejemplo, en las memorias de los PCs compatibles, para detectar si algún bit ha sido alterado. Sin embargo, el uso máscomún se le da en la transmisión de textos ASCII vía MODEM. Dado que el ASCII usa solo 7 bits, se suele aprovechar el octavo para fijar la paridad del byte que se transmite. De ese modo se puede saber si algún carácter ha resultado alterado. En caso de trabajar con textos en EBDIC, que son de ocho bits por carácter, es necesario usar un bit extra para la paridad, por lo que no se suele aplicar.
Estosdos métodos, si bien son de simple aplicación, tienen el inconveniente de que necesitan que les sea retransmitida la información erronea, con el consiguiente aumento de tiempo en la transmisión, así como la mayor complejidad del protocolo de comunicación.
Si bien con un MODEM no es muy problematico emplear unas centésimas de segundo para pedir de nuevo el bloque, en otros casos no se puedepermitir tal pérdida de tiempo. Tal es el caso de, por ejemplo, las sondas espaciales destinadas a otros planetas del sistema solar, en las que una señal puede tardar en llegar al ingenio de entre 1,2 segundos (Luna) hasta más de cuatro horas (Neptuno y Plutón). En estos casos, además, debido a la naturaleza dinámica de la información a enviar, cuando llegue la señal de pedido, puede ser ya...
Regístrate para leer el documento completo.