Professional Documents
Culture Documents
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 de un sistema
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.
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.
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.
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.
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).
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.
Esquema de Swapping
Hardware de paginacin.
3 4
user space
Estructura de directorios.
Files F1
F2
F4 F3 Fn
Directorio multinivel.
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.