lunes, 2 de agosto de 2010

Problemas en la Pc


El dialogo entre la UC y los Perifericos.


Para dialogar con sus periféricos, la unidad central (UC) apela a varios, mas exactamente a tres, que es importante conocer. En efecto, los procesos de intercambio con los periféricos pueden ser el origen de conflictos de software que pueden parecer, ante ojos profanos, desperfectos del hardware. Estas tres estrategias de intercambios entre los periféricos y el mundo externo son:

  1. Las interrupciones. El intercambio puede tener lugar de manera aleatoria, en cualquier momento, entre un periférico que lo solicita y la computadora.
  2. Los intercambios programados. El programa es el que ordena el acceso a un elemento determinado.
  3. EL DMA, o acceso directo a la memoria (“Direct Memory Access”). Este modo de intercambio privilegia la velocidad.


Las interrupciones, especialmente en la fuente de conflictos


Las interrupciones constituyen la fuente principal de los conflictos de software que pueden encontrarse. Por lo tanto, es importante comprender muy bien sus principios y su funcionamiento.

Las interrupciones para los novatos


El microprocesador es un personaje muy ocupado. No hay que molestarlo constantemente, sobre todo cuando está ejecutando un programa, por ejemplo, calculando cuanto es 2+2. Sin embargo, en un momento un momento u otro, usted deseara ejecutar un nuevo comando escribiéndolo en el teclado. En ese caso, el teclado es el que va a encargar de alertar al microprocesador.

Para hacerlo, el teclado emite una señal eléctrica hacia el microprocesador. Este ultimo la recibe y luego, como trabajador ordenado que es, termina la mini-operación que esta realizando. Ordena correctamente en la memoria todo lo relativo al programa que esta ejecutando para volver a encontrarlo luego en buen estado. Hecho esto, llama a un programa especial llamado el programa “administrador del teclado” y le avisa al teclado: “¡OK, ya puedes empezar!”.

El teclado trasmite sus informaciones al microprocesador. Éste último las adquiere y las “procesa”, es decir que ejecuta las órdenes que usted le ha dado. Una vez que termina, el microprocesador abandona esta secuencia y vuelve a llamar al programa precedente, cuyos elementos había dejado ordenadas la memoria. Lo toma muy exactamente en el punto en que lo había abandonado y prosigue su ejecución.

El conjunto de este proceso es lo que se denomina interrupción. Como este tipo de interrupción es desencadenada por el hardware, se dice también que se trata de una interrupción de hardware.

IRQ de Hardware


De manera más general, cuando un periférico tiene algo que decir al microprocesador, le envía antes un mensaje pidiéndole que tenga a bien interrumpir su trabajo para recibir las informaciones que tiene que pasarle. Esto es lo que se llama un pedido de interrupción, o interrupt request en inglés, IRQ en forma abreviada.

Cada pedido de interrupción es una señal que pasa por una línea específica. La cantidad de línea eléctrica es limitada, por lo cual la cantidad de pedidos de interrupción posibles también lo es.

De modo que se dispone de 15 interrupciones de hardware posibles en las máquinas de tipo AT comunes.

Hablamos de IRQ numero 1, o de IRQ1, de IRQ2, etc. Algunas asignaciones comunes de IRQ han sido prácticamente normalizadas; por ejemplo, sabemos que el IRQ7 esta reservado al puerto paralelo 1 es decir al puerto de la impresora.

Problemas de direcciones


La cantidad de interrupciones no es el único elemento capaz de producir un conflicto a nivel del Software. A este hay que sumarle otros dos tipos de problemas de direcciones.

Direcciones de puertos de Entrada-Salida


Cada puerto de una máquina dispone de una dirección o a veces o de varias direcciones, que le son propias. Pueden tratarse de puertos paralelos, seriales, de puerto que comanda el parlante, el reloj, el Mouse, los discos, etc.

Estas direcciones están por lo general codificadas en hexadecimal. El valor absoluto decimal correspondiente no presenta interés, y no perderá nada si lo desconoce. Por ejemplo, el primer puerto con serie COM1 tiene por lo general la dirección 3F8.

Si usted es nuevo en esto, debe saber que en hexadecimal se utilizan las cifras de 0 a 9 para codificas los números y además las 6 primeras letras del alfabeto en mayúscula, de la A a la F para codificar los valores de 10 a 15. Si además hay una H mayúscula o minúscula es simplemente para señalar que se trata de hexadecimal.

Esta forma de tratar la dirección se realiza por medio de instrucciones especiales del microprocesador y en cadenas de 16 bits únicamente, lo que permite enviar 64k de entrada-salida. Las direcciones van de 0000 a FFFF en hexadecimal.

Así, y con la misma interrupción 7, los puertos paralelos podrían tener como direcciones:

LPT1: 0378-037A o 03B8-03BF

LPT2: 0378-027A o 0378-027F, etc.


Esto explica algunas incompatibilidades que pueden encontrarse entre dos tarjetas soporte de puertos de impresoras. Se trata de un fenómeno en el que solo se piensa --- ¡lastima! --- en último término, después de haber reemplazado lo necesario para que todo vuelva a funcionar.

Con mucha frecuencia, esas direcciones deberían poder modificarse gracias a jumpers o interruptores situados en la tarjeta de los puertos de acceso.

Galeria de Fotos

Roy Tanck's Flickr Widget requires Flash Player 9 or better.

Get this widget at roytanck.com