Вы находитесь на странице: 1из 14

DOCENTE. Ing. W. Ramiro Russo N. ESTUDIANTE: - Hugo A.

Colque Vargas FECHA: Potos 26 03 - 13

UNIVERSIDAD AUTONAOMA TOMA FRIAS FACULTAD DE INGENIERIA TENOLOGICA

PRACTICA:

N 1

MATERIA: Sistemas de Computacion SIGLA:

CARRERA DE INGENIERIA ELECTRONICA

ETN802

PRACTICA DE INVESTIGACION 1. Investigar todo sobre las interrupciones en el Microprocesador (Up). Resp. Como investigacin realizada a cerca de la interrupciones en el Microprocesador tenemos lo siguiente: Las interrupciones son un tema de gran importancia al estudiar los microprocesadores de las computadoras, pues se trata de fenmenos continuos y no aislados en toda computadora. El simple hecho de presionar una tecla o hacer clic, produce una interrupcin. De igual forma el reloj de la computadora se mantiene constantemente generando un tipo de interrupciones que permite el buen funcionamiento de un sistema operativo. El microprocesador est en constante interaccin con los perifricos del computador. Estos ltimos requieren que en determinados momentos se ejecute otro programa, comnmente conocido como rutina de servicio de interrupcin, para procesar los datos que ellos generan. Ahora bien, cmo puede el microprocesador estar al tanto que en determinado momento el perifrico requiere de los servicios del microprocesador? Una de las respuestas a dicha pregunta es implementando una rutina que supervise constantemente el estado del perifrico. Cuando esta rutina detecta que se cumplen ciertas condiciones, se ejecuta la subrutina de servicio. Este mtodo o procedimiento trae como desventaja emplear innecesariamente ciclos de mquina del procesador en determinar el estado del perifrico, ya que la necesidad de ejecutar la subrutina de servicio es aleatoria. Una manera ms refinada de solucionar este problema es implementar un sistema en el microprocesador que permita que el perifrico le notifique la necesidad de sus servicios. Este es el concepto de una interrupcin, de modo que una interrupcin es una solicitud al microprocesador para que suspenda el programa en ejecucin, y se ejecute la rutina de servicio de interrupcin. A nivel fsico, una interrupcin se solicita activando una seal que llega a la unidad de control del microprocesador. El agente generador o solicitante de la interrupcin activa la mencionada seal cuando necesita que se le atienda, es decir, que se ejecute un programa que le atienda. Ante la solicitud de una interrupcin, siempre y cuando est habilitado ese tipo de interrupcin, la unidad de control realiza un ciclo de aceptacin de interrupcin. Este ciclo se lleva a cabo en cuanto termina la ejecucin de la instruccin mquina que se est ejecutando y consiste en las siguientes operaciones: Terminar la ejecucin en curso, el programa o proceso actual debe ser interrumpido temporalmente.

INTERRUPCIONES

Salvar algunos registros del procesador, como son el de estado y el contador de programa, de modo que la CPU, al terminar el proceso que dio lugar a la interrupcin, pueda seguir ejecutando el programa que fue interrumpido a partir de la ltima instruccin La CPU salta a la direccin donde est almacenada la rutina de interrupcin y ejecuta esa rutina que tiene como objetivo atender al dispositivo que gener la interrupcin. Una vez que la rutina de la interrupcin termina el procesador vuelve a tomar el control: el procesador retoma los procesos que quedaron pendientes y que se estaban ejecutando antes que se generara la interrupcin.

Motivos de las Interrupciones. Las interrupciones se pueden generar por diversas causas, que se pueden clasificar de la siguiente forma: Excepciones de programa: hay determinadas causas que hacen que un programa presente un problema en su ejecucin, por lo que deber generarse una interrupcin, de forma que el sistema operativo trate dicha causa. Ejemplos son el desbordamiento en las operaciones aritmticas, la divisin por cero, etc. Interrupciones de reloj: Cuando se dice que un microprocesador es de 1.60GHz, lo que se est especificando es que el oscilador o reloj que gobierna el ritmo de su funcionamiento interno produce una onda cuadrada con una frecuencia de 1.60GHz. El objetivo de estas interrupciones es hacer que el sistema operativo entre a ejecutar operaciones de forma sistemtica cada cierto intervalo de tiempo y que ningn programa monopolice el uso de la computadora. Interrupciones de E/S: Los controladores de los dispositivos de E/S necesitan interrumpir para indicar al procesador las operaciones que realizan. Excepciones del hardware: problemas en el funcionamiento de dispositivos de hardware generan tambin interrupciones. Instrucciones de TRAP: Estas instrucciones en cdigo ensamblador son capaces de generar interrupciones y se utilizan para solicitar o desactivar servicios o procesos del sistema operativo. Tratamiento de las Interrupciones. Una interrupcin se trata en todo caso, despus de terminar la ejecucin de la instruccin en curso. El tratamiento depende de cul sea el dispositivo de E/S que ha causado la interrupcin, ante la cual debe poder identificar el dispositivo que la ha causado. Importancia de las Interrupciones. El mecanismo de tratamiento de las interrupciones permite al sistema operativo utilizar la CPU en servicio de una aplicacin, mientras otra permanece a la espera de que concluya una operacin en un dispositivo de E/S. El hardware se encarga de avisar al sistema operativo cuando el dispositivo de E/S ha terminado y el sistema operativo puede intervenir entonces, si es conveniente, para hacer que el programa que estaba esperando por el dispositivo, se contine ejecutando. En ciertos intervalos de tiempo puede convenir no aceptar seales de interrupcin. Por ello las interrupciones pueden inhibirse por programa (aunque esto no deben poder hacerlo las mismas). Tipos de interrupciones. En este subapartado vamos a hacer una clasificacin de las distintas clases o tipos de interrupciones que nos podemos encontrar atendiendo a la fuente que las produce.

Por un lado distinguiremos si se producen por causas internas o externas al procesador y remarcaremos que este hecho est ntimamente ligado con que las interrupciones sean sncronas o asncronas: Interrupciones de Hardware Interrupciones por Software Excepciones. Interrupciones de Hardware. Estas son asncronas a la ejecucin del procesador, es decir, se pueden producir en cualquier momento independientemente de lo que est haciendo el CPU en ese momento. Las causas que lo producen son externas al procesador y a menudo suelen estar ligadas con distintos dispositivos de E/S. Interrupciones por Software. Las interrupciones por software son generadas por el programa en ejecucin. Para generarla, existen distintas instrucciones en el cdigo mquina que permiten al programador producir una interrupcin, suelen tener nemotcnicos tales como INT. Suelen ser de vital importancia ya que a partir de estas interrupciones se solicita al sistema operativo realizar determinadas funciones, para ello. Por ejemplo, en DOS se realiza la instruccin INT 0x21 y en Unix se utiliza INT 0x80 para hacer llamadas de sistema. Excepciones. Son interrupciones causadas por la propia CPU, cuando ocurre algo no deseado, por ejemplo una divisin por cero. En cuanto a las interrupciones de hardware, son producidas por varias fuentes, por ejemplo por el teclado, pues cada vez que se presiona una tecla se genera una interrupcin. Una interrupcin de tipo hardware es una seal producida por un dispositivo fsico del ordenador. Esta seal informa a la CPU que el dispositivo requiere de su atencin. La CPU parar el proceso que est ejecutando para atender la interrupcin. Cuando la interrupcin termina, la CPU reanuda en donde fue interrumpida, pudiendo ejecutar el proceso parado originalmente o bien otro proceso.

Funcionamiento del Mecanismo de Interrupciones. Cada dispositivo que desea comunicarse con el procesador por medio de interrupciones debe tener asignada una lnea nica capaz de avisar al CPU que le requiere para una operacin. Esta lnea es la llamada IRQ ("Interrupt ReQuest", [[peticin de interrupcin] Las IRQ son lneas que llegan al controlador de interrupciones un componente de hardware dedicado a la gestin de las interrupciones, y que puede estar integrado en el procesador principal o ser un circuito separado conectado al procesador principal. El controlador de interrupciones debe ser capaz de habilitar o inhibir lneas de interrupcin (operacin llamada comnmente enmascarar por la utilizacin de una mscara), y establecer prioridades entre las distintas interrupciones habilitadas. Cuando varias lneas de peticin de interrupcin se activan a la vez, el controlador de interrupciones utilizar estas prioridades para escoger la interrupcin sobre la que informar al procesador principal. Tambin puede darse el caso de que una rutina de tratamiento de interrupcin sea interrumpida para realizar otra rutina de tratamiento de una interrupcin de mayor prioridad a la que se estaba ejecutando. Sin embargo hay interrupciones que no se pueden enmascarar o deshabilitar, las conocidas como interrupciones no enmascarables o NMI. Un procesador principal que no tenga un controlador de interrupciones integrado, suele tener una nica lnea de interrupcin llamada habitualmente INT. Esta lnea es activada por el controlador de interrupciones cuando tiene una interrupcin que servir.

Al activarse esta lnea, el procesador consulta los registros del controlador de interrupciones para averiguar cul IRQ hay que atender. A partir del nmero del IRQ busca en la tabla de vectores de interrupcin la direccin de la rutina que debe llamar para atender una peticin del dispositivo asociado a dicha IRQ. Las rutinas de interrupcin generalmente toman un pequeo tiempo de ejecucin. Pasos para el procesamiento de una IRQ: 1. Terminar la ejecucin de la instruccin de mquina en curso. 2. Salva el valor de contador de programa, IP, en la pila, de manera que en la CPU, al terminar el proceso, pueda seguir ejecutando el programa a partir de la ltima instruccin. 3. La CPU salta a la direccin donde est almacenada la rutina de servicio de interrupcin (Interrupt Service Routine (ISR)) y ejecuta esa rutina que tiene como objetivo atender al dispositivo que gener la interrupcin. 4. Una vez que la rutina de la interrupcin termina, el procesador restaura el estado que haba guardado en la pila en el paso 2 y retorna al programa que se estaba usando anteriormente. Lneas de Peticin de Interrupcin. En sistemas ms modernos utilizan la arquitectura APIC de Intel con 24 lneas y 8 extra para enrutar las interrupciones PCI. Nombre Int (hex) XT: Descripcin AT: Descripcin NMI --Paridad* Paridad* IRQ0 08 Temporizador* Temporizador* IRQ1 09 Teclado* Teclado* IRQ2 0A Reservado Interrupciones 8 a 15 (PIC#2) IRQ3 0B Puertos serie COM2/COM4 Puerto serie COM2/COM4 IRQ4 0C Puertos serie COM1/COM3 Puertos serie COM1/COM3 IRQ5 0D Disco duro Impresora secundaria LPT2 IRQ6 0E Disquete Disquete IRQ7 0F Impresora primaria LPT1 Impresora primaria LPT1 IRQ8 70 No existe Reloj de tiempo real* IRQ9 71 No existe Redirigido a IRQ2* IRQ10 72 No existe no asignado IRQ11 73 No existe no asignado IRQ12 74 No existe Ratn PS2 IRQ13 75 No existe Coprocesador 80287* IRQ14 76 No existe Contr. disco IDE primario IRQ15 77 No existe Contr. disco IDE secundario Tabla Descriptora Para el Microprocesador I386.

Conclusiones. Esta investigacin ha sido de gran beneficio para la comprensin de las interrupciones y su utilidad en cualquier computadora. Se ha podido examinar y valorar cmo el mecanismo de las interrupciones es una eficiente manera de hacer que las computadoras realicen tareas eficientemente, dando prioridad a las tareas que requieren atencin en determinados momentos y permitiendo una interaccin correcta de todo el sistema computacional como conjunto. Se ha estudiado cmo las interrupciones son una forma de comunicacin que tiene el microprocesador con los diferentes componentes de hardware y con el software mismo. Por esa razn, todo sistema operativo utiliza las interrupciones para administrar eficientemente los recursos de la computadora y brindar mejores resultados a los usuarios. Como equipo de trabajo, se han logrado los objetivos propuestos al iniciar esta investigacin y se ha podido comprender el funcionamiento bsico e importancia de las interrupciones en las computadoras. Bibliografa. Wikipedia. Unidad de Control. http://es.wikipedia.org/wiki/Un idad_de_control Universidad Tecnolgica Nacional. Facultad Regional Mendoza. Introduccin a los Sistemas Operativos. http://web.frm.utn.edu.ar/soperativos/Archivos/procesos.pdf Wikipedia. Interrupciones y excepciones. http://es.wikipedia.org/wiki/Si stema_operativo#Excepciones.

Вам также может понравиться