Você está na página 1de 29

UNIVERSIDAD NACIONAL SAN AGUSTIN

FACULTAD DE INGENIERIA DE PRODUCCION Y SERVICIOS

ESCUELA PROFESIONAL DE INGENIERIA ELECTRONICA

ARQUITECTURA DE COMPUTADORAS LABORATORIO

Laboratorio 7: CMOS PROGRAMAS RESIDENTES Y MANEJO DE INTERRUPCIONES.


CHOQUE FERNANDEZ, Manuel Alejandro LAUCATA FUENTES, Rodrigo Alfonso 20090956 20052990 ____________ ____________

Arequipa, 11 de Junio de 2013

NDICE
1 PROGRAMAS RESIDENTES TIPEADOS DE LOS TEXTOS ESPECIALIZADOS EN ALGN LENGUAJE PEQUEO PORTABLE (ASEMBLER, BASIC, C STD, PASCAL, ETC) ................................. 3 1.1 Programa Residente en Memoria ................................................................................. 3 1.2 PROGRAMAS: ................................................................................................................ 3 1.2.1 1 Primer Programa............................................................................................... 3 1.2.2 2 Segundo Programa ........................................................................................... 4 2 Direccin base del reloj de tiempo real de la PC y realizar un programa para poder tener acceso a dicho reloj en lectura y escritura. ................................................................................... 5 2.1 EL RELOJ DE TIEMPO REAL ............................................................................................ 5 2.2 LAS FUNCIONES DE RELOJ ............................................................................................. 7 2.3 REGISTROS DE ESTADO ................................................................................................. 8 2.3.1 REGISTRO A ........................................................................................................... 8 2.3.2 REGISTRO B............................................................................................................ 8 2.3.3 REGISTRO C............................................................................................................ 8 2.3.4 REGISTRO D ........................................................................................................... 9 2.3.5 PROGRAMA DE RELOJ RESIDENTE EN TIEMPO REAL ............................................ 9 3 PROGRAMAR ALARMAS DE ACUERDO AL USO DEL RELOJ DE TIEMPO REAL DE LA PC. TRAER PROGRAMA DE ALARMAS................................................................................................ 13 4 INTERRUPCIONES POR HARDWARE USADAS EN LA PC CUALES ESTN OCUPADAS Y CUALES DISPONIBLES. ................................................................................................................. 13 4.1 INTERRUPCIONES INTERNAS DE HARDWARE: ............................................................ 13 4.2 INTERRUPCIONES EXTERNAS DE HARDWARE: ............................................................ 13 4.3 INTERRUPCIONES DE HARDWARE:.............................................................................. 13 5 DESCRIBIR EL PROCEDIMIENTO PARA ACCEDER A UNA INTERRUPCIN. ........................... 14 5.1 HARDWARE DE LOS IRQ: ............................................................................................. 14 5.2 ASIGNACIN DE LOS IRQ PARA EQUIPOS AT: ............................................................. 15 6 INTERRUPCIONES POR SOFTWARE USADAS EN LA PC CUALES ESTN OCUPADAS Y CUALES DISPONIBLES................................................................................................................................ 17 6.1 INTERRUPCIONES DE SOFTWARE: ............................................................................... 17 7 DISEO DE UN SISTEMA DE FORMA QUE PODAMOS PROBAR LAS INTERRUPCIONES DE AMBOS TIPOS . TRAER PROGRAMA PROBADO FUENTE Y COMPILADO ..................................... 18 8 EL SETUP DE LA PC, LAS OPCIONES DE CONFIGURACIN Y LOS PARMETROS. ................ 24 8.1 BIOS SETUP .................................................................................................................. 24 8.2 STANDARD CMOS SETUP............................................................................................. 25 8.3 ADVANCED CMOS SETUP ............................................................................................ 26 8.4 ADVANCED CHIPSET SETUP ......................................................................................... 26 8.5 POWER MANAGEMENT SETUP ................................................................................... 27 9 BIBLIOGRAFIA ...................................................................................................................... 29

CMOS PROGRAMAS RESIDENTES Y MANEJO DE INTERRUPCIONES. 1 PROGRAMAS RESIDENTES TIPEADOS DE LOS TEXTOS ESPECIALIZADOS EN ALGN LENGUAJE PEQUEO PORTABLE (ASEMBLER, BASIC, C STD, PASCAL, ETC)
1.1 Programa Residente en Memoria
Un programa residente o TSR ( Terminate and Stay Resident )es un programa normal y corriente que, tras ser cargado, permanece parcial o totalmente en memoria al finalizar su ejecucin. Ello es posible utilizando una funcin especfica del sistema operativo. Los programas residentes pueden ser activados mediante una combinacin de teclas o bien actuar con cierta periodicidad, asociados a la interrupcin del temporizador. Tambin pueden interceptar funciones del DOS o de la BIOS para cambiar o modificar su funcionamiento. Al final, casi siempre resulta totalmente inevitable desviar alguna interrupcin hacia una nueva rutina que la gestione, con objeto de activar el programa residente

1.2 PROGRAMAS:
1.2.1 1 Primer Programa

Este primer programa en C colocar de manera perpetua mi nombre Jose Choquehuaita haciendo un pseudoscroll horizontal en la esquina superior derecha.
#include <dos.h> #include <conio.h> extern unsigned _heaplen=1024; extern unsigned _stklen=512; void interrupt (*OldTic)(void); void KillTic(void); void interrupt Tic() { unsigned int (far *pantalla)[80]; static int prueba=0; int i; static char cad[24] = "JOSE CHOQUEHUAITA"; pantalla = MK_FP(0xb800,0); for(i=55;i<=79;i++){ pantalla[0][i]=cad[prueba%=24] + prueba++;} prueba++;

0x7900;

if ((peekb(0x40,0x17) & 12) == 12) KillTic(); OldTic(); } void AliveTic(void)

{ OldTic = getvect (0x1c); setvect (0x1c,Tic); keep(0, (_SS+(_SP/16) - _psp)); } void KillTic(void) { setvect (0x1c,OldTic); freemem(peek(_psp,44)); freemem(_psp); } void main(void) { clrscr(); cprintf(" Pulsa <CTRL> + <ALT> para desistalar"); AliveTic(); }

1.2.2

2 Segundo Programa

Este programa en C colocar a los mandos de un teclado con sonidos, ya que asocia a cada tecla del teclado un sonido diferente mientras las pulsemos.

#include <dos.h> #include <stdio.h> #include <stdlib.h> #define vec_int 0x09 /* direccion del vector de interrupciones */

/* DECLARACION DE LAS FUNCIONES A USAR */ int esta (void); /* LA INTERRUPCION YA ESTA EN MEMORIA */ void interrupt Madre (void); /* INTERRUPCION A METER EN EL VECTOR DE INT.*/ void interrupt (*almacen)(void); /* DONDE ALMACENO EL VECTOR INTERRUPCIONES*/ void KillMadre (void); /* DESINSTALO LA INTERRUPCION METIDA EN EL VECTOR */

DE

void main(void) { if (esta ()){ printf ("\nEl programa ya est instalado.\n"); printf ("\nNo permite m s instalaciones.... NiCe 2 MEET U by IcEmAn\n\n"); printf ("\nPara desinstalar pulsar [CTRL]+[ALT]\n"); exit (0); } almacen = getvect (vec_int); /* guardo la direccion del vector de inter.*/ setvect (vec_int,&Madre); /* meto la rutina madre en el vector de inter.*/ printf("\nTeclado musical by Jos Luis Navarro Simn....(IcEmAn)\n"); printf("\nPara salir pulsar simult neamente [CTRL]+[ALT]\n"); keep (0,(_SS+(_SP/16) - _psp)); /* lo mantengo en memoria residente */ } int esta (void) { int dominio; dominio=peek(0,vec_int*4); /*Abarca todo el vector de interrupciones*/ return (dominio==FP_OFF(&Madre)); /* operacion logica, verdadera si en*/ /* el vector de interrupciones esta*/

/* madre */ void KillMadre (void) { nosound (); /* quitas el sonido que esta activo*/ setvect (vec_int,almacen); /* mete la direccion donde apunta el vector de*/ /* interrupciones en el vector de interrupciones*/ /* y asi se anula la rutina que haba en memoria*/ freemem(peek(_psp,44));/* Desplazamos _psp a la posicion 44 que es donde se guarda la direccion del segmento de entorno y liberamos la memoria */ freemem(_psp); } void interrupt Madre (void) { sound (inportb(0x60)*200); /* lees del puerto de teclado, y el entero */ /* resultante lo multiplicas para que salga*/ /* un sonido audible */ if ((peekb(0x40,0x17) & 12)==12) /* si pulsas control alt */ KillMadre(); almacen(); }

2 Direccin base del reloj de tiempo real de la PC y realizar un programa para poder tener acceso a dicho reloj en lectura y escritura.
2.1 EL RELOJ DE TIEMPO REAL
Un chip muy importante es el reloj de tiempo real (Real-Time-Clokc, RTC). Se trata de un Dallas 1287 o similar. Est mantenida por bateras y trabaja en un modo de baja energa que lo protege de prdidas d datos durante la conexin o desconexin del equipo. En el RAM RTC de 64 bytes, a veces tambin llamada CMOS-RAM, se guarda la configuracin del sistema. Adems el chip nos ofrece un reloj, un calendario, as como la posibilidad de una interrupcin peridica programable. La actualizacin del tiempo y el calendario se realiza en forma cclica. El contador de segundo se incrementa en uno cada segundo, siempre que el RTC se encuentre en el modo de funcionamiento normal. Si se realiza un rebase, los dems registros afectados tambin se incrementan. Durante este rebase, los bytes 0 hasta 9 de la de la RAM RTC no estn disponibles para la CPU. La velocidad del ciclo de actualizacin se ajusta mediante lo bits divisores 2 hasta 0 registro de estado A, as como el SET-Bit 7 del registro de estado B. EL acceso a la RAM RTC es muy sencillo. Primero se ha de enviar al port 70h el nmero de indice del registro deseado. Despus se puede escribir o leer los datos en el port 71h. Todos los registros de lectura y escritura, excepto los siguientes se pueden leer.

Registros de estado C y D Bits 7 del registro de estado A Bits 7 del byte de segundos (Index 00h) Los primeros 14 bytes de la RAM RTC se emplean para el reloj y los cuatro registros de estado. Los restantes 50 Bytes sirven para la configuracin del sistema. La ocupacin exacta de los diferentes bytes se pueden ver en la siguiente tabla. 00h 01h 02h 03h 04h 05h 06h 07h 08h 09h Segundos Segundos Alarma Minutos Minutos Alarma Horas Horas Alarma Da de la semana Da del mes Mes Ao 20h 21h 22h 23h 24h 25h 26h 27h 28h 29h HD 1 Nmero de cilindros Low HD 1 Nmero de cilindros High Cabezales HD 1 HD 1 inicio Pre-Compensation Low HD 1 inicio Pre-compensation High HD 1 Low landing zone HD 1 High landing zone HD 1 sectores Opciones 1 Reservado

0Ah Estado A 0Bh Estado B 0Ch Estado C

2Ah Reservado 2Bh Opciones 2 2Ch Opciones 3 2Dh Reservado 2Eh 2Fh 30h 31h 32h 33h 34h Low CMOS RAM Checksum High CMOS RAM Checksum Low Extended Memory byte High Extended Memory byte byte de siglo Setup information Velocidad CPU

0Dh Estado D 0Eh 0Fh 10h 11h 12h 13h 14h Estado de Diagnstico Estados Shutdown Tipo de Flopy Reservado Tipo de HD Reservado Equipamiento

15h 16h 17h 18h 19h

Low Base Memory High Base Memory Low Extended Memory High Extended Memory HD 1 extended Type byte

35h 36h 37h 38h 39h

HD 2 Nmeros de cilindros Low HD 2 Nmeros de cilindros High Cabezales HD2 HD 2 inicio Pre-Compesation Low HD 2 inicio Pre-Compesation High

1Ah HD 2 extended Type byte 1Bh Reservado 1Ch Reservado

3Ah HD Low Landing zone 3Bh HD High Landing zone 3Ch HD 2 Sectores 3Dh Reservado 3Eh 3Fh Reservado Reservado

1Dh Reservado 1Eh 1Fh Reservado Installed Features

2.2 LAS FUNCIONES DE RELOJ


La CPU obtiene la hora y fecha leyendo el byte correspondiente del RTC. Si este est incrementando actualmente, la lectura no es posible. Mediante la Escritura de un valor en los bytes, estos se inicializan. Si quiere escribir datos en los bytes, se ha de apagar el primero de los RTC-Undates en el registro en registro de estado B mediante el SET-bit. Los datos del reloj estn guardados en formato BCD. Es decir, que los 4 bits superiores representan el nmero. Los siguientes valores se pueden encontrar en los diferentes bytes. Funcin Segundos Segundos Alarma Minutos Minutos Alarma Da de la semana Da del mes Mes Ao Direccin 00 01 02 03 06h 07h 08h 09h Datos BCD 00 hasta 59 00 hasta 59 00 hasta 59 00 hasta 59 01 hasta 07 01 hasta 31 01 hasta 12 01 hasta 99

2.3 REGISTROS DE ESTADO


Los RTC disponen de cuatro registros de estado. Sirven para el control del chip y muestra su estado actual. 2.3.1 REGISTRO A El Registro A es especialmente interesante por la posibilidad de determinar con l la velocidad de la llamada de la interrupcin peridica. El bit 7 puede encontrar el bit UIP (=Update in Progress). Si tiene el valor 1, se est realizando una actualizacin del tiempo en este instante. Los bits 6 hasta 4 contiene la base de tiempo. El valor estndar para ella es de 101b, lo que representa un valor de 32768d Hz. Debera prestar especial atencin a los bits RS 3 hasta 0. Son responsables de la seleccin de tasas. La tasa se calcula segn la frmula. Tasa = 65536 / 2^RS El valor por defecto es 1024 Hz se calcula por consiguiente de 65536/26 (100b). 2.3.2 REGISTRO B El Registro B es un registro con muchas funciones. Cada bit tiene la suya propia. Comencemos con el SET-Bit 7. Si est a 1, se interrumpe el ciclo momentneo de actualizacin una vez por segundo. El PIE-Bit (Periodic Interrupt Enable) determina si la interrupcin peridica se ha de llamar con la frecuencia ajustada en el registro A. Si el bit 1, se realiza la llamada, de lo contrario no se dispara ninguna interrupcin. En el AIE-Bit 5 ( Alarm Interrup Enable) puede encontrar la informacin sobre si la interrupcin de alarma se dispara a la hora ajustada. Si el bit vale1, la interrupcin est activa. La interrupcin de actualizacin se dispara cuando se puede encontrar el valor 1 en el UIE-bit 4 (Update Ended Interrupt Enable). Con el SQWE-Bit 3 (Square Wave Enable ) puede elegir si se debe activar la frecuencia de onda rectangular ajustada en el registro A (Bit=1) o no. El DM-Bit2 (Date Mode) es importante cuando accede a la fecha. Si el Bit contiene el valor 1 los nmeros se encuentran en formato binario. Por defecto puede encontrar aqu el valor 0, que indica el formato BCD. Mediante el 24/12-Bit 1 (24/12 hour) se elige si el reloj se encuentra en modo de 24 horas o en el de 12 horas. Por defecto puede encontrar aqu el valor 1, que representa el modo de 24 horas. En el DSE-bit 0 (Daylight Savings Enabled) puede finalmente encontrar la informacin de si el reloj ha de tener cuanta el horario de verano o no. De forma estndar esto est apagado mediante un valor de 0. 2.3.3 REGISTRO C El registro 0Ch es el registro de banderas. El bit7 indica el Interrupt- Request-flag. Contiene el valor de 1 cuando se puede aplicar un de los usados que disparan una interrupcin y la bandera corresponde a est en enable. El bit 6 es una bandera que indica una interrupcin peridica. El bit 5 se pone 1 cuando hay una coincidencia entre la hora de alarma ajustada y la hora actual. La bandera tambin se activa cuando la interrupcin de alarma no est ajustada. El bit 4 finalmente es la llamada Undate Ended Interrupt-flag. Indica, como se nombre permite suponer, cuando se a terminado un ciclo de actualizacin del RTC. Los bits 3 hasta 0 estn reservados. Por favor tenga en cuanta que el contenido de este registro borrado despus de cada acceso de lectura. 8

2.3.4 REGISTRO D El registro D sirve para la vigilancia de la batera. Si el bit 7 est activado, la batera se encuentra en perfecto estado. De lo contrario, el valor de 0 muestra que la batera esta defectuosa. El bits 6 hasta 0 no tienen ninguna funcin. El siguiente ejemplo utiliza las funciones del reloj que corresponden al tiempo como son la hora minutos segundos. Este programa permite leer el dato de la direccin de memoria y poder visualizarla en pantalla. La hora del reloj de tiempo reloj se calcula a partir del contador del temporizador, que se encuentra en las palabras 40h:6Ch( inferior) y 40h:6Eh Superior. El siguiente programa diseado en Assembler es una rutina residente para escribir la hora en la esquina superior derecha de la pantalla. 2.3.5 ; PROGRAMA DE RELOJ RESIDENTE EN TIEMPO REAL

PANTALLA EQU 0B000H CODIGO SEGMENT ASSUME CS:CODIGO,DS:CODIGO ORG 100H INICIO: JMP INSTALAR HORA DB 11 DUP(?) RELOJ PROC CLI PUSH AX PUSH BX PUSH CX PUSH DX PUSH SI PUSH DI PUSH DS PUSH ES ;HORA -------> 40h:6Ch MOV AX,40H MOV ES,AX MOV SI,6CH MOV AX,ES:[SI] MOV DX,ES:[SI+2] MOV BX,32771 DIV BX SHR AX,1 MOV CH,AL MOV AX,DX MOV DX,0 MOV BX,1092 DIV BX MOV CL,AL MOV AX,DX MOV DX,0 MOV BX,18 DIV BX MOV DH,AL MOV BH,10 MOV AH,0 MOV AL,CH DIV BH ADD AX,3030H MOV WORD PTR HORA,AX

ALE:

MOV MOV MOV DIV ADD MOV MOV MOV MOV DIV ADD MOV MOV MOV MOV DIV ADD MOV MOV MOV MOV MOV MOV MOV MOV INC MOV INC INC DEC CMP JNZ

HORA+2,':' AH,0 AL,CL BH AX,3030H WORD PTR HORA+3,AX HORA+5,':' AH,0 AL,DH BH AX,3030H WORD PTR HORA+6,AX HORA+8,':' AH,0 AL,DL BH AX,3030H WORD PTR HORA+9,AX AX,PANTALLA ES,AX DI,2*(80-11) CX,11 SI,0 AL,HORA[SI] ES:[DI],AL DI BYTE PTR ES:[DI],31 SI DI CX CX,0 ALE:

FIN: POP ES POP DS POP DI POP SI POP DX POP CX POP BX POP AX STI IRET RELOJ ENDP INSTALAR PROC MOV AX,0000H MOV ES,AX MOV BX,01CH*004H CLI MOV WORD PTR ES:[BX],OFFSET RELOJ MOV WORD PTR ES:[BX+2],CS MOV DX,OFFSET INSTALAR STI INT 27H INSTALAR ENDP CODIGO ENDS END INICIO ;PROGRAMA DE RELOJ RESIDENTE ;SEGMENTO MEMORIA DE PANTALLA VGA PANTALLA EQU 0B800H ;SEGEMENTO PRINCIPAL CODIGO SEGMENT ASSUME CS:CODIGO,DS:CODIGO ORG 100H ; ORIGEN POR SER FICHERO TIPO COM INICIO:

10

JMP INSTALAR ; VARIABLES DEFINIDAS HORA DB 35 DUP('?') RELOJ PROC CLI PUSH PUSH PUSH PUSH PUSH PUSH PUSH PUSH

AX BX CX DX SI DI DS ES

;OBTENEMOS LA HORA DE LA DIRECCION -------> 40h:6Ch (INFERIOR) ; 40h:6eh (SUPERIOR) MOV MOV MOV MOV MOV MOV DIV SHR MOV MOV MOV MOV DIV MOV MOV MOV MOV DIV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV DIV ADD MOV MOV AX,40H ES,AX SI,6CH AX,ES:[SI] DX,ES:[SI+2] BX,32771 BX AX,1 CH,AL AX,DX DX,0 BX,1092 BX CL,AL AX,DX DX,0 BX,18 BX DH,AL HORA,'F' HORA+1,'E' HORA+2,'R' HORA+3,'D' HORA+4,'I' HORA+5,'N' HORA+6,'A' HORA+7,'N' HORA+8,'D' HORA+9,' ' HORA+10,'C' HORA+11,'O' HORA+12,'N' HORA+13,'D' HORA+14,'O' HORA+15,'R' HORA+16,'I' HORA+17,' ' BH,10 AH,0 AL,CH BH AX,3030H WORD PTR HORA+18,AX HORA+20,':'

11

MOV MOV DIV ADD MOV MOV MOV MOV DIV ADD MOV MOV MOV MOV DIV ADD MOV

AH,0 AL,CL BH AX,3030H WORD PTR HORA+21,AX HORA+23,':' AH,0 AL,DH BH AX,3030H WORD PTR HORA+24,AX HORA+26,':' AH,0 AL,DL BH AX,3030H WORD PTR HORA+27,AX

; DIRECCIONA ZONA DE MEMORIA DE LA PANTALLA MOV AX,PANTALLA MOV ES,AX MOV DI,2*(80-31) MOV CX,31 MOV SI,0

; cambiar con el tamao de la cadena ; cambiar

MOVER: MOV AL,HORA[SI] MOV ES:[DI],AL INC DI MOV BYTE PTR ES:[DI],31H INC SI INC DI LOOP MOVER FIN: POP ES POP DS POP DI POP SI POP DX POP CX POP BX POP AX STI IRET RELOJ ENDP INSTALAR PROC MOV AX,0000H MOV ES,AX MOV BX,01CH*004H CLI MOV WORD PTR ES:[BX],OFFSET RELOJ MOV WORD PTR ES:[BX+2],CS MOV DX,OFFSET INSTALAR STI INT 27H INSTALAR ENDP CODIGO ENDS END INICIO

12

3 PROGRAMAR ALARMAS DE ACUERDO AL USO DEL RELOJ DE TIEMPO REAL DE LA PC. TRAER PROGRAMA DE ALARMAS.
Existen muchas aplicaciones posibles que podra hacer uso del reloj de tiempo real de la PC. Por ejemplo, se podra trabajar con la hora para chequear algn dispositivo, mantener un contador interno para realizar algo cuando alcance cierto valor, etc.

4 INTERRUPCIONES POR HARDWARE USADAS EN LA PC CUALES ESTN OCUPADAS Y CUALES DISPONIBLES.


Las interrupciones de hardware pueden ser internas o externas.

4.1 INTERRUPCIONES INTERNAS DE HARDWARE:


Las interrupciones internas son generadas por ciertos eventos que surgen durante la ejecucin de un programa. Este tipo de interrupciones son manejadas en su totalidad por el hardware y no es posible modificarlas. Un ejemplo claro de este tipo de interrupciones es la que actualiza el contador del reloj interno de la computadora, el hardware hace el llamado a esta interrupcin varias veces durante un segundo para mantener la hora actualizada. Aunque no podemos manejar directamente esta interrupcin (no podemos controlar por software las actualizaciones del reloj), es posible utilizar sus efectos en la computadora para nuestro beneficio, por ejemplo para crear un "reloj virtual" actualizado continuamente gracias al contador del reloj interno. Unicamente debemos escribir un programa que lea el valor actual del contador y lo traduzca a un formato entendible para el usuario.

4.2 INTERRUPCIONES EXTERNAS DE HARDWARE:


Las interrupciones externas las generan los dispositivos perifricos, como pueden ser: teclado, impresoras, tarjetas de comunicaciones, etc. Tambin son generadas por los coprocesadores. No es posible desactivar a las interrupciones externas. Estas interrupciones no son enviadas directamente a la UCP, sino que se mandan a un circuito integrado cuya funcin es exclusivamente manejar este tipo de interrupciones. El circuito, llamado PIC 8259A, si es controlado por la UCP utilizando para tal control una serie de vas de comunicacin llamadas puertos.

4.3 INTERRUPCIONES DE HARDWARE:


Nro Usada por Descripcin 0 1 2 Sistema Sistema Libre Reloj del Sistema Teclado Actualmente IRQ2 e IRQ9 estn unidas entre s.

13

COM2, COM4 COM1, COM3 Libre Sistema Libre Sistema Libre Libre Libre Libre Sistema

Reservada para COM2, COM4, Si ud. no posee placa multifuncin Puede estar libre Reservada para COM1, COM3, Si ud. no posee placa multifuncin Puede estar libre Reservada para LPT2, Normalmente libre an si hay 2 mas Impresoras. Controladora de Disketteras, FDD, Floppy disk controller. Reservada para LPT1, Normalmente libre an si hay Impresoras. RTC, Reloj de tiempo real, Reloj del sistema. En sistemas PCI es utilizada por el PLUG &PLAY En sistemas PCI se asigna al Slot Nro 1 (Generalmente Video) En sistemas PCI es utilizada por el PLUG &PLAY En sistemas PCI es utilizada por el PLUG &PLAY Coprocesador Matemtico Todos los sistemas 486 DX y superiores lo poseen. Disco rgido IDE- Solamente. Controladora primaria IDE Puede ser que en un sistema con HD SCSI y un CD-ROM IDE el CD est conectado al conector IDE primario.

5 6 7 8 9 10 11 12 13

14

Sistema

15

La utiliza la segunda controladora IDE, si su motherboard posee dos enchufes IDE Posee una controladora con dos enchufes IDE posee una placa de sonido y el CD-ROM IDE est conectado a la misma, esta IRQ se utiliza.

Solo se pueden utilizar las que figuran libres mas la IRQ15 y las de los puertos COM.

5 DESCRIBIR EL PROCEDIMIENTO PARA ACCEDER A UNA INTERRUPCIN.


5.1 HARDWARE DE LOS IRQ:
Originalmente, las computadoras basadas en el procesador 8086 y 8088 (denominadas comnmente tipo XT), posean tan solo 8 posibles IRQ para los diferentes dispositivos que se deseen agregar a esas computadoras. La asignacin para cada IRQ puede ser apreciada en la tabla adjunta. El IRQ nmero 0 estaba siempre asignado para el reloj del sistema, el IRQ 1 para el controlador de teclado, el 2 libre, el 3 para el puerto serial COM2 donde habitualmente se conecta el modem, el 4 para el puerto serial COM1 donde habitualmente se conecta el ratn, el 5 para la atencin del disco duro, el 6 para la atencin de las disqueteras, y el 7 para el 14

puerto paralelo, donde va generalmente una impresora o un scanner. En definitiva, tan solo se podra agregar una tarjeta, con el IRQ 2 disponible (available). Afortunadamente esto ha cambiado para las computadoras actuales, que poseen 16 IRQs disponibles (de 0 a 15). Toda computadora basada en un procesador 80286 o superior tiene esta cantidad de interrupciones disponibles.

Pero la pregunta interesantes es cmo se ha logrado esto?, bueno, ac la respuesta: originalmente, en las computadoras XT, cualquier interrupcin es atendida por un chip cuyo nmero es el 8259, tambin denominado Controlador De Interrupciones. Este chip tan solo tiene la capacidad de atender 8 interrupciones, es decir tienen fsicamente 8 entradas, as que para los equipos AT (286 o superior) se han empleado simplemente dos de estos controladores, redireccionando todas las interrupciones generadas por el segundo chip hacia el primero a travs del IRQ 2, como se puede observar en el grfico. Ya que el IRQ 2 del primer chip ha de estar ocupado permanentemente, tan solo quedan 15 posibles IRQs. Recordemos que las interrupciones tienen una prioridad dada por su nmero, y como todas las interrupciones del segundo controlador entran por la interrupcin 2 del primero, las interrupciones nmero 8 a la nmero 15 tienen todas prioridad 2. El grfico permite ver una asignacin para cada interrupcin, pero ese tema se ver en seguida con la tabla de asignaciones. Un aspecto importante a comprender es qu sucede con los dispositivos que requieren de forma obligatoria el IRQ 2, cosa bastante normal. En realidad en los equipos AT, cualquier tarjeta conectada al IRQ 2 funciona perfectamente, con la salvedad de que en realidad est funcionando en el IRQ 9, y no en el 2. Este hecho es completamente transparente y no requiere de mayor cuidado, salvo entender que si algn dispositivo est empleando el IRQ 2, ningn otro podr ser asignado al IRQ 9, por la razn antes mencionada.

5.2 ASIGNACIN DE LOS IRQ PARA EQUIPOS AT:


La tabla adjunta puede ser obtenida a travs de diversos programas, uno de los ms conocidos es el MSD o Microsoft Diagnostic, programa que viene incluido dentro del mismo DOS. Es importante notar tambin que no todos los equipos tienen idntica disposicin de IRQs, es conveniente analizar la tabla del equipo ejecutando por ejemplo el MSD bajo el DOS. La importancia de esta tabla es fundamental, porque indica claramente qu dispositivo est empleando qu IRQ. Veamos entonces este ejemplo. El IRQ 0 y el IRQ 8 estn por lo general 15

siempre asignados a seales de sincronizacin y tiempo propias de la tarjeta madre, por lo que no se las debe tocar. El IRQ 1 se destina a atender las interrupciones provenientes del teclado, es decir, la pulsacin de una tecla (por cierto que an tipeando el mecangrafo ms diestro y veloz, el tiempo entre pulsacin y pulsacin es para el CPU una verdadera eternidad).

El IRQ 2 est destinado exclusivamente a la atencin del segundo chip controlador 8259, aunque se lo pueda emplear en la prctica ya que es suplido por el IRQ 9 como se mencion anteriormente. El IRQ 3 ha de atender un dispositivo serial que se halle en el puerto COM2 o COM4, y el IRQ 4 otro dispositivo serial conectado al COM1 o al COM3. Este punto es interesante ya que al inicio de este anlisis dijimos claramente que un mismo IRQ no puede ser compartido por dos o ms dispositivos a la vez, como por ejemplo el modem y el ratn, que perfectamente se podra conectarlos al COM2 y al COM4, para que empleen el IRQ 3. Sin embargo este hecho ocasionara que el momento en que el modem est activo y el ratn tambin, el equipo se bloquee completamente, aparezcan extraos mensajes de error en la pantalla y exista la necesidad de reiniciar todo, con las molestias y perjuicios pertinentes. Esto sucede toda vez que dos dispositivos intentan emplear el mismo IRQ. Por esta razn, se suele conectar un equipo al COM1 y se deja libre el COM3, o bien a la inversa, pero nunca en ambos, y lo mismo para el COM2 y el COM4. Por lo general, se conecta al COM1 el ratn, y al COM2 el modem, de esta forma emplean el IRQ 4 y 3 respectivamente, sin crearse conflictos (en una edicin futura dedicada a modems exclusivamente analizaremos plenamente este aspecto). Como se puede apreciar en la columna Detectado , el programa MSD ha detectado algo en el COM1, pero nada en el COM3 (Not Detected), y lo mismo ocurre para el COM2, que ha sido detectado y no el COM4. Por cierto, que el equipo del que se obtuvo esta tabla tiene el ratn en el COM1 y el modem en el COM2. Por su parte, el IRQ 5 tiene marcada en su columna. Detectado , la palabra No , lo que da a entender que ese IRQ est disponible, y que por lo general se lo emplea para una segunda impresora. Los IRQ 6, 7, y 8 han sido detectados, por lo que no pueden ser empleados. El IRQ 9 se halla disponible para suplir al 2. Los IRQ 10, 11, 12 y 15 no han sido detectados, y se hallan bajo el rtulo de (Reserved) , lo que significa que estn disponibles para atender cualquiera 16

dispositivo a ser agregado en un futuro, como ser: tarjeta de sonido, tarjeta de TV, etc. Finalmente el IRQ 13 y 14 se hallan destinados a atender el coprocesador matemtico y las unidades de discos duros respectivamente. Los nombres de las columnas son bastante claros, a excepcin de la denominada Manejado Por , que indica el elemento de hardware o software que administra el dispositivo. Por ejemplo, el teclado es administrado por un programa denominado KEYB, bastante conocido para todos los que han manejado o configurado el viejo DOS, muchos dispositivos son administrados por las rutinas del BIOS, que por lo general ser cargan a la memoria RAM cuando se inicializa la computadora (el proceso de carga se denomina Shadow BIOS), y Default Handlers indica que el dispositivo ser administrado por los programas del mismo fabricante. El smbolo ??? indica que el programa MSD no ha podido averiguar quin administra ese IRQ, cosa normal para el reloj del sistema, que funciona de forma autnoma.

6 INTERRUPCIONES POR SOFTWARE USADAS EN LA PC CUALES ESTN OCUPADAS Y CUALES DISPONIBLES.


6.1 INTERRUPCIONES DE SOFTWARE:
La PC vienen equipadas con programas de servicio integrados llamados el ROM-BIOS. Los programas de la computadora necesitan una manera de pedir los servicio que proporciona el BIOS y las interrupciones de software son la manera en que lo hacen. Las interrupciones de software funcionan en la misma forma que las de hardware. La nica diferencia con ellas es lo que causa la interrupcin. En este caso, en vez de que suceda inesperadamente, las interrupciones de software son generadas intencionalmente por un programa. Hay una instruccin especial de lenguaje ensamblador, llamado INT, que se usa por un programa para pedir una interrupcin. Las interrupciones correspondientes al DOS. Son Las siguientes: 17

Nro 20H 21H 22H

DESCRIPCIN Terminar Programa Peticin de funcin Direccin de terminacin Especifica la direccin a donde se bifurcar cuando se termine el programa. Esta direccin se copia sobre el PSP

23H 24H 25H 26H 27H 28H 3FH

Direccin de Salida por CRTL-BREAK Manejador de error Critico Lectura de disco absoluta Grabacin en Disco Absoluta Terminar pero quedar residente No se usa (Reservada) No se usa (Reservada)

7 DISEO DE UN SISTEMA DE FORMA QUE PODAMOS PROBAR LAS INTERRUPCIONES DE AMBOS TIPOS . TRAER PROGRAMA PROBADO FUENTE Y COMPILADO
El siguiente programa es un men que funciona con las interrupciones tanto de HARDWARE Y DE SOFTWARE . Utiliza interrupciones de hardware del teclado, e interrupciones de software de la ROM-BIOS.
; ; ; ; Para maquinas 8088/80386 Programa Graficador con control total del cursor. Con interrupciones de la ROM BIOS Compilado como EXE. macro mov mov int endm segment memo pan x1 y1 xx0 yy0 x0x y0y c01 c02 ah,0h al,2h 10h para 'datos' dw 0B800h dw 2000 dup(?) dw 20 dw 4 db 0 db 0 db 0 db 0 dw 0 dw 0 A263103.ASM

modot

; Define el modo texto 80 x25 ; ; ; ; ;Segmento de datos, Definiciones en assembler ;Inicio de la pantalla ;Separa memoria sin inicializar ;Coordenadas esquina sup.izq. del menu. ;Coordenadas esquina sup.izq. del menu. ; ;

dseg

18

dseg cseg

f01 f02 x2 y2 XX AA BB CC EE FF GG HH II JJ KK LL MM NN car fil col fi1 co1 color colo long1 long2 video ends

dw dw dw dw db db db db db db db db db db db db db db db dw dw dw dw dw db dw dw db

0 0 60 ;Coordenadas esquina inf.derecha del menu. 22 ;Coordenadas esquina inf.derecha del menu. '[7 3 3 3 3 3 3 3G7R7A7F7I7C7A7D7O7R7 3 3 3 3 3 3 3]7' ;Menu 'Fa18 M O D O T E X T O ' 'Fa28 M O V I M I E N T O C O N A R R A S T R E ' 'Fa38 M O V I M I E N T O C O N T R O L A D O ' 'Fa48 M O D O G R A F I C O ' 'Fa58 C U A D R A D O R E L L E N O ' 'Fa68 C U A D R A D O E N M O V I M I E N T O ' 'Fa78 M O V I M . E N P E R S P E C T I V . ' 'Fa88 M O V I M I E N T O D E L I N E A S ' 'Fa98 M O V I M I E N T O A N I M A D O ' 'Fa1808 G R A F I C A D O R ' ' E8S8C8 F I N ' 0 ;fila actual 0 ;columna actual 0 ;fila anterior 0 ;columna anterior 0 ;color 0 0 0 11h ;Resolucion grafica 640 x 480

segment ;Programa principal. assume cs:cseg, ds:dseg, es:cseg, ss:cseg ini:jmp marco ;inicio de programa marco proc near ; mov ax,cs ; mov ax,dseg ; mov ds,ax ; mov es,ax ; call salva ; push ax ; menu:mov ax,MEMO ;Inicio de memoria de pantalla mov ES,ax ; mov di,598 ;CLEAR SCREEN MOV AX,0720h ; cle1:add di,80 ; mov cx,80 ; cle0:add di,1 ; mov es:[di],ax ; loop cle0 ; cmp di,3300 ; jl cle1 ; MOV AX,MEMO ;Inicio de la pantalla MOV ES,AX ; MOV CX,58 ;Longitud de cadena a imprimir MOV AX,850 ;Posicion en la pantalla MOV DI,AX ;Direccion destino MOV SI,OFFSET AA;Direccion origen de la cadena AA REP MOVSB ;Repite traslado de cadena byte a byte MOV CX,58 ; add AX,160 ; MOV DI,AX ; MOV SI,OFFSET BB; REP MOVSB ; MOV SI,OFFSET EE; REP MOVSB ; MOV CX,58 ; add AX,160 ; MOV DI,AX ;

19

MOV SI,OFFSET FF; REP MOVSB ; MOV CX,58 ; lea bx,CS:f3 ; lea bx,CS:f4 ; opcion:call resetraton ; call punteroon ; opcion1:mov ah,01 ;Funcion: leer una tecla ah=1 int 16h ;llamada al ROM BIOS jnz etiqw ; call leerraton ; test bx,1 ; jz opcion1 ; sub dx,40 ;algoritmo para el mouse mov ax,dx ; jmp etiqr ; etiqw: mov ah,0 ;algoritmo para el teclado int 16h ; mov al,ah ; sub al,59 ; sub ah,ah ; etiqr: cmp ax,10 ; ja finx ;Compara con Esc mov bl,6 ; mul bl ; lea bx,f1 ; add bx,ax ; jmp bx ; rat01: jmp opcion ;Fin de opciones F1:call graf1 ;Llama procedimientos graf jmp ya ; F2:call graf2 ; jmp ya ; F3:call graf3 ; jmp ya ; F4:call graf4 ; jmp ya ; F5:call graf5 ; jmp ya ; F6:call graf6 ; jmp ya ; F7:call graf7 ; jmp ya ; F8:call graf8 ; jmp ya ; F9:call graf9 ; jmp ya ; F10:call graf10 ; jmp ya ;Salida de bifurcacion finx:jmp fin ; ya:mov ah,8 ;Espera que se pulse una tecla, sin eco. int 21h ; mov ah,0 ;Modo mov al,2 ; normal de int 10h ; pantalla 80 x 25 JMP menu ; FIN:mov ah,0 ;Modo mov al,2 ; normal de int 10h ; pantalla pop ax ; mov ds,ax ; mov ax,MEMO ;Inicio de memoria de pantalla mov ES,ax ; mov di,0 ;LOAD SCREEN MOV cx,2000 ;longitud de pantalla ir01:MOV ax,pan[di] ; mov es:[DI],ax ; add di,2 ;

20

marco

loop mov int endp

ir01 ah,4ch 21h near xx0,40 yy0,12 car,0dbh escrib punteroon ax ah,0h 16h ah,04dh de ah,04bh iz ah,048h yy0,00 w3

; ;Salida al DOS con codigo ; de errores. ; ;Movimiento controlado de un caracter en modo ;Inicializa el modo texto. ; ;

graf1 proc texto. modot mov mov mov call call push tecl: mov int cmp je cmp je cmp ap:pop ax ret z3:mov jmp graf1 endp graf2

proc near modot mov xx0,40 mov yy0,12 mov car,0dbh call escrib call punteroon push ax tecla: mov ah,0h int 16h cmp ah,04dh w7: add yy0,01 jmp escrit escrit:mov car,0dbh call escrib jmp tecla z4:mov xx0,00 jmp w4 z5:mov xx0,80 jmp w5 z6:mov yy0,25 jmp w6 z7:mov yy0,00 jmp w7 esca:pop ax ret graf2 endp graf3 proc modot call push push push push mov mov pixel loop ret endp near punteroon ax bx cx dx xx0,40 yy0,12 ir63

;MOVIMIENTO TEXTO

;Activa mouse

call cuad

21

graf4 proc near mov col,61 mov cx,517 ale: inc col call pixel loop ale cmp fil,437 jl mar ret graf4 endp graf5 proc near call modo add fil,01 cmp long1,00 jg iiii ret graf5 endp graf6 proc near call modo call punteroon push ax i01:mov col,90 mov fil,10 mov long1,460 mov long2,460 i00:mov color,01 cmp al,27 jne i01 pop ax ret graf6 endp graf7 proc near call modo call punteroon mov col,19 mov fil,79 mov color,01 mov long1,300 mov col,320 mov fil,220 mov color,0fh call pixel push ax tcla: call guard mov ah,0h int 16h cmp ah,047h modo proc near mov ah,0h mov al,video int 10h ret mov ah,02h mov dh,yy0 mov dl,xx0 mov bh,0h int 10h mov ah,09h mov bh,0h mov bl,03h mov cx,01 mov al,car int 10h pop dx pop cx pop bx pop ax

;CUADRADO RELLENO

;Fija modo de video ;modo de video, resolucion ;

22

ret endp proc mov mov mov MOV sal0:MOV mov add loop mov ret salva endp guard proc push push mov mov mov mov pop pop ret guard endp borra proc push push push mov mov mov mov int pop pop pop ret borra endp pixe1 proc push push push mov mov mov mov int pop pop pop ret pixe1 endp pixel proc push push push mov mov mov ret leerraton endp punteroxy proc mov sub int ret punteroxy endp escri salva

near ax,MEMO ES,ax di,0 cx,2000 ax,es:[DI] pan[di],ax di,2 sal0 ax,ds near ax bx ax,fil bx,col fi1,ax co1,bx bx ax near cx dx ax cx,co1 dx,fi1 ax,00h ah,0ch 10h ax dx cx near cx dx ax cx,col dx,fil al,0fh ah,0ch 10h ax dx cx near cx dx ax cx,col dx,fil ax,color near ax,4 bx,bx 51

;inicio de memoria de pantalla ; ;SAVE SCREEN ;longitud de pantalla ;

;color ;Escribe pixel

;color ;Escribe pixel

;color

23

resetraton proc near mov ax,0 int 51 ret resetraton endp cseg ends end ini

8 EL SETUP DE LA PC, LAS OPCIONES DE CONFIGURACIN Y LOS PARMETROS.


8.1 BIOS SETUP
"Basic Input-Output System", sistema bsico de entrada-salida. Programa incorporado en un chip de la placa base que se encarga de realizar las funciones bsicas de manejo y configuracin del ordenador. Estudiaremos a continuacin como realizar el seteo del BIOS de un PC. Para ello nos basaremos en un BIOS AMI o AWARD, que son los ms tpicos y difundidos en nuestra plaza. Los BIOS de otros proveedores si bien tienen una estructura de mens bastante distinta a la que aqu mostramos, poseen opciones muy similares a las que detallaremos. Para entrar al SETUP del BIOS debemos presionar la tecla [Supr] luego de que el PC termine el P.O.S.T. (Power On Self Test). Esto es habitualmente indicado por el PC con el mensaje press DEL to enter SETUP (tome en cuenta que DEL es sustituido por Supr en el teclado en espaol. La pantalla principal de una BIOS clsica es algo as:

Mientras que la de una WinBIOS tiene este aspecto:

24

Para acceder a los SETUP de los BIOS de otros proveedores se deben presionar otras teclas o combinaciones de las mismas. A modo de ejemplo:

BIOS PHOENIX --------------------------------[F2] BIOS ACER--------------------------------------[Ctrl]+[Alt]+[Esc] BIOS IBM-----------------------------------------[Alt]+[F1] BIOS COMPAQ---------------------------------[F10]

En caso de problemas con el SETUP del BIOS, o de haber perdido el password asignado al mismo, es posible borrarlo por completo (incluyendo el password), cambiando de lugar por unos segundos un jumper del motherboard. Con esto se hace un nuevo seteo del BIOS, cargando primero los seteos por defecto, y luego optimizndolos. Veremos a continuacin los distintos mens y submens, con una pequea explicacin de sus significados y seteos ms habituales.

8.2 STANDARD CMOS SETUP


En este men podemos ajustar la fecha y hora del reloj del PC, declarar los parmetros de los discos duros, eventualmente declarar que tenemos conectado un CD-ROM, y declarar que tipo de disqueteras tenemos conectadas al sistema (estas se deben declarar manualmente, pues no pueden ser auto detectadas). Los discos duros pueden ser seteados como Auto, con lo cual el BIOS los detectar automticamente cada vez que arranque el PC, pero esto consume tiempo en el arranque. Esta opcin es til en el caso de tener un disco IDE removible, pues nos asegura que siempre el sistema estar correctamente configurado.

25

8.3 ADVANCED CMOS SETUP


Quick Boot Esta opcin nos permite elegir si queremos realizar un chequeo exhaustivo de la memoria y dems componentes del sistema, o uno rpido. La opcin ms habitual es ENABLED. 1st Boot Device Permite elegir cual ser la primera unidad desde la cual el PC intentar arrancar el sistema operativo 2nd Boot Device Segunda unidad en el orden de bsqueda de unidades de donde bootear 3rd Boot Device Tercera unidad en el orden de bsqueda de unidades de donde bootear Try Other Boot Devices Aqu indicamos si luego de haber agotado todos los dispositivos enumerados anteriormente, seguimos buscando hasta encontrar alguno S.M.A.R.T. for Hard Disks Si habilitamos esta opcin el disco duro puede reportar a cierto software (no incluido en los sistemas operativos tpicos) informacin acerca de su estado Floppy Drive Swap En caso de tener ms de una disquetera instalada, esta opcin nos permite permutar las letras asignadas a ellas Floppy Drive Seek Esta opcin al habilitarla hace que durante el proceso de arranque el PC verifique si tiene alguna disquetera conectada. Habitualmente se deshabilita, pues consume un par de segundos en el arranque. PS/2 Mouse Support En caso de tener un mouse de este tipo debemos habilitarla, en caso contrario se deshabilita a fin de liberar recursos Password Check Aqu podemos elegir dos opciones: Setup o Always indicando si queremos que el PC solicite el password de seguridad cada vez que es encendido, o slo cuando se desea acceder al SETUP del BIOS . Todas las dems opciones de este men no se deben modificar de sus valores por defecto.

8.4 ADVANCED CHIPSET SETUP


Trend ChipAway Virus Deteccin de virus a nivel del BIOS. Esta opcin al activarla controla si algn software trata de escribir al MBR y/o sector de booteo del disco (comportamiento habitual de muchos virus). Debe deshabilitarse siempre pues Windows escribe a esos lugares y eso es interpretado como una amenaza de virus por el BIOS, pudiendo ocasionar serios inconvenientes Auto Configure DRAM Timing Es aconsejable dejar habilitada esta opcin DRAM Speed (ns) Aqu debemos indicarle al BIOS la velocidad de la memoria que estamos usando en el PC expresada en nanosegundos. DRAM Integrity Mode Esta opcin indica que tipo de correccin de errores usa la memoria instalada, debe setearse de acuerdo a las caractersticas de la misma, o en caso de duda, deshabilitarse, eligiendo la opcin Non ECC

26

On Board USB Function Esta opcin debe habilitarse si vamos a usar algn dispositivo USB, en caso contrario, deshabilitarla para ahorrar recursos El resto de las opciones deben dejarse en sus valores por defecto.

8.5 POWER MANAGEMENT SETUP


Power Management Esta opcin permite configurar las caractersticas de ahorro de energa a travs del BIOS del PC. Es aconsejable deshabilitarlo, y dejar que Windows maneje estas configuraciones. En caso contrario, pueden producirse conflictos entre ambos. RTC Alarm Power On Esto permite programar el PC para encenderse automticamente en una fecha dada, a una cierta hora PCI/Plug and Play Setup Plug and Play Aware O/S Debemos elegir Yes para indicarle al BIOS que el Sistema Operativo puede administrar los recursos Plug and Play Allocate IRQ to PCI VGA El seteo de esta opcin depende de la tarjeta VGA utilizada. Tpicamente, las tarjetas de alta performance deben llevar esta opcin habilitada En este men es donde podemos indicarle al BIOS que disponemos de algn dispositivo no Plug and Play, eligiendo para los recursos utilizados por ese dispositivo (DMA e IRQ) la opcin ISA/EISA o ISA-Legacy en vez de la opcin dada por defecto de PnP, o PCI/PnP. Los recursos marcados de esa forma no sern asignados por el BIOS a ningn dispositivo Plug and Play. Las dems opciones se dejarn en sus opciones por defecto. Load Optimal Settings Esta opcin carga un conjunto de valores por defecto, que si bien no asegura el mximo rendimiento del PC, s asegura que este funcionar. Load Best Performance Settings Como su nombre lo indica esta opcin carga un conjunto de valores por defecto con los cuales el PC tendr su mximo rendimiento a juicio del fabricante. Peripheral Setup En este men podemos habilitar o deshabilitar la controladora de disqueteras, los controladores IDE, y los puertos seriales y paralelos, incluidos en el motherboard. Tambin podemos configurar estos dispositivos, eligiendo, por ejemplo, a que COM queremos que correspondan cada uno de los puertos seriales del motherboard, a que LPT queremos asignar el puerto de impresora, y si queremos que este sea un puerto estndar (Normal, o SPP), bidireccional (EPP), o mejorado (ECP). (Siempre que la impresora lo soporte debemos utilizar sta ltima opcin, pues es la de mayor velocidad de comunicacin) En caso de que el motherboard incluya a bordo otros perifricos tales como tarjeta de video, sonido, red, modem, etc., desde este men podemos habilitarlos o deshabilitarlos. 27

CPU Plug and Play Setup En los motherboards modernos, en vez de indicar las caractersticas del procesador por medio de jumpers, lo hacemos a travs de menes en el SETUP del BIOS. Normalmente esto se hace indicando dos parmetros: la frecuencia de reloj del bus de memoria, y un multiplicador. El producto de estos dos valores da la frecuencia de trabajo del procesador. En los procesadores Pentium II, III, y similares ( K6-2, K7, etc.) las frecuencias de bus de memoria ms habituales son: 66MHz, 100MHZ, 133MHz, y ya estn apareciendo mayores. Este valor se debe elegir de acuerdo a la velocidad de la memoria, ya que si usamos una memoria PC-66, con un bus de 100 MHZ, esta no funcionar, o lo har en forma errtica. A modo de ejemplo, un procesador Pentium III de 600MHz se configurar con un reloj de bus de 100MHz, y un multiplicador de 6, o reloj de 133MHz, y multiplicador de 4.5, dependiendo de lo que indiquen los fabricantes del procesador y el motherboard utilizado. En general, en caso de existir varias combinaciones de valores que den la frecuencia adecuada para el procesador (como en el caso anterior), y siempre que tanto el procesador, como la memoria y el motherboard lo admitan, se debe elegir la opcin correspondiente a la mayor velocidad de bus, pues esta ser la que brinde un mayor rendimiento del sistema. Change Supervisor Password Este men permite ingresar un password que ser utilizado de acuerdo a las opciones elegidas en el men Advanced CMOS Setup Auto-Detect Hard Disks Este men realiza la autodeteccin de todos los parmetros de todos los discos duros IDE instalados en los controladores incluidos en el motherboard, introduciendo automticamente estos datos en el men Standard CMOS Setup. En algunos BIOS, esta opcin detecta adems todos los otros dispositivos IDE conectados a los controladores En muchos BIOS actuales esta opcin ha desaparecido, quedando integrada al men Standard CMOS Setup donde se hace el proceso de autodeteccin de discos al presionar la tecla F3, u otra que indique el fabricante. Save Settings and Exit Esta opcin nos permite abandonar el SETUP, luego de salvar los cambios realizados. Elegir esta opcin es lo mismo que apretar la tecla [F10] en cualquier punto de este men. Luego de elegirla (o presionar [F10] ) se nos solicita la confirmacin, y presionando Y (yes) se reinicia el PC salvando los cambios realizados. Exit Without Saving Esta opcin abandona el SETUP, dejando sin efecto los cambios realizados, y luego de confirmarlo, reinicia el PC 28

9 BIBLIOGRAFIA
http://club.telepolis.com/mydream/Asm/ASM1.html http://www.uhu.es/tomas.mateo/ac2/manual%20ensamblador%20UHU.pdf

29

Você também pode gostar