El forma parte del sistema operativo, para ser más …hilario_sm/slide/SO-1/TIPOS DE...El kernel...
Transcript of El forma parte del sistema operativo, para ser más …hilario_sm/slide/SO-1/TIPOS DE...El kernel...
El kernel forma parte del sistema operativo, para ser más claros es el núcleo, la parte más importante.
Cuando arrancas un ordenador con cualquier sistema operativo, el Kernel se carga en memoria y permanece allí hasta que apagas el equipo, realizando funciones básicas como pueden ser:
- Comunicación entre procesos
- Control de periféricos
- Manejo de memoria
- Control de interrupciones
....
SISTEMAS OPERATIVOS I - FEB 2012 MCC. HILARIO SALAZAR MARTINÉZ
102/02/2012
Tipos De Nucleo
Núcleo monolítico: Núcleo o kernel de un sistema operativo. Como ejemplo de sistema operativo de núcleo monolítico está UNIX. Estos sistemas tienen un núcleo grande y complejo, que engloba todos los servicios del sistema. Está programado de forma no modular, y tiene un rendimiento mayor que un microkernel. Sin embargo, cualquier cambio a realizar en cualquier servicio requiere la recompilación del núcleo y el reinicio del sistema para aplicar los nuevos cambios.
SISTEMAS OPERATIVOS I - FEB 2012 MCC. HILARIO SALAZAR MARTINÉZ
202/02/2012
Entre los sistemas operativos que cuentan con núcleos monolíticos se encuentran:Núcleos tipo Unix
LinuxSyllableUnix
BSD (FreeBSD,NetBSD,OpenBSD)Solaris
Núcleos tipo DOSDR-DOSMS-DOSFamilia Microsoft Windows 9x (95, 98, 98SE, Me)
Núcleos del Mac OS hasta Mac OS 8.6OpenVMSXTS-400
SISTEMAS OPERATIVOS I - FEB 2012 MCC. HILARIO SALAZAR MARTINÉZ
302/02/2012
Micronucleo Kernel: Tipo de kernel de un sistema operativo que provee un conjunto de primitivas o llamadas al sistema mínimas, para implementar servicios básicos como espacios de direcciones, comunicación entre procesos y planificación básica. Todos los otros servicios (gestión de memoria, sistema de archivos, operaciones de E/S, etc.), que en general son provistos por el kernel, se ejecutan como procesos servidores en espacio de usuario. Principales ventajas sobre el monolítico: Menor complejidad, descentralización de los fallos (un fallo en una parte del sistema no lo colapsaría por completo), facilidad de creación y depuración de drivers. Principales dificultades: Complejidad en la sincronización de los módulos y acceso a memoria, anulación de las ventajas de Zero Copy, menor rendimiento. Ejemplos de microkernel:
Minix, Hurd, L4, Netkernel, AmoebaOS, RaOS,RadiOS, Chorus, QNX, SO3 y SymbOS.
SISTEMAS OPERATIVOS I - FEB 2012 MCC. HILARIO SALAZAR MARTINÉZ
402/02/2012
Estados de un proceso
1. En ejecución• Utiliza la CPU en el instante dado
2. Listo• Ejecutable, se detiene en forma temporal para que se
ejecute otro proceso
3. Bloqueado• No se puede ejecutar debido a la ocurrencia de algun
evento externo
SISTEMAS OPERATIVOS I - FEB 2012 MCC. HILARIO SALAZAR MARTINÉZ
502/02/2012
En ejecución
ListoBloqueado
4
1. El proceso se bloquea en espera de datos2. El planificador elije otro proceso3. El planificador elige este proceso4. Los datos están disponibles
Transiciones entre estados del proceso
• Las transiciones 2 y 3 se deben al planificador del proceso(una parte del S.O) • La transición 2 ocurre cuando el planificador decide que el proceso en ejecución ya
ha sido ejecutado el tiempo suficiente y es hora de darle tiempo de CPU a otro proceso• La transición 3 ocurre cuando los demás procesos han tenido su parte y es tiempo de
que el primer proceso vuelva a ejecutarse**• La 4 aparece cuando ocurre el evento externo por el que espera un proceso. Si no existe
otro proceso en ejecución en ese momento, se produce la transición 3 de forma inmediata y el proceso comienza su ejecución. En caso contrario tendría que esperar el estado listopor un momento, hasta que la CPU este disponible.
SISTEMAS OPERATIVOS I - FEB 2012 MCC. HILARIO SALAZAR MARTINÉZ
602/02/2012
Comunicación entre proceso
SISTEMAS OPERATIVOS I - FEB 2012 MCC. HILARIO SALAZAR MARTINÉZ
702/02/2012
Comunicación entre proceso
SISTEMAS OPERATIVOS I - FEB 2012 MCC. HILARIO SALAZAR MARTINÉZ
802/02/2012
Comunicación entre proceso
a) Condiciones de competencia
SISTEMAS OPERATIVOS I - FEB 2012 MCC. HILARIO SALAZAR MARTINÉZ
902/02/2012
Condiciones para obtener una buena solución al problema condiciones de competencia
1. Dos procesos no deben encontrarse al mismo tiempo dentro de sus secciones criticas
2. No se deben hacer hipótesis sobre la velocidad o el número de CPU
3. Ninguno de los proceso que estén en ejecución fuera de su S.C puede bloquear a otro proceso.
4. Ningún proceso debe esperar eternamente para entrar a la S.C.
SISTEMAS OPERATIVOS I - FEB 2012 MCC. HILARIO SALAZAR MARTINÉZ
1502/02/2012
Problema consumidor-productor
02/02/2012SISTEMAS OPERATIVOS I - FEB 2012
MCC. HILARIO SALAZAR MARTINÉZ16
Soluciones implementadas por el programador
02/02/2012SISTEMAS OPERATIVOS I - FEB 2012
MCC. HILARIO SALAZAR MARTINÉZ18
HARDWARE DE SINCRONIZACIÓN
02/02/2012SISTEMAS OPERATIVOS I - FEB 2012
MCC. HILARIO SALAZAR MARTINÉZ23
PROGRAMACIÓN DEIPC CON POSIX
02/02/2012SISTEMAS OPERATIVOS I - FEB 2012
MCC. HILARIO SALAZAR MARTINÉZ27
LLAMADAS AL SISTEMAS PARA ELMANEJO DE SEMÁFOROS
02/02/2012SISTEMAS OPERATIVOS I - FEB 2012
MCC. HILARIO SALAZAR MARTINÉZ33
PROBLEMAS CLÁSICOS DESINCRONIZACIÓN
02/02/2012SISTEMAS OPERATIVOS I - FEB 2012
MCC. HILARIO SALAZAR MARTINÉZ42
EL PROBLEMA DEL PRODUCTOR-CONSUMIDOR
SOLUCIÓN CON MENSAJES
02/02/2012SISTEMAS OPERATIVOS I - FEB 2012
MCC. HILARIO SALAZAR MARTINÉZ56