Ninguno

Solo disponible en BuenasTareas
  • Páginas : 6 (1368 palabras )
  • Descarga(s) : 0
  • Publicado : 26 de noviembre de 2010
Leer documento completo
Vista previa del texto
¿Qué es una interrupción?
Debido a que el procesador no puede procesar múltiples datos al mismo tiempo (procesa un dato a la vez) el sistema de multitareas es en realidad una alternancia de fragmentos de instrucciones de muchas tareas diferentes. Es posible suspender momentáneamente un programa que se estaba ejecutando mediante una interrupción que dure el tiempo que lleva una rutina deservicios de interrupción. Luego, el programa interrumpido puede continuar ejecutándose. Existen 256 direcciones de interrupción diferentes.
Una interrupción se realiza cuando un componente del hardware de la ordenador requiere la interrupción del hardware. Un ordenador posee muchos periféricos. Generalmente, necesitan utilizar recursos del sistema, aunque sólo sea para comunicarse con éste...
Cuandonecesitan un recurso, envían una petición de interrupción al sistema para que éste les preste atención. Cada periférico cuenta con un número de interrupción llamado IRQ (Interruption request [Petición de interrupción]). Una manera de poder entender este proceso es imaginar a cada periférico tirando de una "cuerda" conectada a una campana para indicarle al ordenador que requiere de su atención.De hecho, la "cuerda" es una línea física que conecta la ranura a la placa madre. Para una ubicación ISA de 8 bits, por ejemplo, hay 8 líneas IRQ (Interruption Request [Petición de Interrupción]) que conectan la ranura ISA de 8 bits a la placa madre, IRQ 0 a IRQ7. Estas IRQ son controladas por un "controlador de interrupciones" que verifica qué IRQ tiene mayor prioridad. Para las ranuras de 16bits, se agregan las IRQ que van desde la 8 a la 15, las cuales requieren de un segundo controlador de interrupciones. La conexión entre los dos grupos de interrupciones se realiza por medio de la IRQ 2 que está conectada a la IRQ 9 (denominada "cascada"). El término "cascada" se puede pensar como una manera de "insertar" las IRQ del 8 al 15 entre las IRQ del 1 al 3:

Dado que la prioridad seotorga a medida que va aumentando el orden en el número de IRQ, y debido a que las IRQ del 8 al 15 se insertan entre las IRQ del 1 al 3, el orden de prioridad es el siguiente:
0 > 1 > 8 > 9 > 10 > 11 > 12 > 13 > 14 > 15 > 3 > 4 > 5 > 6 > 7
¿Qué es un DMA?
Los periféricos con frecuencia necesitan contar con "memoria prestada" del sistema, la cual utilizaráncomo búfer. Este búfer será un área de almacenamiento temporal que permite que se escriban rápidamente datos de entrada y salida.
Para afrontar esta necesidad, se definió un canal de acceso directo a la memoria denominado DMA (Direct Memory Access por sus siglas en inglés).
El canal DMA es un acceso a una ubicación RAM en el ordenador, al que una "Dirección de Inicio RAM" y una "Dirección deFin" hacen referencia. Este método permite que un periférico utilice canales especiales que le den acceso directo a la memoria, sin involucrar al microprocesador. Esto permite que el microprocesador se libere de la necesidad de hacer este trabajo.
Un ordenador tipo PC cuenta con 8 canales DMA. Los primeros cuatro canales DMA poseen 8 bits mientras que los DMA que van del cuarto al séptimo poseen16 bits.
Normalmente, los canales DMA se asignan de la siguiente manera:
* DMA0 - libre
* DMA1 - (tarjeta de sonido)/ libre
* DMA2 - controlador de disquetes
* DMA3 - puerto paralelo (puerto de la impresora)
* DMA4 - controlador del acceso directo a la memoria
(redirigido a DMA0)
* DMA5 - (tarjeta de sonido)/ libre
* DMA6 - (SCSI)/ libre
* DMA7 - disponibleDirecciones de base
Debido a que a veces los periféricos necesitan intercambiar información con el sistema, se les asignan direcciones de memoria para enviar y recibir datos. Estas direcciones se denominan "direcciones de base" (los siguientes términos también se usan algunas veces: "puertos de entrada/salida", "puertos de E/S", "dirección E/S", "direcciones de puertos de E/S", "puertos de...
tracking img