Es software encargado de ejercer el control y coordinar el uso del hardware entre diferentes programas de aplicación y los diferentes usuarios. Es un administrador de los recursos de hardware del sistema. Es un sistema que consiste en ofrecer una distribución ordenada y controlada de los procesadores, memorias y dispositivos de E/S entre los diversos programas que compiten por ellos. Realizar el interfaz sistema-usuario. Compartir los recursos de Hardware entre los usuarios. Permitir a los usuarios compartir sus datos entre ellos. Prevenir que las actividades de un usuario no interfieran en las de los demás usuarios. Calendarizar los recursos de los usuarios. Facilitar el acceso a los dispositivos de E/S. Recuperarse de fallas o errores. Llevar el control sobre el uso de los recursos. Gestión de los recursos (cpu,memoria,periféricos) Asignación y recuperación de recursos. Protección de los usuarios. Contabilidad/monitorización. Soporte de usuario. Ejecución de servicios (maquina extendida) Ejecución de programas (programas) Ordenes de e/s Operaciones sobre archivos Detección y tratamiento de errores Interfaz de usuario Ejecución de los mandatos de los usuarios – shell Gestión de los recursos de la computadora. – Kernel. Ejecución de servicios para los programas. – llamadas al sistema. Ejecución de los mandatos de los usuarios. – shell. Los programas se También garantiza ejecutan por uno o la protección de varios usuarios. unos programas Estos programas frente a otros. compiten por los Y ha de suministrar recursos del información sobre el computador siendo uso que se hace de el S.Op. El los recursos. encargado de Asignación de arbitrar su recursos asignación y uso. Protección Contabilidad Asignación de recursos. El SOp. Se encarga de asignar recursos a los programas en ejecución. Para ello mantiene estructuras que le permite saber que recursos están libres y cuales están asignadas a cada programa. La asignación es por DISPONIBILIDAD de los recursos y PRIORIDAD de los programas, resolviéndose conflictos por peticiones simultaneas. Recursos físicos.- Procesador, Memoria, Periféricos. Recursos Lógicos.- Ficheros y puertos de comunicación. Protección. El SOp. Garantiza la protección entre los usuarios del sistema. Asegura la confidencialidad de la información y que unos trabajos no interfieran con otros. Contabilidad. Permite medir la cantidad de recursos que usa cada programa a lo largo de sus ejecución. A esto se le denomina Monitorización. ElSop. Ofrece a los Losservicios se programas un clasifican en cuatro conjunto de clases: servicios o llamadas Ejecución de al sistema, que programas. pueden solicitar Operaciones de E/S. cuando lo Operaciones sobre necesiten, archivos. proporcionando a Detección y los programas una tratamiento de errores. visión de maquina extendida. Ejecución de programas. El SOp. Incluye servicios para lanzar la ejecución de un programa, así como para pararla o abortarla. También existe servicios para conocer y modificar las condiciones de ejecución de los programas, para comunicar y sincronizar unos programas con otros. La ejecución de programas da lugar al concepto de PROCESO. Y un proceso se define como un programa en ejecución. Ordenes de E/S. los servicios de E/S ofrecen una gran comodidad y protección al proveer a los programas de operaciones de lectura, escritura y modificación del estado de los periféricos. Operaciones sobre archivos. Los archivos ofrecen un nivel mayor de abstracción que de las ordenes de E/S permitiendo operaciones de Creación, borrado, renombrado, apertura, escritura y lectura de ficheros. Muchos de estos servicios son parecidos a las operaciones de E/S y terminan concretándose en este tipo de operaciones. Detección y tratamiento de errores. El Sop se encarga de tratar todas las condiciones de error que detecte el Hardware. Entre las condiciones de error que pueden aparecer se destacan: errores en las operaciones de E/S, errores de paridad en los accesos a memoria o en los buses y errores de ejecución en los programas como desbordamientos, violaciones de memoria, códigos de instrucción prohibidos, etc. El modulo que permite que los Usuarios dialoguen de forma interactiva con el Sistema es el Shell. El Shell como un bucle infinito repite la siguiente secuencia: Espera una orden del usuario. En el caso de Interfaz textual el Shell, esta pendiente de lo que escribe el usuario en la línea de mandatos. En las interfaces graficas esta pendiente de los eventos del apuntador (ratón) que manipula el usuario, además de los del teclado. Analiza la orden, si es correcta ejecuta empleando los servicios del S.Op. Concluida la orden vuelve a la espera. Elarranque de la computadora actual tiene dos fases: Fase de arranque del Hw. Ubicación del sistema operativo Fase de arranque del sistema operativo.
Bajo el control del •Test del Hw
iniciador ROM •Carga de memoria del cargador del SOp.
Bajo el control del
cargador (boot) del •Carga en memoria componentes del SOp.
SOp.
Inicializacion bajo el •Test del sistema de Archivos.
•Creacion de estructuras de datos internos control de la parte •completa la carga del SOp. residente residente del SOp. •creacion del procesos Login. La computadora realiza actividades si cuenta con el correspondiente programa cargado en Memoria Principal. La memoria principal es volátil, lo que significa que cuando se enciende la máquina, no contiene información válida. Por tanto, al arrancar la computadora no es capaz de realizar nada. La solución empleada a este problema se basa en un programa permanente grabado en la memoria ROM. Una parte del mapa de memoria esta construido con memoria ROM no volátil. En esta memoria ROM se encuentra un programa de arranque (iniciador ROM), que esta siempre disponible, puesto que la ROM no pierde su contenido. Al arrancar la computadora o presionar RESET, se genera una señal eléctrica que carga los valores predefinidos en los registros, especialmente esta señal carga en el contador de programas la dirección de comienzo del iniciador ROM. De esta forma se cumplen todas las condiciones para que la computadora ejecute un programa y realice funciones. El iniciador ROM realiza 3 funciones. 1º.- Comprueba el sistema (test del Hw), es decir detecta sus características (cantidad del memoria principal disponible o los periféricos instalados) y verifica si el conjunto funciona correctamente. 2º.- Entra en la fase de lectura y almacenamiento en memoria del programa cargador del sistema operativo carga: es la operación combinada de leer un programa ubicado en un periférico y almacenarlo en memoria principal-el programa que realiza esta operación se denomina cargador. Finalmente.- Da control a este programa, bifurcando a la dirección de memoria en la que lo ha almacenado. Para mayor flexibilidad se hace que el programa iniciador ROM sea independiente del Sop. En el caso de una Computadora actual la ROM contiene, además del programa iniciador, Sw de E/S denominado BIOS (Basic Input Output System). La BIOS de una computadora la proporciona el fabricante y suele contener procedimientos para leer y escribir de disco, leer caracteres de teclado y escribir en pantalla. El Sop se encuentra ubicado en disco. Una parte del Sop – el cargador o boot del Sop esta almacenado en una zona predefinida del disco (los 4 primeros sectores del disco) y tienen un tamaño prefijado. El iniciador ROM trae a memoria principal el programa del cargador del SOp. El iniciador ROM y el SOP tienen un convenio sobre la ubicación, dirección de arranque y tamaño del cargador del SOp El iniciador ROM es independiente del SOp, siempre que este cumpla con el convenio, por lo que la maquina podrá soportar diversos sistemas operativos El cargador del SOp trae a memoria principal algunos de los componentes del SOp. Una vez cargados estos componentes se pasa a la fase de iniciación que incluye las siguientes operaciones: Comprobación del sistema: se completan las pruebas del Hw realizadas por el iniciador ROM y se comprueba que el sistema tenga un estado coherente. Esta operación exige revisar todos los directorios, lo que supone un largo tiempo de procesamiento. Se establecen las estructuras de información propias del SOp, tales como tabla de procesos, tablas del memoria y las de E/S. Se carga en memoria principal el sistema operativo residente (parte del SOp que debe estar siempre en memoria) El núcleo interactúa con el Hw, gestiona recursos como el Procesador, tratamiento de interrupciones y funciones básicas de manipulación de memoria. Servicios que se agrupan por funcionalidad: G. Procesos: creación, planificación y destrucción. G. Memoria: espacios libres, ocupados, asignación y liberación de memoria. G. de la E/S: facilitar el manejo de los periféricos. G. de Files y Directorios: manejo de Files y Directorios y la Administración del almacenamiento secundario. Comunicación y sincronización entre procesos: mecanismos para la comunicación y sincronización entre los procesos. Seguridad y protección: garantiza la identidad de los users y define lo que pueden hacer con los recursos del sistema. ElSOp puede incluir varios interpretes de mandatos unos textuales y otros gráficos pudiendo el usuario elegir el que mas le interese. Sin embargo hay que observar que no se pueden mezclar mandatos de varios interpretes. Dosshell MS-DOS Administrador de programas Win Finder OS/2 Bourne, C Linux y derivados Según el interfaz de usuario: interfaz textual o interfaz gráfica. Según el número de usuarios: monousuario o multiusuario. Según el número de tareas: monotarea o multitarea. Según el número de procesadores que pueden gestionar: monoprocesador y multiprocesador. Según su capacidad para gestionar redes: servidor o cliente de red. Según la cantidad de bits por registro que son capaces de procesar. Según su distribución/comercialización: software libre, propietario o abierto Se dividen en dos grande grupos: Sistemas operativos monolíticos. No tienen una estructura clara y bien definida, todos sus componentes se encuentran integrados en un único programa (el sistema operativo) que ejecuta en un único espacio de direcciones. En este tipo de sistemas todas las funciones que ofrece el sistema operativo se ejecutan en modo nucleo. Sistemas operativos estructurados. Sistemas por capas. Modelo Cliente-Servidor. Capa 5 : programas de usuario Capa 4 : gestión de la E/S Capa 3 : controlador de la consola Capa 2 : gestión de memoria Capa 1 : planificación de la CPU y multiprogramación Capa 0 : Hardware El Sop se organiza como una jerarquía de capas donde cada capa ofrece una interfaz clara y bien definida a la capa superior y solamente utiliza los servicios que le ofrece a la capa inferior. La principal ventaja que ofrece este tipo de estructuras es la modularidad y la ocultación de la información. Una capa no necesita conocer como se ha implementado la capa sobre la que se construye, únicamente necesita conocer la interfaz que ofrece. Esto facilita enormemente la depuración y verificación del sistema, puesto que las capas pueden ir construyendo y depurando por separado. El enfoque consiste en implementar la mayor parte de los servicios y funciones del sistema operativo en procesos de usuario, dejando solo una pequeña parte del sistema operativo ejecutando en modo núcleo. A esta parte se le denomina micronucleo y a los procesos que ejecutan el resto de funciones se les denomina servidores