Sunteți pe pagina 1din 8

Captulo 1: Introduccin

Sistema Operativo:

Marta Fuentes 2873031-4

Programa que acta como intermediario entre el usuario y el hardware. Es un asignador de recursos: Los gestiona y toma decisiones entre requerimientos conflictivos para su utilizacin eficiente y justa. Es un programa de control: Controla la ejecucin de programas para evitar errores y usos impropios.

Objetivos de un S.O.:
Ejecutar programas del usuario y solucionar problemas que puedan ocurrir. Hacer que un sistema computacional sea conveniente de utilizar. Usar el Hardware computacional de una manera eficiente.

Encendido de un computador:
Bootstrap: o Se carga cuando el computador se enciende o reinicia. o Se almacena en ROM o EPROM o Inicializa todos los aspectos del sistema. o Carga el kernel del SO e inicia la ejecucin.

Kernel:
nico programa que corre todo el tiempo. Todo lo dems son programas de sistema o aplicaciones.

Componentes de un Sistema Computacional:


Hardware: Recursos bsicos: CPU, memoria y dispositivos I/O. Sistema Operativo: Controla y coordina el uso del HW. Aplicaciones: Definen la forma en que se emplean los recursos para resolver los problemas de los usuarios. Usuarios: El que manipula el sistema computacional. Usuarios

Aplicaciones Sistema Operativo Hardware

Organizacin de un Sistema Computacional:


La operacin de un Sistema Computacional requiere: Una o ms CPU y controladores con acceso a la memoria. Ejecucin concurrente de CPU y controladores que compitan por ciclos de memoria.

Operacin de un Sistema Computacional:


Dispositivos de I/O y CPU pueden funcionar concurrentemente. Cada controlador tiene a su cargo tipos distintos de dispositivos. Cada controlador tiene un buffer local. La CPU mueve datos entre memoria y los buffers locales. El I/O se realiza slo entre el dispositivo y el buffer local del controlador. Controlador y CPU se comunican mediante interrupciones.

Interrupciones:
Llamada no planificada a una subrutina. El control se transfiere a una subrutina de servicio, a travs del vector de interrupcin. El vector de interrupcin contiene la direccin de la rutina de servicio.

La arquitectura de manejo salva la direccin de la prxima interrupcin. Al procesar una interrupcin se desactivan otras interrupciones para prevenir prdidas de interrupcin. Trap: Interrupcin generada por software (por error o por requerimiento) Interrupt driven: Cualquiera de las acciones del SO tiene como causa una interrupcin. Ante una interrupcin el So preserva el estado de la CPU almacenando sus registros en un Stack.

Diagrama de tiempo de interrupciones

Estructura del I/O:


I/O Sincrnico: El control slo retorna al usuario cuando el I/O termina. o Instruccin wait deja CPU ociosa hasta la prxima interrupcin. o Otra opcin: loop de espera. o Slo un I/O por vez (No hay concurrencia). I/O Asincrnico: El control retorna al usuario sin esperar trmino del I/O. o Se inicia mediante Llamada al sistema. o Tabla de Estados de Dispositivos: Contiene una entrada para cada dispositivo de I/O, indicando tipo, direccin y estado. o El SO indexa esta tabla para saber su estado y modificarla.

Estructura del Acceso Directo a memoria (DMA)


Permite que dispositivos de I/O rpidos puedan transferir informacin a tasas cercanas a la velocidad de memoria. Mediante controladores se transfieren bloques de datos entre los buffer de almacenamiento en forma directa a la memoria, sin intervencin de la CPU. Solo se genera una interrupcin por bloque en vez de una interrupcin por Byte cuando no hay DMA.

Estructura del Almacenamiento


Memoria principal: Arreglo de Bytes. Medio de almacenamiento de gran capacidad que la CPU puede accesar directamente (RAM). Almacenamiento secundario: Memoria no voltil (HDD). Discos magnticos: Discos rgidos de metal o cermica cubierto de material magntico. o La superficie se divide en tracks, cada track se subdivide en sectores. o El controlador determina la interaccin entre el dispositivo y el computador.

Jerarqua de almacenamiento.
La jerarqua se determina por velocidad de transferencia, costo y volatilidad. Caching: Copiar informacin de dispositivos lentos a dispositivos rpidos. (Ej: la RAM se puede ver como una cach para almacenamiento secundario).

Cachs
Caching: La informacin ms utilizada se copia desde memorias lentas a rpidas temporalmente. Cach: Memoria rpida. Si contiene la informacin correcta se usa directamente, si no la tiene, se copian los datos y despus se usa. El tamao de la cach es menor que el tamao de la memoria ms lenta. Los desafos que impone esta tcnica a los SO son: o Gestin de las cachs. o Determinacin del tamao y polticas de reemplazo.

Arquitectura de Sistemas computacionales


Procesador simple de propsito general. Multiprocesadores.

Multiprocesadores
Se conocen tambin como: sistemas paralelos, sistemas fuertemente acoplados. Ventajas: o Aumento de productividad. o Economas de escala. o Confiabilidad, degradacin graciosa o tolerancia a fallas. Dos tipos: o Multiprocesamiento asimtrico (master-slave) o Multiprocesamiento simtrico (todos los procesadores son pares)

Arquitectura de Procesamiento Simtrico

Sistemas en Cluster
Mltiples sistemas trabajando coordinadamente. Comparten almacenamiento a travs de un SAN (storage-area network) Alta disponibilidad: servicios que sobreviven a fallas. Clusters asimtricos: tienen una mquina en modo hot-standby Clusters simtricos: contienen mltiples nodos corriendo aplicaciones y monitoreando a los dems. Clusters de HPC: aplicaciones son escritas para utilizar paralelismo.

Estructura de un SO.
Multiprogramacin: lograr eficiencia Tiempo compartido (Multitarea): la CPU conmuta entre distintas tareas permitiendo la computacin interactiva.

Multiprogramacin.
Un usuario simple no puede ocupar simultneamente la CPU y dispositivos de I/O. Se organizan los jobs (cdigo y datos) para que la CPU siempre tenga uno que ejecutar. o Un subconjunto de Jobs reside en la memoria principal. o Job scheduling: Seleccin de un job para ejecutarse mediante la iteracin de Jobs. o Cuando un job espera por el I/O, el SO conmuta a otro.

Timesharing (multitarea)
Tiempo de respuesta: menor a 1 segundo. Cada usuario tiene al menos un programa ejecutndose en memoria (proceso). Itinerador de CPU: selecciona un job de los que estn listos para ejecutar. Swapping: Tcnica que mueve jobs hacia y desde la memoria cuando un proceso no cabe en la esta. Memoria virtual: Tcnica que permite la ejecucin de procesos que no tienen suficiente memoria.

Layout de memoria en multiprogramacin

Operaciones de un SO.
Las interrupciones son activadas por el HW. Por errores en el SW o por requerimientos se activan excepciones o traps (divisin por cero, llamadas al sistema, loops infinitos, violaciones de memoria, etc).

Prevencin de loops infinitos.


Un timer previene de loops infinitos programando una interrupcin en un tiempo determinado a travs de un contador. El SO decrementa el contador, al llegar a cero se genera una interrupcin.

Modo Dual de operacin.


El modo Dual protege al SO y sus componentes. Modos: Usuario y Kernel. Apoyo del HW: bit de modo. o Permite distinguir cuando se ejecuta cdigo de usuario o cdigo de kernel. o Instrucciones privilegiadas slo en modo kernel. o Una llamada al sistema permite pasar a modo kernel. Al retorno se vuelve a modo usuario.

Transicin de modo usuario a modo kernel

Gestin de Procesos.
Un proceso es un programa en ejecucin. Corresponde a una unidad de trabajo dentro del sistema. Proceso: entidad activa. Programa: entidad pasiva. Un proceso necesita recursos para completar su tarea: CPU, memoria, archivos, I/O y datos de inicializacin. Al trmino de un proceso se devuelven los recursos reutilizables. En un proceso de un Thread, el registro PC determina la siguiente instruccin a ejecutar. Las instrucciones se ejecutan en forma secuencial hasta el trmino. En un proceso Multi-Thread, cada thread tiene su propio PC. En forma tpica en un sistema hay mltiples procesos corriendo en una o varias CPU: procesos de usuarios y del SO. La concurrencia se logra por multiplexin de la CPU entre los distintos procesos/thread.

Actividades de la Gestin de Procesos.


Creacin y eliminacin. Suspensin y reanudacin. Sincronizacin. Comunicacin. Manejo de deadlocks.

Gestin de Memoria.
Todo debe estar en memoria antes de la ejecucin: datos e instrucciones. Gestin de memoria: qu y cundo deben estar en memoria. Una buena gestin de memoria optimiza la utilizacin de la CPU y los tiempos de respuesta a los usuarios.

Actividades en la Gestin de memoria.


Registro de la memoria utilizada. Decidir que procesos y datos deben moverse hacia y desde la memoria. Asignar y liberar memoria.

Gestin de Almacenamiento.
Un SO proporciona una vista lgica y uniforme de la informacin almacenada. o Se abstraen propiedades fsicas y se presentan unidades lgicas: archivos. o Cada medio se controla por un dispositivo. o Cada dispositivo tiene distintas propiedades fsicas. Los archivos se organizan en directorios. El control de acceso determina quin y qu puede accesar. Las actividades de gestin incluyen: o Creacin y eliminacin de archivos y directorios. o Primitivas para el manejo de archivos y directorios. o Mapeo de archivos en almacenamiento secundario o Respaldo en medios estables.

Gestin del Almacenamiento Masivo.


La gestin de almacenamiento tiene un impacto en el desempeo global de un sistema. Actividades: Gestin de espacio libre, asignacin e itineracin de disco. El almacenamiento masivo no necesariamente es rpido ya que incluye discos pticos y unidades de cinta. Aun as, debe ser gestionado. WORM (write-once, read-many-times) y RW (read-write).

Desempeo de varios niveles de almacenamiento.


Los movimientos entre los distintos niveles de la jerarqua de almacenamiento puede ser explcito o implcito.

Ejemplo: mover un entero entre el disco y memoria.


Los sistemas Multitarea deben ser cuidadosos en utilizar los valores recientes en forma independiente de su almacenamiento en la jerarqua de memoria. La coherencia de cachs por HW es lo ms conveniente. De esta forma todas las CPU tienen en sus cachs los valores ms recientes. En sistemas distribuidos es an ms complejo. Deben existir mltiples copias de un dato.

Subsistema de I/O.
Un propsito de los SO es ocultar las particularidades de dispositivos de I/O. El subsistema de I/O es responsable de: o Gestionar la memoria del I/O, es decir, buffers, cachs, spooling (traslape de la salida de un job con la entrada de otro.) o Proporcionar una interfaz general. o Disponer de drivers para dispositivos especficos.

Proteccin y Seguridad.
Proteccin: Cualquier mecanismo para el control del acceso de procesos usuarios a recursos definidos por el SO. Seguridad: Defensa del sistema ante ataques externos e internos. El SO primero distingue entre distintos usuarios para determinar que puede hacer cada uno: o Identidad (uid): nombres, nmeros, o Este uid se asocia a archivos y procesos para facilitar el control de acceso. o El identificador de grupo (gid) reconoce grupos de usuarios. o Escalamiento de privilegios: permiten a los usuarios obtener mayores derechos.

SO de cdigo abierto.
Es posible obtener un SO en cdigo fuente en vez de cdigo binario cerrado. Movimiento comenzado por la Free Software Foundation (FSF). Ejemplos incluyen GNU/Linux, BSD UNIX (includo MAC OS X) y SUN Solaris.

S-ar putea să vă placă și