Upload
pepe-potamo
View
1.169
Download
0
Embed Size (px)
Citation preview
Sistemas Operativos.
Definiciones de los Sistemas Operativos.
Funciones básicas de un Sistema Operativo
Los sistemas operativos desempeñan una serie de funciones
básicas esenciales para la gestión de la máquina. Entre las más
destacables, cada una ejercida por un componente interno (módulo
en núcleos monolíticos y servidor en microkernels), podemos
reseñar las siguientes:
* Gestión de los recursos de la máquina.
* Ejecución de servicios para los programas
* Ejecución de instrucciones (comandos) de los usuarios.
Funciones básicas:
A su vez, los servicios principales ofertados por un sistema operativo,
accesibles y manipulables a través de su API de programación, son
los siguientes:
* Gestión de procesos.
* Gestión de memoria.
* Gestión de la E/S (Entrada/Salida).
* Gestión de archivos y directorios.
* Comunicación y sincronización entre procesos.
* Seguridad y protección.
Servicios:
• Administración de tareas:
• Monotarea: Si solamente puede ejecutar un programa (aparte de los
procesos del propio S.O.) en un momento dado. Una vez que empieza
a funcionar un programa, continuará haciéndolo hasta su finalización o
interrupción.
•Multiprogramación: Si es capaz de cargar múltiples programas a
memoria, pero permitiendo que uno solo se ejecute a la vez.
• Multitarea: Si es capaz de ejecutar varios programas al mismo
tiempo.
Tipos:
• Administración de usuarios:
• Monousuario: Si sólo permite ejecutar los programas de un usuario al mismo tiempo.
• Multiusuario: Si permite que varios usuarios ejecuten simultáneamente sus programas, accediendo a la vez a los recursos del ordenador. Normalmente estos SS.OO. utilizan métodos de protección de datos, de manera que un programa no pueda usar o cambiar los datos de otro usuario.
• Manejo de recursos:
• Centralizado: Si permite utilizar los recursos de un solo ordenador.
• Distribuido: Si permite utilizar los recursos (memoria, CPU, disco, periféricos, etc) de más de un ordenador al mismo tiempo.
Tipos:
Definición
Parte fundamental de un sistema operativo.
Es el software responsable de facilitar a los distintos
programas acceso seguro al hardware de la computadora o
en forma más básica, es el encargado de gestionar recursos,
a través de servicios de llamada al sistema.
El Kernel se encarga de decidir qué programa podrá hacer
uso de un dispositivo de hardware y durante cuanto tiempo, lo
que se conoce como multiplexado, implementando las
abstracciones de hardware.
Kernel:
Kernel:
Hardware
Sistema Operativo
App1 App2 App3
Espacio de Usuario
Espacio de Kernel
sy
sc
all
s
Espacios
Kernel:
Organización Interna
Kernels Monolíticos
Un sistema operativo con núcleo monolítico concentra todas las funcionalidades
posibles (planificación, sistema de archivos, redes, controladores de dispositivos,
gestión de memoria, etc.) dentro de un gran programa. El mismo puede tener un
tamaño considerable, y deberá ser recompilado por completo al añadir una nueva
funcionalidad. Todos los componentes funcionales del núcleo tienen acceso a
todas sus estructuras de datos internas y a sus rutinas. Un error en una rutina
puede propagarse a todo el núcleo. Todos sus componentes se encuentran
integrados en un único programa que ejecuta en un único espacio de direcciones.
Kernel:
Microkernels
Se conoce como microkernel al 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 proveídos por el kernel, se ejecutan como procesos servidores en
espacio de usuario.
Kernel:
Organización interna:
* Kernel monolítico (Linux, BSD, skyOS, Windows, Syllable).
* Microkernel (BeOS, Mach, Mac OS X, newOS).
* Nanokernel (AdeOS, Eros, KeyKOS, Brix-OS).
* Sasos (Opal, Mungi, BriX).
* Exokernel (MIT exokernel).
Kernel: