You are on page 1of 4

Sistemas Operativos Ingeniera de Sistemas

Captulo I

SISTEMAS OPERATIVOS
Tema II. Conceptos Arquitectnicos de la computadora
ESTRUCTURA Y FUNCIONAMIENTO DE LA COMPUTADORA La computadora es una mquina destina a procesar datos. En una visin esquemtica, como la figura, este procesamiento involucra dos flujos de informacin: el de datos y el de instrucciones. Se parte del flujo de datos que han de ser procesados. Este flujo de datos es tratado mediante un flujo de instrucciones de mquina, generado por la ejecucin de un programa, y produce el flujo de datos resultado. 1. ARQUITECTURA VON NEUMANN Una computadora con arquitectura Von Neumann est compuesta por:

1.1 MEMORIA PRINCIPAL: (RAM y ROM), en ella han de residir: los datos a procesar, el programa mquina a ejecutar y los resultados. Un mdulo de memoria consta de un conjunto de ubicaciones definidas por direcciones enumeradas secuencialmente. Cada ubicacin contiene un nmero binario que puede ser interpretado como una instruccin o como un dato. 1.2 PROCESADOR (O unidad central de proceso (CPU - UCP)) Se denomina as al conjunto de la Unidad Aritmtico Lgica y de Control. Actualmente, el procesador suele construirse en un nico circuito integrado. 1.2.1 Unidad Aritmtico Lgica Permite realizar una serie de operaciones aritmticas y lgicas sobre uno o dos operandos. Los datos estn almacenados en un conjunto de registros o bien provienen de la memoria principal. Los resultados tambin se almacenan en registros o en la memoria principal 1.2.2 Unidad de Control Es la que se encarga de hacer funcional al conjunto, realiza las siguientes funciones: - Lee de memoria las instrucciones mquina que forman el programa - Interpreta cada instruccin leda - Lee los datos de memoria referenciados por cada instruccin - Ejecuta cada instruccin - Almacena el resultado de cada instruccin

Ingeniera de Sistemas UNSCH/QECM

Pgina 1 de 4

Sistemas Operativos Ingeniera de Sistemas

Captulo I

Tiene asociado una serie de registros: - Contador de programa(PC): indica la direccin de la siguiente instruccin de mquina a ejecutar - Puntero de pila (SP): sirve para manejar una pila en memoria principal - Registro de instruccin (RI) que permite almacenar la instruccin de mquina a ejecutar - Registro de estado (RE) almacena diversa informacin producida por la ejecucin de alguna de las ltimas instrucciones del programa 1.3 UNIDAD DE ENTRADA/SALIDA (E/S) Se encarga de hacer la transferencia de informacin entre la memoria principal (o los registros) y los perifricos. La entrada/salida se puede hacer bajo el gobierno de la unidad de control (E/S programada) o de forma independiente (DMA) como veremos ms adelante. 2. MODELO DE PROGRAMACIN DE LA COMPUTADORA Cuestiones generales Elementos de almacenamiento: elementos de almacenamiento de la computadora que son visibles a las instrucciones de mquina. En esta categora estn incluidos: - registros generales - contador de programa - puntero de pila - regsitro de estado - memoria principal Juego de instrucciones: define las operaciones que es capaz de hacer la computadora Secuencia de Funcionamiento: define el modo en que se van ejecutando las instrucciones mquina Cuando hablamos de programacin de la computadora, debemos tener en cuenta: 2.1 Niveles de ejecucin Nivel de Usuario: nivel menos permisivo, la computadora solamente ejecuta un subconjunto de las instrucciones mquina, quedando prohibida las dems. As tambin acceso limitado a determinados registros, o a partes de estos registros y a determinadas zonas del mapa de memoria y de E/S. Nivel de Ncleo: a este nivel la computadora ejecuta todas sus instrucciones sin ninguna restriccin y permite el acceso a todos los registros y mapas de direcciones

2.2 Secuencia de funcionamiento de la computadora La unidad de control es la que establece el funcionamiento de la computadora. Basado en una secuencia sencilla, que se repite a alta velocidad (cientos de millones de veces por segundo): i. lectura de memoria principal: de la instruccin mquina apuntada por el contador de programa ii. incremento del contador del programa para que apunte a la siguiente instruccin de mquina iii. ejecucin de la instruccin INICIO
Leer la siguiente instruccin Incrementa contador Ejecutar la instruccin Esta secuencia es lineal (en forma consecutiva instrucciones en direcciones consecutivas) Y forma un bucle infinito La unidad de control est continua e ininterrumpidamente realizando esta secuencia

FIN

Para que la computadora haga algo til se ha de tener adecuadamente cargados en memoria un programa de mquina con sus datos y hemos de conseguir que el contador del programa apunte a la instruccin mquina inicial del programa.
Pgina 2 de 4

Ingeniera de Sistemas UNSCH/QECM

Sistemas Operativos Ingeniera de Sistemas

Captulo I

OBSERVACION Existen mecanismos para alterar la ejecucin lineal (que no siempre es la ms adecuada) con lo que se consigue alterar el contenido de PC, con esto se consigue que salte o bifurque a otro segmento del programa o a otro programa: - Instrucciones de mquina de salto o bifurcacin (rompe la secuencia y pasa a otro segmento del mismo) - Interrupciones externas o internas (que hacen que la Unidad de control modifique el PC saltando a otro programa) - Instrucciones de mquina TRAP (similar a la interrupcin) 2.3 Registros de control y estado La Unidad de Control tiene asociada una serie de registros de control y estado. Dependen de la arquitectura de la computadora. - Contador de programa: contiene la direccin de la siguiente instruccin - Puntero de pila: Contiene la direccin de la cabecera de la pila - registro de instruccin (RI) contiene instruccin en curso de ejecucin - registro de estado (RS) contiene: Bits de estado aritmticos (signo, acarreo, cero, desbordamiento) Bits de nivel de ejecucin (nivel en el que ejecuta el procesador) Bits de control de interrupciones. Establecen las interrupciones que se pueden aceptar - registro identificador de espacio de direccionamiento RIED, identifica el espacio de mapa de memoria que puede utilizar el programa en ejecucin - otros registros de gestin de memoria 3. INTERRUPCIONES (seales al procesador) A nivel fsico, una interrupcin se solicita activando una seal que llega a la unidad de Control. El agente generador o solicitante de la interrupcin ha de activar la mencionada seal cuando necesite que se le atienda, es decir, que se ejecute un programa que le atienda. Ante esta solicitud (siempre en cuando est habilitado este tipo de interrupcin) la Unidad de Control realiza un ciclo de aceptacin de la interrupcin, que se lleva a acabo en cuanto termina la ejecucin de la instruccin mquina que se est ejecutando y consiste en: - Salva algunos registros del procesador (estado y contador de programa) - Eleva el nivel de ejecucin del procesador, pasndolo a ncleo - Carga un nuevo valor en el PC por lo que pasa a ejecutar otro programa La Unidad de Control utilizando direccionamiento indirecto toma la mencionada direccin de una tabla de interrupciones y la carga en el contador del programa. El resultado de esta carga es que la siguiente instruccin mquina ejecutada es la primera del mencionado programa de tratamiento de interrupcin. OJO: esto es parte del SO por razones de seguridad, para evitar que los programas que ejecuta el usuario puedan perjudicar los datos o programas de otros usuarios.
Las interrupciones se pueden generar por diversas causad: Excepciones de programa Interrupciones de reloj Interrupciones de E/S Excepciones de hardware Instrucciones de TRAP

Acceso a la rutina de tratamiento de la interrupcin

Como complemento al mecanismo de aceptacin de interrupcin, las computadoras incluyen una instruccin mquina para retorno, llamada RETI, el efecto es restituir los registros de estado y PC desde el lugar en que fueron salvados al aceptarse la interrupcin.

OJO: Varias seales de interrupcin, cada una tiene una prioridad - se atiende la de mayor prioridad la computadora activa un mecanismo de inhibicin selectiva.
Ingeniera de Sistemas UNSCH/QECM Pgina 3 de 4

Sistemas Operativos Ingeniera de Sistemas

Captulo I

4. JERARQUIA DE MEMORIA Las limitaciones de diseo de la memoria de un computador se pueden resumir en tres preguntas: Qu cantidad?: Segn sea la capacidad, probablemente se construirn aplicaciones que la utilicen. Qu velocidad?: Para lograr un mayor rendimiento, la memoria debe ser capaz de ir al ritmo del procesador. Y qu coste?: el coste de la memoria debe ser razonable en relacin a los otros componentes. Estas tres caractersticas compiten entre s: coste, capacidad y tiempo de acceso. A menor tiempo de acceso, mayor coste por bit A mayor capacidad, menor coste por bit A mayor capacidad, mayor tiempo de acceso La salida a este dilema no es depender de un nico componente de memoria o una tecnologa, sino emplear una jerarqua de memoria. A medida que se desciende por la jerarqua se tienen las siguientes condiciones: 1. Disminucin del coste por bit 2. Aumento de la capacidad 3. Aumento del tiempo de acceso 4. Disminucin de la frecuencia de acceso a la memoria por parte del procesador Migracin de la informacin La explotacin correcta de la jerarqua de memoria exige tener, en cada momento, la informacin adecuada en el nivel adecuado. Para ello, la informacin ha de moverse de nivel, esto es, ha de migrar de un nivel a otro. Esta migracin puede ser: - Bajo demanda explcita (procesador) - Automtica (memoria cach y memoria virtual) 5. MEMORIA VIRTUAL La memoria virtual utiliza dos niveles de la jerarqua de memoria, la principal y una memoria de respaldo (que suele ser el disco, aunque puede ser una memoria expandida). La gestin de la memoria virtual es automtica y la realiza el sistema operativo con ayuda del hardware de la mquina. Existe una unidad de Hardware, denominada MMU (Memo Managemet Unit) que traduce las direcciones virtuales a direcciones de memoria principal. 6. ENTRADA/ SALIDA Los mecanismos de E/S de la computadora tiene por objetivo el intercambio de informacin entre los perifricos y la memoria o los registros del procesador. 1.1 Perifricos Veamos el esquema general de un perifrico El registro de datos sirve para el intercambio de datos. En l ir cargando el controlador los datos ledos y de l ir extrayendo los datos para su escritura en el perifrico. Un bit de registro de estado sirve para indicar que el controlador puede transferir una palabra. En las operaciones de lectura esto significa que ha cargado en el registro de datos un nuevo valor, mientras que en las de escritura significa que necesita un nuevo dato. Otros bit de este registro sirven para que con controlador indique los problemas que ha encontrado en la ejecucin de la ltima operacin de E/S. El registro de control sirve para indicar al controlador las operaciones que ha de realizar.

Ingeniera de Sistemas UNSCH/QECM

Pgina 4 de 4

You might also like