You are on page 1of 22

Sistemas Operativos.

Tema 1 Arquitectura Bsica de los Computadores


http://www.ditec.um.es/so
Departamento de Ingeniera y Tecnologa de Computadores Universidad de Murcia

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p.

Arquitectura Bsica de los Computadores


Estructura y Funcionamiento General Procesador Memoria Entrada/Salida Interrupciones Proteccin
Bibliografa bsica: Tanenbaum[P1-3, C1.4] Bibliografa complementaria: Silberschatz[C2], Carretero[C1], Stallings[C1]

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p.

Estructura y Funcionamiento General


Un sistema de cmputo moderno es un sistema complejo Para administrar todos estos dispositivos y proporcionar una interfaz sencilla del hardware capa software: sistema operativo
Banking system Compilers Airline reservation Editors Web browser Command interpreter Application programs

System programs

Operating system Machine language Microarchitecture Physical devices Hardware

Ubicacin del sistema operativo


Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p.

Estructura y Funcionamiento General


Monitor Keyboard Floppy disk drive Hard disk drive

CPU

Memory

Video controller

Keyboard controller

Floppy disk controller

Hard disk controller

Bus

Visin simplicada de un ordenador

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p.

Procesador
La CPU es el cerebro del ordenador Ciclo bsico de funcionamiento: 1. Leer instruccin de memoria 2. Decodicarla para determinar su tipo y operandos 3. Ejecutarla 4. Calcular la posicin de la siguiente instruccin y volver al paso 1 Cada CPU ejecuta un conjunto de instrucciones especco

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p.

Procesador
Conjunto de registros: memoria en la propia CPU Registros generales de datos Registros especiales: contador de programa apuntador de pila palabra de estado del programa El contenido de los registros determina el contexto de ejecucin de un programa en un instante dado.

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p.

Procesador
Para mejorar el desempeo de las CPUs ejecutar varias instrucciones al mismo tiempo Varios mecanismos:
Execute unit Fetch unit Fetch unit Decode unit Execute unit Fetch unit (a) Decode unit (b) Decode unit Holding buffer Execute unit

Execute unit

Complican la construccin de compiladores y sistemas operativos

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p.

Procesadores
Dos modos de funcionamiento: modos ncleo y usuario Modo ncleo:
Permite ejecutar todas las instrucciones posibles de la CPU y acceder a todo el hardware En el que se ejecuta el sistema operativo

Modo usuario:
Permite ejecutar un subconjunto de las instrucciones y proporciona acceso limitado al hardware Instrucciones prohibidas: E/S, proteccin de memoria, etc En el que se ejecutan los programas de usuario Servicios del SO: mediante llamadas al sistema

Paso de un modo a otro: interrupciones software (trap, int, . . . ) o hardware (divisin por cero, dispositivos de E/S)
Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p.

Memoria
Estructura jerrquica:
Typical access time 1 nsec 2 nsec 10 nsec 10 msec 100 sec Registers Cache Main memory Magnetic disk Magnetic tape Typical capacity <1 KB 1 MB 64-512 MB 5-50 GB 20-100 GB

Cada nivel es un subconjunto del nivel inferior Hay informacin que no se encuentra en un nivel Aciertos/fallos y algoritmos de reemplazo Modicacin en un nivel problemas de coherencia propagacin de modicacin a niveles inferiores
Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p.

Jerarqua de Memoria
La jerarqua descrita es tpica, pero hay sistemas con ms capas y otros con menos Otros tipos de memoria: ROM: memoria lenta no voltil. Utilizada para almacenar cdigo de arranque, cdigo de control de dispositivos, etc. EEPROM y ash: memorias lentas no voltiles pero actualizables CMOS: memoria voltil alimentada por batera. Para mantener fecha y hora, y parmetros de conguracin

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p. 1

Memoria Principal
Elemento ms importante de la jerarqua de memoria que debe administrar el SO Los SSOO modernos suelen cargar varios programas en memoria Hay que proteger a unos programas de otros y al SO de stos Adems, un programa puede colocarse en cualquier posicin de memoria Problema de relocalizacin Varias soluciones para ambos problemas: Registro base y lmite Memoria virtual, . . .

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p. 1

Registros Base y Lmite


Registro lmite tamao mximo del programa y los datos Registro base posicin de inicio del programa en memoria
Address 0xFFFFFFFF Registers when program 1 is running Limit-2 User program and data Base Base-2 Limit-1 Base-1 User-1 data User program Limit-1 Base-1 Registers when program 2 is running User program and data Limit-2 User-2 data Base-2

Limit

Operating System 0 (a)

Operating System (b)

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p. 1

Direccin virtual/fsica
Direccin de memoria

<

registro lmite?

SI sumarle el registro base acceder a memoria NO la direccin no es vlida trap al S.O.

Direccin virtual generada por el programa Direccin fsica accedida en memoria MMU Unidad de administracin de memoria (memory management unit):
Verica las direcciones generadas por el programa Convierte las direcciones virtuales en fsicas

El manejo de la MMU es funcin del S.O. Cambio de contexto modicar la conguracin de la MMU

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p. 1

Dispositivos de E/S
Dispositivo de E/S controladora + dispositivo Controladora del dispositivo:
Dispositivo electrnico que controla fsicamente al dispositivo Acepta comandos del S.O. y los ejecuta Presenta al S.O. una interfaz ms sencilla del dispositivo Tiene una serie de registros para comunicarse con el S.O.

Manejador de dispositivo SW que se comunica con la controladora: da rdenes y procesa respuestas


Se ejecuta en modo kernel Como parte del kernel En tiempo de arranque lo carga el S.O. El S.O. lo carga cuando lo necesita (sin reiniciar)

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p. 1

Dispositivos de E/S
Manejador recibe una peticin del S.O.:
escribe la peticin en los registros de la controladora lee de los registros el resultado de la operacin

Cmo se accede a esos registros?


Se corresponden con el espacio de direcciones de la memoria principal: Se leen/escriben como si fueran palabras de memoria No se necesitan instrucciones especiales de E/S Fcil proteccin: proteccin memoria proteccin HW Se colocan en un espacio de puertos de E/S especial: Cada registro tiene una direccin de puerto. Los registros se leen/escriben mediante instrucciones IN y OUT especiales ejecutables en modo kernel No se ocupa parte del espacio de direcciones de la memoria

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p. 1

Espera Activa
Llamada al sistema llamada al manejador del dispositivo Manejador pide a la controladora la operacin de E/S Manejador a la controladora: ha terminado mi peticin?
NO contina esperando S:
Manejador de dispositivo coloca los datos donde se necesitan Regresa S.O. devuelve el control al proceso invocador

Esto se conoce como espera activa CPU ocupada: controlando cundo termina el dispositivo Desperdicio de CPU (tanto de ciclos como de energa)

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p. 1

Interrupciones
Manejador de dispositivo:
pide a la controladora la operacin de E/S le pide tambin generar una INTERRUPCIN al terminar regresa

S.O.:
bloquea al proceso invocador (no le pasa la CPU) hace otras cosas

Al nalizar la transferencia interrupcin generada por la controladora


Disk drive Current instruction CPU 1 2. Dispatch to handler (a) Interrupt handler (b) 3 Next instruction Interrupt controller 4 Disk controller 2 1. Interrupt 3. Return

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p. 1

Interrupciones (i)
CPU acepta la interrupcin pasa a modo kernel y salta al manejador de interrupciones del dispositivo No de dispositivo ndice de una zona de memoria (vector de interrupciones) que contiene las direcciones de los manejadores de interrupciones El manejador de interrupciones:
Pregunta al dispositivo su estado Cuando termina devuelve el control al programa de usuario que se estaba ejecutando (que no tiene por qu ser el que solicit la operacin de E/S)

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p. 1

Interrupciones (ii)
Qu pasa si llega una interrupcin mientras se trata otra? Paramos la interrupcin actual? Perdemos la nueva? Mecanismo en la CPU para inhabilitar interrupciones:
Empieza a tratar una interrupcin inhabilita las interrupciones Si llega una nueva dispositivo seguir aplicando la interrupcin CPU no se interrumpe mientras estn inhabilitadas Termina tratamiento habilita de nuevo las interrupciones CPU se puede volver a interrumpir

Qu pasa si varios dispositivos esperan a la CPU para su interrupcin?


Controladora de interrupciones decide a cul atender primero Prioridades estticas asignadas a los dispositivos

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p. 1

DMA: Acceso Directo a Memoria


Chip que controla el ujo de bits entre la memoria principal y alguna controladora CPU no interviene en las transferencias memoria controladora Tambin basado en interrupciones Funcionamiento:
El S.O. localiza un buffer de memoria Programa la controladora DMA y la controladora especca El DMA realiza la transferencia buffer de la controladora buffer de memoria Controladora de DMA avisa a la CPU mediante una interrupcin CPU trata esa interrupcin

Dispositivos muy rpidos (discos duros, tarjetas de sonido, . . . )

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p. 2

Buses
Cache bus Local bus Memory bus Level 2 cache PCI bridge PCI bus Main memory

CPU

SCSI

USB

ISA bridge

IDE disk

Graphics adaptor Monitor

Available PCI slot

Mouse

Keyboard

ISA bus

Modem

Sound card

Printer

Available ISA slot

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p. 2

Proteccin
Varios procesos en ejecucin Proteccin Proteccin del HW Operacin en modo dual:
Modo ncleo: instrucciones de E/S, conguracin MMU, . . . Modo usuario: instrucciones de acceso al HW ilegales

Proteccin de memoria Registros base y lmite, . . . :


Protege a unos programas de otros y al S.O. Protege el vector de interrupciones

Proteccin de la CPU Interrupciones peridicas (cronmetros o relojes, . . . ):


Interrupciones ejecucin del sistema operativo Impiden que un proceso se apropie de la CPU

Proteccin total del S.O. y el HW uso simultneo de los tres mecanismos

Sistemas Operativos. Tema 1 Arquitectura Basica de los Computadores p. 2

You might also like