You are on page 1of 25

FUNDAMENTOS DE SISTEMAS OPERATIVOS

Que es un Sistema Operativo?

Un programa que acta como un intermediario entre el usuario y el HW de un computador. Objetivos de un S.O. : Hacer que el sistema de cmputo se pueda utilizar de manera cmoda. Ofrecer un ambiente en el que un usuario pueda ejecutar programas. Uso eficiente del HW del computador.

Componentes del sistema.


1. Hardware prove los recursos de computacin bsicos: (CPU, memoria, dispositivos de E/S). 2. Sistema Operacional controla y coordina el uso de hardware entre los diversos programas de aplicacin para los diversos usuarios. 3. programas de aplicacin definen las formas en que los recursos del sistema son utilizados para resolver los problemas de computo de los usuarios (compiladores, bases de datos). 4. Usuarios (personas, maquinas, otros pc).

Componentes de un sistema

Ambiente del S.O.

Asignador de recursos Administra y asigna recursos. Programa de control Controla la ejecucin de los programas del usuario y la operacin de los dispositivos de E/S. Kernel El programa que se est ejecutando en todo momento en el PC sin incluir pgmas de aplicacin.

Evolucin de los S.O. Sistemas por lotes.

El usuario no interactuaba con el sistema de computo directamente. Operadores de Computadoras. Secuencia de trabajos automtica Transferir el control de un trabajo al siguiente. Residente en la memoria.

Sistemas con Multiprogramacin.


Mantiene simultneamente varios trabajos en memoria y la CPU ejecuta y multiplexa los trabajos a medida que se requieran.

Sistemas con multiprogramacin. Generalidades

Rutinas de E/S suministradas por el sistema. Asignacin de memoria a cada trabajo. Planificacin de la CPU El sistema debe seleccionar los trabajos de la memoria para su ejecucin, es decir administra la memoria y planifica los procesos.

Sistemas de tiempo compartido. Multitarea.

La CPU ejecuta mltiples trabajos conmutando entre ellos, la ejecucin es concurrente. Tiempo de respuesta corto, solo se requiere un poco de tiempo de CPU para cada usuario. Los trabajos se intercambian entre la memoria y el disco (virtual). Operaciones de E/S interactivas.

Sistemas para PC
Personal computers Monousuarios. Estaciones de trabajo personales. Adoptan la tecnologa de los grandes equipos. Desarrollo de hardware poderoso y con todos los recursos.

Sistemas paralelos.

Multiples procesadores en estrecha comunicacin, compartiendo recursos de HW y SW (perifericos, almacenamiento masivo, suministro de energa). Sistemas tolerantes a fallas. Multiprocesamiento simtrico. Multiprocesamiento asimtrico. Mayor rendimiento, mas trabajo en menos tiempo.

Sistemas de tiempo real

Usados en dispositivos de control de aplicaciones dedicadas (imgenes, control industrial..). Restricciones de tiempo fijas y definidas dentro de un limite permitido. Sistemas estrictos de tiempo: Datos no volatil (ROM). Tareas con prioridad (multimedia, realidad virtual).

Sistemas Distribuidos.

Distribuye el computo entre los procesadores. Cada procesador tiene su propia memoria local y se relacionan a travs de lneas de comunicaciones. Conectividad de redes para compartir recursos y control de la red.

CONCEPTOS DE PROCESOS

Un proceso es un programa en ejecucin. Un proceso es mas que el codigo del programa (seccin de texto), actividad actual (valor del contador del programa), contenido de los registros del procesador, la pila del proceso y una seccin de datos. Cada proceso puede estar en un estado: Nuevo(se est creando), Ejecucin(se estn ejecutando instrucciones), En espera(Est esperando que ocurra algn evento), listo(En espera de ser asignado a un procesador), Terminado(el proceso ha terminado su ejecucin).

Diagrama de estados de un proceso.

PLANIFICACION DE LA CPU.

Tener algn proceso en ejecucin en todo momento, para maximizar la utilizacin de la CPU. Un proceso se ejecuta hasta que tiene que esperar, normalmente la terminacin de una solicitud de E/S, el sistema operativo le retira la CPU a dicho proceso y se asigna a otro. Algunos tipos: el primero en llegar, el primero en ser atendido, por prioridad,colas tienen su asignacin directa por evaluacin algoritmica.

SINCRONIZACION DE PROCESOS.

Un proceso cooperativo es aqul que puede afectar o verse afectado por los dems procesos que se estn ejecutando en el sistema. Los procesos cooperativos pueden compartir directamente un espacio lgico de direcciones(cdigo y datos). Problemas como la seccin crtica se solucionan por medio de semforos y software especializado (cena de los filsofos, barberos ...).

BLOQUEOS MUTUOS.

Cuando varios procesos compiten por recursos, se presenta la situacin en que el proceso solicita un recurso y no est disponible en ese momento en cuyo caso el proceso pasa a un estado de espera y sucede que nunca cambia nuevamente a su estado, debido a que los recursos estn retenidos por otros procesos tambin en espera. Algoritmos para prevenir y detectar bloqueos mutuos.

Procesamiento de un pgma de Usuario

Esquema de Swapping

Hardware de paginacin.

Vista logica de Segmentacin.


1 4 1 2

3 4

user space

physical memory space

Estructura de directorios.

Coleccin de nodos con informacin de todos los archivos.


Directory

Files F1

F2

F4 F3 Fn

Tanto la estructura del directorio como los archivos residen en disco.

Directorio multinivel.

Directorio por usuario. Profile.

Busquedas eficientes Trabajo en grupo.

Estructura del Disco.

Guardados en arreglos lgicos, donde cada bloque lgico es una unidad de transferencia. El arreglo lgico es mapeado en sectores del disco en forma secuencial.

You might also like