CONFIGURACION de IRQŽs
Damos por concluido este manual explicando que es una IRQ y porque debemos de tener en cuenta las interrupciones de nuestro sistema a la hora de optimizar nuestra maquina.
Unos de los motivos fdtales de falta de coherencia en vuestros FrameRates enmascara sin duda un problema de interrupciones. En las siguientes lineas vamos a dar una explicacion clara y breve del asunto. Es VITAL por tanto una configuracion correcta.
*IRQs: (Interruption Request, o Peticiones de Interrupcion)
Si bien dejamos claro en anteriores apartados que para explicar el Overclock hay que dejar claro previamente el termino "clock". Aqui para dejar claro lo que es una peticion de interrupcion, tenemos que explicar previamente que es una Interrupcion:
Pues bien, como su propio nombre indica, y esto es literal, una interrupcion es cuando un periferico manda una señal (generalmente al microprocesador) para que deje de realizar una funcion e inicie otra. Por tanto "interrumpe" el funcionamiento del microprocesador.
Asi una vez explicado lo que es un interruptor, es sencillo entender que un IRQ (Peticion de Interrupcion) es una señal usada para que un periferico solicite una interrupcion al micro para conmutar una tarea por otra.
Los interruptores por lo tanto juegan un papel decisivo en los procesos I/O del micro, jugando un papel decisivo en la continuidad Perifericos-(IRQs)-Procesador
*Cuando discutimos acerca de la configuracion de dispositivos tenemos que tener claros 3 conceptos:
-IRQŽs : Peticiones de Interrupcion
-DMAŽs : Accesos Directos a Memoria
-I/OŽs : Direccionamientos de Memoria de Entrada/Salida; tb llamamos E/S.
Las IRQŽs ó Peticiones de Interrupcion ó Interrupciones Hardware, por tanto, son lineas de circuiteria por los que "viaja" una señal entre un dispositivo y el micro (gralmente). Estos circuitos son utilizados para solicitar al micro su "atencion" momentanea a su peticion.
Asi que cuando un dispositivo requiere la "atencion" del micro manda una señal por su IRQ correspondiente. El microprocesador responde a la señal, conmuntando su anterior labor (cualesquiera) y prestando atencion a este dispositivo concreto.
Pues bien, aunque todos estamos muy convencidos de las capacidades multitarea de nuestros microprocesadores, la verdad es bien diferente; Los Microprocesadores actuales (hasta los mas rapidos) solo pueden ejecutar en aspectos practicos 1 sola tarea al mismo tiempo. Lo que entendemos por multitarea es una conmutacion MUY rapida de tareas (varias decenas de miles por unidad de tiempo), siendo para nosotros imperceptibles y dandonos una sensacion de continuo total.
Pues bien, pensareis, que tiene que ver esto con las interrupciones o lo que es mas peliagudo "Los Conflictos de Interrupcion".
Pues bien, podemos dividir a los interruptores en 2 tipos:
*Maskable Interruptors: (MI)
Aquellos que la CPU puede "ignorar temporalmente" hasta que termine su tarea actual.
*Non Maskable Interruptors: (NMI)
Aquellos que la CPU NO puede "ignorar" ni temporalmente.
[Desgraciadamente NO podemos configurar nosotros estas interrupciones, ya que asi podriamos asignar mas o menos prioridad a dtdas interrupciones [VGAŽs en nuestro caso ].
Visto lo que es una interrupcion, y perdonareis mis "similes" algo toscos, vamos a ver las tipicas interrupciones en un sistema como el nuestro.
Nuestras maquinas tienen un numero limitado de IRQ`s (15 en concreto). De esos 15 hay varios de ellos que no se pueden compartir ni usar para otros propositos. Los veremos marcados con un (*)
IRQ 0 : Reloj del Sistema
IRQ 1 : Controlador Teclado
IRQ 2 : [Cascada IRQ 9]
IRQ 3 : COM2*
IRQ 4 : COM1*
IRQ 5 : Sonido, MoDem, LPT2
IRQ 6 : Floppy
IRQ 7 : LPT1*
IRQ 8 : RTC
IRQ 9 : NICŽs, Sonido, MoDem*
IRQ 10 : SCSI, Sonido, USB*
IRQ 11 : NICŽs, VGAŽs, SCSI*
IRQ 12 : PS/2* [Disponible si no tenemos dispositivos PS/2]
IRQ 13 : NPU
IRQ 14 : IDE Primario
IRQ 15 : IDE Secundario
Os preguntareis que es eso de Cascada IRQ9 ; Pues bien, en los primeros diseños de Interrupciones, el Controlador de Interrupciones (IRQ controller, que reside en el Southbridge y debe tener siempre sus propios drivers para mejorar el soporte nativo del S.O), solo disponia de 8 lineas de interrupcion y 1 sola linea hacia la CPU.
Pronto se vio que eran insuficientes. Asi que se necesitaron 2 chips controladores que se dispusieron en cascada (al igual que habeis visto switchs en cascada en las LAN-Parties). Asi conseguimos via IRQ2 hasta 15 lineas de interrupcion y 2 de salida hacia la CPU.
Para controlar mas dispositivos ó perifericos, como prefirais decirlo, esta controladora de IRQŽs evoluciono hasta la actual Controladora de Interrupciones Programable. El gran puntazo de esta cuestion es que esos numeros de IRQŽs (tablero) ahora son ajustados por la BIOS Y/O S.O de forma dinámica y nos permite una configuracion mas elastica que nos permite hacer cambios en determinadas interrupciones. El Standar PCI tambien implemento el Concepto de IRQ Sharing (Compartir Interrupciones) y por lo tanto ya no nos tenemos que ceñir a los 15 IRQŽs como estrictamente os he comentado arriba.
La Arquitectura PCI (IRQ Sharing + Controlador Programable de Interrupciones) nos propone en su diseño el uso de 4 LINEAS de INTERRUPCION que estan enlazadas con 4 lineas que van enlazadas al controlador programable de interrupciones (situado en el Southbridge de nuestros chipsets).
Que sepais que la VGA reside en el INT.A y el ACPI en el INT.B, es decir la solucion dada para aumentar la prioridad de la VGA ha sido asignarle para ella solita 1 canal de la controladora programable de interrupciones.
Para acabar esta seccion, tranquilizaros al respecto YA que NO PASA NADA por tener IRQŽs compartidas en vuestra maquina, recordad que las especificaciones del PCI 2.1 y 2.2 nos permiten IRQ Sharing sin el mayor problema. Cuando arranqueis vuestra maquina y veais en el listado PCI de todos los numeros de Interrupcion disponibles, vereis como el IRQ 10 y 11 suelen estar compartidos.
¿COMO RESOLVER CONFLICTOS DE INTERRUPCION?
Hacia antes mencion que una tasa inestable de FSP suele llevar oculto un problema de IRQŽs.
Mi experiencia me lo ha demostrado, maquinas que tendrian que ir sobradas generando un numero de FSP considerable, suelen tener dramaticos "bajones" como vosotros soleis llamarlos. Es mas elegante desde luego denominarlos "Inconsistencias en los FPS". Pues bien veamos como podemos arreglar la situacion.
*Para empezar en BIOS: PnP OS: NO
*Deshabilitad aquellas cosas que no utiliceis. recordad que os lo he comentado alguna vez; Pues bien el proposito es liberar IRQŽs. Si deshabilitais COM1 y COM2 en BIOS tendreis un par de IRQŽs libres. Deshabilitad los canales IDE que no utiliceis
***MUY IMPORTANTE: Practicamente ninguna VGA soporta IRQ Sharing asi que no pongais nunca ningun dispositivo en PCI 1 ni PCI 2 (Letras que deberian quedarse grabadas con fuego en esta GUIA.
Tb es muy importante que las tarjetas de Sonido NO compartan interrupcion con la NIC[RED]. Usuarios de SoundBlaster Live! daros por aludidos, cambiad de SLOT PCI vuestra Live! hasta que no entre en conflicto con la IRQ de vuestra tarjeta de RED. Anda que no he resuelto IO casos asi...
Asi que ojo ya que gralmente: PCI2-PCI3-ACPI comparten IRQ. PCI 5 y controladoras RAID tb comparten, PCI 4-PCI 6 y USB tb comparten.
Es por esta razon por la q IO prefiero usa el PS/2 para el raton, ya que siempre que puedo deshabilito el USB. OJO que no os estoy diciendo que lo deshabiliteis, solo aquellas personas con dramaticas inconsistencias teneis aqui una serie de directrices basadas en mi experiencia personal.