Está en la página 1de 25

1.

4 EL CONCEPTO DE INTERRUPCIONES
1.5 LLAMADAS A SERVICIOS DEL SISTEMA
1.6 MODOS DE DIRECCIONAMIENTO
LENGUAJES DE
INTERFAZ
QUE ES UNA INTERRUPCIN?
Una interrupcin es una operacin del hardware que indica a la
CPU que detenga la ejecucin de lo que estaba haciendo,
conserva la situacin del proceso y enva a la CPU a una
direccin determinada en la que tiene un programa de control
de interrupcin o de servicio de interrupciones.
INTERRUPCIONES POR SOFTWARE: Son aquellas que
son programables y que podemos cambiar. Las
interrupciones de software podemos llegar a manejarlas y
por ello el ensamblador nos proporciona una instruccin que
nos permita poner en funcionamiento una determinada
rutina de interrupcin; esta instruccin es INT.

Clases de interrupciones
INTERRUPCIONES INTERNAS: son aquellas provocadas
dentro del propio procesador por una situacin anormal de
funcionamiento de alguna de sus partes.

INTERRUPCIONES DE HARDWARE: son aquellas
provocadas por los dispositivos perifricos, controladas por
un procesador especial de interrupciones (8259) o IPC
(Controlador de Interrupciones Programable)


Interrupciones por hardware mascarables.
Aquellas en las que el usuario decide si quiere o
no ser interrumpido.

Interrupciones por hardware no mascarables
(NMI). Aquellas que siempre interrumpen al
programa.

INTERRUPCIONES POR SOFTWARE
En la familia de procesadores 8088/86 las instrucciones por
software se ejecutan con ayuda de las instrucciones INT e
IRET. Se tienen 256 interrupciones diferentes. Desde la
interrupcin 0 hasta la interrupcin 255 (FF).
Asociado con el concepto de interrupciones se tiene un
rea de memoria llamada vector de interrupciones la cual
contiene las direcciones de las rutinas de servicio de cada
interrupcin. Esta rea se encuentra en el segmento
0000:0000

INT.
Formato INT nm_entero. Ese "nm_entero",
asociado a la instruccin, es un identificativo que nos
dice mediante la aplicacin de un algoritmo, la
posicin de Memoria Interna donde se encuentra
almacenada la direccin de comienzo de la rutina de
tratamiento de esa interrupcin.
SERVICIO A DISPOSITIVOS PERIFRICOS:

INT 10H............................................SERVICIO DEL VIDEO
INT 13H............................................SERVICIOS DE DISKETTE
INT 14H............................................COMUNICACIONES
INT 15H............................................SERVICIOS DEL SISTEMA
INT 16H............................................SERVICIOS DEL TECLADO
INT 17H............................................SERVICIOS DE IMPRESORA
STATUS DEL EQUIPO:
INT 11H............................................LISTADO DEL EQUIPO
INT 12H............................................TAMAO DE MEMORIA
HORA Y FECHA:
INT 1AH............................................HORA Y FECHA
PRINT SCREEN:
INT 5H.............................................IMPRESIN DE PANTALLA
INT 18H...........................................ACTIVAR LA BASIC-ROM
SERVICOS ESPECIALES:
INT 19H...........................................ACTIVAR RUTINA DE
ARRANQUE CARGADO
STATUS DEL EQUIPO:
INT 11H............................................LISTADO DEL
EQUIPO
INT 12H............................................TAMAO DE
MEMORIA
HORA Y FECHA:
INT 1AH............................................HORA Y FECHA
PRINT SCREEN:
INT 5H.............................................IMPRESIN DE
PANTALLA
INT 18H...........................................ACTIVAR LA
BASIC-ROM
SERVICOS ESPECIALES:
INT 19H...........................................ACTIVAR RUTINA
DE
ARRANQUE CARGADO
IRET
La instruccin INT se complementa con la
instruccin IRET, que es la instruccin utilizada por
el manejador de interrupciones para regresar el
control del CPU al programa que ha sido
interrumpido.
INTERRUPCION POR HARDWARE
Las interrupciones tienen distintas prioridades predefinidas que indican
que interrupcin tiene mayor prioridad y no puede se interrupida por una
de menor prioridad, as el Registro de Interrupciones Activas (ISR) indica
el nmero de la interrupcin en concreto que se est realizando. Si llega
otra interrupcin de hardware con menor o igual prioridad no se ejecutar,
pues se asume que an est en ejecucin la anterior, mientras el ISR est
con su nmero.
Los IRQ se encuentran numerados, y cada dispositivo hardware
se encuentra asociado a un nmero IRQ. Por ejemplo, el reloj (en IRQ 0)
tiene una prioridad ms alta que el teclado (IRQ 1).
(Interrupt ReQuest - solicitud de interrupcin). Canales
utilizados para gestionar dispositivos perifricos. Las
IRQ son las lneas de interrupcin que utilizan
los dispositivos para avisar al microprocesador que
necesitan su atencin.
LLAMADAS AL SISTEMA
Las llamadas son peticiones a ejecucin de rutinas y proporcionan
la interfaz entre el sistema operativo y un programa en ejecucin.
Estas llamadas son instrucciones de lenguaje ensamblador y se
presentan en los manuales que emplean los programadores de
este lenguaje.

Las llamadas al sistema para ejecucin y el control de programas,
usualmente incluyen un conjunto completo de los servicios
accesibles por la va del lenguajes de rdenes, tales como: RUN,
EXECUTE, ABORT y planificacin relacionada con el tiempo,
adems los usuarios con las llamadas del sistema pueden
suspender, establecer o cambiar atributos del tiempo de ejecucin
de uno ms programas.
LLAMADAS AL SISTEMA
Las llamadas del sistema para el gestor de recursos,
proporcionan servicios para la asignacin, reserva y
reclamacin de los recursos del sistema. Por ejemplo,
existen llamadas del sistema para extender o reducir la
cantidad de memoria poseda por el programa que se
llama. Las llamadas del sistema pueden asignar o
reservar otros tipos de objetos del sistema y despus
destruir o devolver su custodia al sistema operativo.
LAS LLAMADAS AL SISTEMA SE PUEDEN
AGRUPAR EN CINCO CATEGORAS:


1. Control de proceso (Crear, cargar, ejecutar un
proceso, obtener y establecer atributos,
esperar un suceso, liberar memoria, abortar y
terminar proceso).

2 Manipulacin de archivos (Crear, abrir, leer, obtener y
establecer atributos, cerrar y eliminar archivos).

3. Manipulacin de perifricos (Solicitar, escribir, leer,
obtener y establecer atributos, liberar perifrico).

4. Manipulacin de la informacin (Obtener fecha y hora,
establecer fecha y hora, obtener y establecer datos del
sistema, obtener y establecer atributos).

5. Comunicaciones (Crear conexin, enviar mensajes,
recibir mensajes, transferir informacin del estado y
eliminar conexin.
MODOS DE DIRECCIONAMIENTO
Las operaciones se hacen entre registros o
registros y memoria, pero nunca entre memoria
y memoria (salvo algunas operaciones con
cadenas de caracteres).

Los modos de direccionamiento determinan el
lugar en que reside un operando, un resultado o
la siguiente instruccin a ejecutar segn el caso.
Es directo cuando la instruccin contiene
el lugar donde se encuentra el operando.

Segn el lugar donde se encuentra el
operando puede ser:
Direccionamiento directo a registro
Direccionamiento directo a memoria
DIRECCIONAMIENTO DIRECTO

Direccionamiento Relativo
La instruccin indica el desplazamiento del
operando con respecto a un puntero:

La direccin efectiva es calculada por la unidad de
control sumando, o restando, el desplazamiento al
puntero de referencia que suele estar en un registro.

Dependiendo del puntero se tienen diferentes modos
de direccionamiento.
Direccionamiento Relativo
Ventajas
Las instrucciones son
ms compactas.
El cdigo puede
cambiar de lugar en el
mapa de memoria con
cambiar el valor del
puntero.
Gran facilidad de
manejo de estructuras
de datos.
Inconvenientes
Se requiere una
operacin adicional
para el clculo de la
direccin del
operando.
Direccionamiento Indirecto
La posicin indicada por la instruccin no es el operando sino
la direccin de memoria en la que se encuentra, por lo que se
necesita un acceso adicional a memoria.

La direccin de memoria se puede dar mediante:
Direccionamiento directo a memoria
Direccionamiento relativo
Es posible que se realicen mltiples niveles de indireccin.
Su utilidad ms comn es la de acceso a diversas
informaciones mediante tablas de punteros
Direccionamiento Implcito
En la instruccin no se indica
explcitamente el lugar donde se
encuentra el operando.

Requiere que el programador conozca con
que operandos se est trabajando.

También podría gustarte