Sistemas Operativos Introducción Sistemas Operativos Sistemas de Computación: Hardware: constituido por la Unidad Central de procesos (CPU) y los dispositivos de entrada y salida. – – Miguel Ángel Sanz Santos Facultad de Ciencias Geológicas Universidad Complutense de Madrid Sistema Operativo: intermediario entre el Hardware y el usuario Los programas de aplicaciones: establecen la forma en que los recursos se utilizarán para dar solución a problemas. – – Usuarios: personas, máquinas, otros ordenadores, etc. Miguel Ángel Sanz Santos Sistemas Operativos Introducción Un sistema operativo es un programa que actúa como intermediario entre el usuario de un computador y el hardware de éste; su objetivo es crear un entorno en el que el usuario pueda ejecutar programas. Es en si un programa individual, también llamado núcleo o kernel, que se ejecuta durante todo el tiempo que el ordenador está funcionando Usuario 1 Sistema Operativo Miguel Ángel Sanz Santos Aplicaciones H a r d w a r e Procesador textos Hoja de cálculo Base de datos SIG Usuario 2 Usuario 3 Usuario 4 Sistemas Operativos Paseo histórico Existen diferentes sistemas operativos, en los que son predominantes una serie de características típicas del entorno para el cual han sido diseñados. En un recorrido histórico desde los primeros a los más actuales y novedosos podemos, a grandes rasgos, distinguir: Sistemas por lotes sencillos • Los primeros sistemas operativos creados y destinados a ordenadores construidos con válvulas, y por tanto, de grandes dimensiones. • Son controlados desde una consola formada exclusivamente por un teclado y una impresora. • Una vez lanzado un programa no puede intervenirse en el proceso de cálculo. • Existe un desfase importante en velocidad entre la parte electrónica y mecánica que no es aprovechado, por lo cual la CPU se encuentra casi todo el tiempo inactiva. • Los componentes: Sistemas operativo Unidad de cinta Unidad de cinta Lectores de tarjetas Consola Miguel Ángel Sanz Santos Lectores de tarjetas Impresoras de línea Sistemas Operativos Paseo histórico Existen diferentes sistemas operativos, en los que son predominantes serie de en (los resultados de los trabajosuna se almacenan memoria o disco –BUFFERy son enviados a los características típicas del entorno para el cual han sido diseñados. En un recorrido histórico periféricos de salida en paquetes sin interferir con el desde los primeros a los más actuales y novedosos podemos, a grandes rasgos, distinguir: sistema operativo) Sistemas Operativos Paseo histórico Existen diferentes sistemas operativos, en los que son predominantes serie de en (los resultados de los trabajosuna se almacenan memoria o disco –BUFFERy son enviados a los características típicas del entorno para el cual han sido diseñados. En un recorrido histórico periféricos de salida en paquetes sin interferir con el desde los primeros a los más actuales y novedosos podemos, a grandes rasgos, distinguir: sistema operativo) Sistemas Sistemaspor porlotes lotesmultiprogramado sencillos Sistemas Sistemasde por por tiempo lotes lotesmultiprogramado sencillos compartido • Es Losdesarrollado primeros sistemas para ordenadores operativos creados construidos y destinados con válvulas a ordenadores de vacío. construidos con válvulas, y por tanto, de grandes dimensiones. • Se desarrollan nuevos componentes y estrategias, que acelerar y liberan funciones •que Son controlados desde formadadeexclusivamente un teclado y una controla la CPU. Es el una casoconsola de la aparición Discos Duros y por del SPOOLING impresora. • Al igual que el tipo anterior, este es controlado desde una consola formada •exclusivamente Una vez lanzado puede intervenirse en el proceso de cálculo. porun unprograma teclado yno una impresora. • Los Existe un desfase importante en a velocidad la parte electrónica mecánica que trabajos se agrupan por lotes través deentre una RESERVA de tiempoy del procesador y eneselaprovechado, que el microprocesador que dedica a cada proceso. no por lo cual decide la CPU el setiempo encuentra casi todo el tiempo inactiva. Es desarrollado desarrollado para ordenadores ordenadores de grandes dimensiones, creados en 1960 con pro •• Es Los primeros sistemas para operativos creados construidos y destinados con válvulas a ordenadores deson vacío. construidos no son utilizados hasta válvulas, y por tanto, de1970. grandes dimensiones. •• Se desarrollan nuevos componentes y estrategias, que acelerar y liberan funciones Se utilizan teclados para entrar tanto instrucciones como datos en el sistema y como •que Son controlados desde una consola formada un teclado y una controla CPU. Es caso de la aparición deexclusivamente Discos Duros y por del SPOOLING periférico porladefecto se el usa una monitor o pantalla. impresora. • Se la interacción entre el usuario programa desde que se una está ejecutando o bien Al permite igual que el tipo anterior, este esy el controlado consola formada alUna sistema operativo. •exclusivamente vez lanzado puede intervenirse en el proceso de cálculo. porun unprograma teclado yno una impresora. Se ejecutan múltiples trabajos, la CPU conmuta los diferentes programas activos •• Los un desfase importante en velocidad laesparte electrónica y del mecánica que trabajos se agrupan por lotes a través deentre unaentre RESERVA de tiempo procesador deExiste forma frecuente. Para permitir estas operaciones necesario que exista un sistema ydeenes el que el microprocesador decide el tiempo que dedica a cada proceso. no aprovechado, por lo cual la CPU se encuentra casi todo el tiempo inactiva. archivos en línea. de cinta • Los Unidad componentes: de cinta • Los Unidad componentes: SPO OLI NG Sistemas operativo LING SPOO Lectores de tarjetas SPOOLING Unidad Discos de cinta SPO OLI NG LING SPOO Impresoras Unidad de línea cinta Sistemas operativo Lectores de tarjetas SPOOLING Unidad Discos de cinta Impresoras Unidad de línea cinta Usuario Usuario Usuario ... Lectores de tarjetas Impresoras de línea Consola Miguel Ángel Sanz Santos Sistemas Operativos Existen diferentes sistemas operativos, en los que son predominantes serie de en (los resultados de los trabajosuna se almacenan memoria o disco –BUFFERy son enviados a los características típicas del entorno para el cual han sido diseñados. En un recorrido histórico periféricos de salida en paquetes sin interferir con el desde los primeros a los más actuales y novedosos podemos, a grandes rasgos, distinguir: sistema operativo) Sistemas Sistemasde por por tiempo lotes lotesmultiprogramado sencillos compartido • Nace potenciado por la caída de los •• Es precios los ordenadores trascon la Es desarrollado para ordenadores de grandes dimensiones, son creados en 1960 pro Losdesarrollado primeros sistemas para ordenadores operativos creados construidos y destinados con válvulas adeordenadores de vacío. construidos no sonPC-personal utilizados hasta Windows computer comercialización de los desarrollos válvulas, y por tanto, de1970. grandesMicrosft dimensiones. •• Se desarrollan nuevos componentes y estrategias, que acelerar yelliberan funciones Macintosh electrónicos del entransistor, chip Se utilizan teclados para entrarAppel tanto instrucciones como datos sistema y comoy •que Son controlados desde una consola formada exclusivamente un teclado y una controla CPU. Es caso de la aparición de Discos Duros y por del SPOOLING periférico porladefecto se el usa una monitor o pantalla. microprosador. OS/2 impresora. • Se la interacción entre Linux el usuario programa desde que se una está ejecutando o bien Al permite igual que el tipo anterior, este controlado consola formada / Unix esy el • Destacanen por maximizar comodidad del alUna sistema operativo. •exclusivamente vez lanzado puede intervenirse el proceso de la cálculo. porun unprograma teclado yno una impresora. ETC. usuario y la conprogramas que el sistema Se ejecutan múltiples trabajos, la CPU conmuta losrapidez diferentes activos •• Los un desfase importante en velocidad laes electrónica y del mecánica que trabajos se agrupan por lotes a través deentre unaentre RESERVA de tiempo procesador responde aparte sus necesidades. deExiste forma frecuente. Para permitir estas operaciones necesario que exista un sistema ydeenes el que el microprocesador decide el tiempo que dedica a cada proceso. no aprovechado, por lo cual la CPU se encuentra casi todo el tiempo inactiva. archivos en línea. SPO OLI NG LING SPOO Unidad Discos de cinta En los últimos años han alcanzado Lectores capacidades de de tarjetas Sistemasy multiusuario. En general soportan un multitarea SPOOLING operativo único microprocesador, aunque las últimas versiones Impresoras Unidad de línea cinta pueden trabajar con varios. Usuario z Usuario Usuario Usuario ... Lectores de tarjetas Consola Miguel Ángel Sanz Santos Lectores de tarjetas Consola Usuario ... Usuario Impresoras de línea Miguel Ángel Sanz Santos Paseo histórico de cinta • Los Unidad componentes: Usuario Usuario Usuario ... Usuario Usuario ... Usuario Impresoras de línea Sistemas Operativos Paseo histórico Existen diferentes sistemas operativos, en los que son predominantes serie de en (los resultados de los trabajosuna se almacenan memoria o disco –BUFFERy son enviados a los características típicas del entorno para el cual han sido diseñados. En un recorrido histórico periféricos de salida en paquetes sin interferir con el desde los primeros a los más actuales y novedosos podemos, a grandes rasgos, distinguir: sistema operativo) Sistemas Sistemas de por por tiempo lotes lotes multiprogramado sencillos compartido Sistemas paralelos ☺ Sistemas constituidos varios • Nace potenciado por lapor caída de los microprocesadores, en los que se comparten todo •• Es precios de los ordenadores tras la Es desarrollado para ordenadores de grandes dimensiones, son creados en 1960 pro Losdesarrollado primeros sistemas para ordenadores operativos creados construidos y destinados con válvulas a ordenadores de vacío. construidos con no sonPC-personal utilizados hasta tipo de periféricos e inclusodela los memoria y los Windows computer comercialización desarrollos válvulas, y por tanto, de1970. grandesMicrosft dimensiones. •• Se desarrollan nuevos componentes y estrategias, que acelerar yelliberan funciones buses. La electrónicos utilización de n microprocesadores noy Macintosh del chip Se utilizan teclados para entrarAppel tanto instrucciones como datos entransistor, sistema y como •que Son controlados desde una consola formada exclusivamente un y una controla CPU. Es caso de la da aparición de Discos Duros del periférico porladefecto se el usa una monitor oun pantalla. microprosador. incremento linealy por de SPOOLING la teclado velocidad de OS/2 impresora. ya que pierde formada en la • Se la interacción entre Linux el usuario programa queparte se una estáseejecutando o bien Al permite igual que el tipo anterior, este controlado desde consola / procesado, Unix esy el • Destacan por maximizar comodidad del alUna sistema operativo. •exclusivamente vez lanzado puede intervenirse elmicroprocesadores proceso de la cálculo. porun unprograma teclado yno una impresora. ETC. comunicación deen los usuario y la conprogramas que el sistema Se ejecutan múltiples trabajos, la CPU conmuta losrapidez diferentes activos •• Los un desfase importante en velocidad laes electrónica y del mecánica que trabajos se agrupan por lotes a través deentre unaentre RESERVA de tiempo procesador responde aparte sus necesidades. deExiste forma frecuente. Para permitir estas operaciones necesario que exista un sistema ☺ Existen dos modalidades según se comporte el SO respecto a los microprocesadores ydeen el que el microprocesador decide el tiempo que dedica a cada proceso. no es aprovechado, por lo cual la CPU se encuentra casi todo el tiempo inactiva. archivos en línea. que constituyen el ordenador: de cinta z En los últimos años han alcanzado capacidades de • Los Unidad componentes: SPO OLI Lectores de tarjetas NG ☻ multiprocesamiento simétrico, enSistemas el queycada microprocesador ejecuta una copia multitarea multiusuario. En general soportan un SPOOLING ING del sistema operativo, Slas comunican entre si cuando es necesario. POOLcuales seoperativo único microprocesador, aunque las últimas versiones Unidad Discos de cinta Impresoras Unidad de línea cinta ☻ multiprocesamiento asimétrico cadatrabajar microprocesador tiene asignada una tarea pueden con varios. Usuario Usuario y especifica, un microprocesador maestro controla el sistema la comunicación entre Usuario Usuario ... Usuario ... Lectores de tarjetas los diferentes microprocesadores Impresoras de línea Usuario Consola Miguel Ángel Sanz Santos Sistemas Operativos Paseo histórico Existen diferentes sistemas operativos, en los que son predominantes serie de en (los resultados de los trabajosuna se almacenan memoria o disco –BUFFERy son enviados a los características típicas del entorno para el cual han sido diseñados. En un recorrido histórico periféricos de salida en paquetes sin interferir con el desde los primeros a los más actuales y novedosos podemos, a grandes rasgos, distinguir: sistema operativo) Sistemas Sistemas de por por tiempo lotes lotes multiprogramado sencillos compartido Sistemas paralelos ☺ Sistemas constituidos varios Sistemas distribuidos • Nace potenciado por lapor caída de los 9 Las operaciones de computación sesedistribuyen entre microprocesadores, en los que comparten precios deordenadores los ordenadores trastodo la Es desarrollado desarrollado para ordenadores ordenadores de grandes dimensiones, son creados en 1960 pro •• Es Los primeros sistemas para operativos creados construidos y destinados con válvulas a de vacío. construidos con distintos procesadores, los cuales se encuentran separados no sonPC-personal utilizados hasta tipo de periféricos e incluso memoria y los Microsft Windows computer comercialización dela los desarrollos válvulas, y por tanto, de1970. grandes dimensiones. unos de otros, teniendo cada uno de yellos su funciones memoria •• Se desarrollan nuevos componentes y estrategias, que acelerar buses. La electrónicos utilización de n microprocesadores noy Appel Macintosh del chip Se utilizan teclados para entrar tanto instrucciones como datos entransistor, elliberan sistema yrealiza como particular; la comunicación entre los procesadores se •que Son controlados desde una consola formada exclusivamente por un teclado y una controla la CPU. Es el caso de la aparición de Discos Duros y del SPOOLING periférico por defecto se usa unaOS/2 monitor pantalla. microprosador. da oun incremento lineal de la velocidad de a través de líneas de comunicación. impresora. ya que pierde formada en la • Se la interacción entre Linux el usuario programa queparte se una estáseejecutando o bien Al permite igual que el tipo anterior, este controlado desde consola / procesado, Unix esy el • Destacan 9 Los por maximizar comodidad del equipos (microprocesadores) no tienen por que tener alUna sistema operativo. •exclusivamente vez lanzado puede intervenirse elmicroprocesadores proceso de la cálculo. porun unprograma teclado yno una impresora. ETC. comunicación deen los usuario y la conprogramas que el sistema las mismas características. Se ejecutan múltiples trabajos, la CPU conmuta losrapidez diferentes activos •• Los un desfase importante en velocidad laes electrónica y del mecánica que trabajos se agrupan por lotes a través deentre unaentre RESERVA de tiempo procesador responde aparte sus necesidades. deExiste forma frecuente. Para permitir estas operaciones necesario que exista un sistema 9 de estos sistemas son: Las ventajas ☺ Existen dos modalidades según se comporte el SO respecto a los microprocesadores ydeen el que el microprocesador decide el tiempo que dedica a cada proceso. no es aprovechado, por lo cual la CPU se encuentra casi todo el tiempo inactiva. archivos en línea. que constituyen el ordenador: de cinta z En los últimos años han alcanzado capacidades de ••Los Unidad componentes: OLI Lectores de tarjetas Recursos compartidos.SPOLas de los NG conexiones entre ordenadores permiten la utilización ☻ multiprocesamiento simétrico, enSistemas el queycada microprocesador ejecuta una copia multitarea multiusuario. En general soportan un SPOOLING recurso de diferentes ordenadores.G IN operativo del sistema más operativo, sepueden comunican entre si cuando es necesario. POOLcuales • Computación rápida.Slas Los cálculos dividirse en varios susbcálculos concurrentes. único microprocesador, aunque las últimas versiones Unidad Discos de cinta Impresoras Unidad de línea cinta • Confiabilidad. Si un sitio de un sistema distribuido falla los otros pueden continuar funcionando. ☻ multiprocesamiento asimétrico cadatrabajar microprocesador tiene asignada una tarea pueden con varios. Usuario • Comunicación. Es posible el intercambio de información y datos entre los componentes del Usuario y especifica, un microprocesador maestro controla el sistema la comunicación entre Usuario Usuario ... Usuario sistema. ... Lectores de tarjetas los diferentes microprocesadores Impresoras de línea Usuario Consola Miguel Ángel Sanz Santos Sistemas Operativos Paseo histórico Existen diferentes sistemas operativos, en los que son predominantes serie de en (los resultados de los trabajosuna se almacenan memoria o disco –BUFFERy son enviados a los características típicas del entorno para el cual han sido diseñados. En un recorrido histórico periféricos de salida en paquetes sin interferir con el desde los primeros a los más actuales y novedosos podemos, a grandes rasgos, distinguir: sistema operativo) Sistemas dede tiempo real Sistemas Sistemas por por tiempo lotes lotes multiprogramado sencillos compartido Sistemas paralelos ☺ Sistemas constituidos varios Sistemas distribuidos • Nace potenciado por lapor caída de los 9 Las • Son sistemas usados cuando los requisitos de operaciones operaciones de computación sesedistribuyen entre microprocesadores, en los que comparten precios deordenadores los ordenadores trastodo la Es desarrollado desarrollado para ordenadores ordenadores de grandes dimensiones, son creados en 1960 pro •• Es Los primeros sistemas para operativos creados construidos y destinados con válvulas a de vacío. construidos con de un proceso o eldeflujo delos datos críticos. Suelen situarse distintos procesadores, cuales se encuentran separados no sonPC-personal utilizados hasta tipo periféricos eson incluso memoria y los Microsft Windows computer comercialización dela los desarrollos válvulas, y por tanto, de1970. grandes dimensiones. de dispositivos en unoscontroladores de otros, teniendo cada uno yde ycontroladores ellos su funciones memoria •• Se desarrollan nuevoscomo componentes y estrategias, que acelerar buses. La electrónicos utilización de n microprocesadores noy Appel Macintosh del chip Se utilizan teclados para entrar tanto instrucciones como datos entransistor, elliberan sistema yrealiza como aplicaciones dedicadas. particular; la comunicación entre los procesadores se •que Son controlados desde una consola formada exclusivamente por un teclado y una controla la CPU. Es el caso de la aparición de Discos Duros y del SPOOLING periférico por defecto se usa unaOS/2 monitor pantalla. microprosador. da oun incremento lineal de la velocidad de a través de líneas de comunicación. impresora. Un sistema de tiempo real se dice que ya que seejecutando pierdefunciona en la • Se la interacción entre el usuario y el programa queparte se una está o bien Al permite igual que el tipo• anterior, este controlado desde consola formada Linux / procesado, Unix es • 9 Destacan por maximizar la comodidad del correctamente cuando produce los resultados correctos los Los equipos (microprocesadores) no tienen por queentener alUna sistema operativo. •exclusivamente vez lanzado puede intervenirse proceso de cálculo. porun unprograma teclado yno una impresora. ETC. comunicación deen loselmicroprocesadores usuario y la conprogramas que el sistema las mismas características. intervalos tiempo esperados. Se ejecutan múltiples trabajos, lade CPU conmuta losrapidez diferentes activos •• Los un desfase importante en velocidad laes electrónica y del mecánica que trabajos se agrupan por lotes a través deentre unaentre RESERVA de tiempo procesador responde aparte sus necesidades. deExiste forma frecuente. Para permitir estas operaciones necesario que exista un sistema 9 •loExisten estos sistemas son: Las ventajas dos tipos de sistemas de tiempo real: ☺ Existen dos modalidades según se comporte el SO respecto a los microprocesadores ydeen el que el microprocesador decide el tiempo que dedica a cada proceso. no es aprovechado, por cual la CPU se encuentra casi todo el tiempo inactiva. archivos en línea. que constituyen el ordenador: de cinta z En los últimos años han alcanzado capacidades de ••Los Unidad componentes: Garantiza que las tareas críticas seLectores terminarán a OLI•Duro. de tarjetas Recursos compartidos.SPOLas de los NG conexiones entre ordenadores permiten la utilización Sistemas ☻ multiprocesamiento simétrico, el queyque cada microprocesador ejecuta unaestén copia multitarea multiusuario. En general soportan un SPOOLING recurso de diferentes ordenadores. tiempo y en requiere todos los retardos del sistema G IN operativo del sistema más operativo, sepueden comunican entre si cuando es necesario. POOLcuales • Computación rápida.Slas Los cálculos dividirse en varios susbcálculos concurrentes. limitados. único microprocesador, aunque las últimas versiones Unidad Discos de cinta Impresoras Unidad de línea cinta • Confiabilidad. Si un sitio de un sistema distribuido falla los otros pueden continuar funcionando. ☻ multiprocesamiento asimétrico cadatrabajar microprocesador tiene asignada una tarea pueden con varios. Usuario • Comunicación. Es posible el•Blando. intercambio de información y datos entre los componentes del Usuarioreal Las tareas criticas gozanentre de especifica, un microprocesador maestro controladeel tiempo sistema yUsuario la comunicación Usuario ... Usuario sistema. ... prioridad respecto a otras tareas. Lectores de tarjetas los diferentes microprocesadores Impresoras de línea Consola Usuario Miguel Ángel Sanz Santos Sistemas Operativos Objetivos y estructura Sistemas Operativos Objetivos y estructura Los objetivos que debe cumplir un sistema operativo son fundamentalmente: Asignación de recursos gracias a una organización de aquellos que se encuentran ocupados y libres • Comodidad y conveniencia de uso. • Eficacia, los recursos deben aprovecharse eficazmente. • Control de la ejecución de programas. La gestión de recursos debe: El sistema operativo puede estructurado a grandes rasgos en: considerarse Protección, asegurando la confidencialidad y no interferencia entre trabajos Contabilidad y monitorización Soporte de usuario • Núcleo: encargado de gestionar los recursos hardware. • Capa de servicios o llamadas al sistema: ofrece a los programas un conjunto de servicios en forma de interfaz de programación o API. • Capa de interprete de comandos o shell: suministra una interfaz a través de la cual el usuario puede dialogar de forma interactiva con la máquina. Miguel Angel Sanz Santos Ejecución de programas: lanzar, comunicar, sincronizar, finalizar programas, etc (concepto proceso) Las servicios debe: Órdenes de E/S : lectura, escritura y modificación del estado de los periféricos. Operaciones sobre ficheros: creación, borrado.. De ficheros Detección y tratamiento de errores: en opciones de e/s, de paridad, desbordamiento... Miguel Angel Sanz Santos Sistemas Operativos Objetivos y estructura Objetivos y estructura Sistemas Operativos Atendiendo a la estructura interna del núcleo, podemos dividir los sistemas operativos en tres tipos principales, así tenemos: Espera orden de usuario Shell: bucle infinito Sistema Operativo interfaz de usuario Analiza orden, y la ejecuta empleando los servicios del SO El shell puede ser Interfaz textual Interfaz gráfica • Monolíticos, caracterizados por: • Sus componentes se integran en un único programa • Se ejecuta en un único espacio de direcciones • La ejecución se realiza en modo núcleo (supervisor) • Inconveniente: difícil de modificar • Ej: MS-DOS y Unix • Sistemas estructurados en capas, caracterizados por: • El programa se organiza en una jerarquía de capas • Cada capa ofrece una interfaz a la capa superior • Cada capa sólo utiliza los servicios de la capa inferior • Ventajas: modularidad, ocultación de información • Ej: S.O. THE[Dijkstra, 1968]. S.O.Venus • Micronúcleo. • Se implementan los servicios básicos en un programa que se ejecuta en modo núcleo (micronúcleo) • Funciones: gestión de interrupciones, gestión básica de procesos y memoria y servicios básicos de comunicación entre procesos • El resto de los servicios (la mayor parte) se implementan en programas independientes que se ejecutan en modo usuario, en espacios de direcciones distintos (servidores) • Ventajas: se dividen las funcionalidades, fácil desarrollo y depuración, fácil ampliación • Inconvenientes: Mayor sobrecarga en el tratamiento Miguel Angel Sanz Santos Características de UNIX Miguel Angel Sanz Santos Sistemas Operativos Características de Linux Sistemas Operativos La primera versión de Unix fue realizada en 1969 por los laboratorios Bell, su diseño y evolución ha permitido una gran diversidad de variantes y derivados. Su desarrollo comienza en 1991 gracias a Linus Torvalds que desarrollo el primer núcleo para un procesador 80386 de Intel. Es un sistema muy ligado a UNIX con el que comparte gran compatibilidad.. Las principales características de su diseño son: Es un sistema desarrollado gracias a la colaboración de un gran grupo de personas de todo el mundo que se mantienen en contacto a través de Internet Diseñado inicialmente como sistema de tiempo compartido. La interfaz de usuario (shell) es sencilla y puede ser sustituida por otra. El sistema de archivos es de tipo árbol con múltiples niveles. Los archivos son secuencias bytes. Los archivos se organizan en directorios (archivos especiales que contienen referencias a los archivos que contienen). Los dispositivos del sistema se gestionan como archivos especiales, los cuales constituyen la interfaz del dispositivo. Los archivos se pueden estar referenciados desde diferentes sitios y con diferentes nombres, lo que se denomina enlaces Soporte para múltiples procesos. La planificación de la CPU es un sencillo algoritmo de prioridades. Es un sistema diseñado por programadores para programadores. El lenguaje de programación utilizado es el C. Consta de dos parte bien diferenciadas Núcleo: constituido por todo lo que está por debajo de la interfaz de llamadas al sistema y por encima del núcleo Programas del sistema. Son los encargados de reconocer las llamadas del núcleo para desempeñar las funciones útiles. • Cada programa en ejecución constituye un proceso y a cada uno de ellos se le reconoce por un identificador de proceso (un número entero). • Tienen un soporte importante para la gestión de recursos de red. Miguel Angel Sanz Santos Las principales características de su diseño son: El núcleo contiene código escrito desde cero, el software de soporte que acompaña al núcleo no es exclusivo de Linux y si común a varios sistemas operativos de tipo UNIX. El sistema es mantenido por una red de desarrolladores mundial conectada a través de Internet Existen varias distribuciones y su licencia es GPL (Licencia Publica General) de GNU. Sistema multiusuario, multitarea y compatible UNIX. Esta constituido por tres cuerpos principales: El núcleo: encargado de mantener las abstracciones del sistema. La biblioteca del sistema: define un conjunto estándar de funciones a través de las cuales las aplicaciones se comunican con el núcleo. Utilitarios del sistema: son programas que realizan tareas de administración especializadas e individuales. El núcleo de Linux puede cargar y descargar secciones arbitrarias del código, esta facultad permite montar y desmontar controladores de dispositivos con gran facilidad. Presenta tres componentes: •Gestión de módulos: permite cargar los módulos en memoria y la comunicación con el sistema. •Registro de controladores se encarga de permitir a los módulos notificar que están disponibles para el núcleo •Resolución de conflictos: permite reservar a los drivers reservar recurso de hardware y protegerlos. La gestión de procesos es similar a la de UNIX. Permite el mutiprocesamiento asimétrico La estructura de red es clave en Linux, implementando un gran numero de protocolos de red El modulo de seguridad está íntimamente ligado a los tipos de UNIX. Miguel Angel Sanz Santos Características de Windows NT Sistemas Operativos La primera versión de Windows NT fue 3.1 y vio la luz en 1993. Es una continuación del proyecto de sistema operativo de Microsoft comenzada inicialmente con IBM 1987 con el OS/2. Las principales características de su diseño son: Es un sistema operativo multitarea y multiusuario de 32 bits. Es portable a diferentes arquitecturas de hardware basadas en diferentes procesadores. La arquitectura del núcleo es de tipo micronúcleo (permite hacer mejoras en parte del sistema operativo sin afectar demasiado al resto del sistema operativo). Los objetivos de su diseño han sido: Extensibilidad: estructura de capas – Capa de abstracción de hardware, Núcleo o Kernel, Ejecutivo (servicios básicos del sistema), Colección de subsistemas Los tres primeros se ejecutan en modo protegido, mientras el último lo hace en modo usuario. Portátil: con pocos cambios es transportable a distintas arquitecturas de hardware favorecido por la estructura en capas. Su código ha sido escrito en C y C++. Confiabilidad: capacidad para manejar condiciones de error, incluida la capacidad del sistema operativo para protegerse a si mismo. Compatibilidad: es compatible a nivel de fuente con aplicaciones que sigan el estándar IEEE 1003.1 (POXIS). Desempeño: los subsistema que componen parte del sistema operativo se comunican entre si de forma eficiente mediante llamadas a procedimientos locales. Internacionalidad: soporte para diferentes idiomas. • Sistema de archivos NTFS: diseñado teniendo en cuenta funciones de recuperación de datos, seguridad, tolerancia a fallos, sistema de archivos grandes, múltiple flujo de datos, nombres UNICODE, compresión de archivos. Los archivos no son flujo de bytes, son objetos estructurados. • Es un sistema con un excelente soporte para redes, incluyendo gran cantidad de protocolos. • La interfaz de programación la constituye la API Win32. Ordenación de sistema de archivos: Ordenación de sistema de archivos: Sistemas Operativos Los sistemas de archivos los sistemas que hemos referido están estructurados en una morfología en árbol, si bien la estructura entre UNIX/Linux y Windows difiere mucho el ordenación y gestión de dicha estructura. Windows: Tiene una estructura en árbol que parte de un directorio raíz al que se le asigna una letra del alfabeto, por defecto se crearán una serie de directorios estándar, pero necesarios salvo en las últimas versiones, estos son: Archivos de programas: teóricamente donde se instalarán los programas de usuario por defecto. Documents and Settings: donde se crearán para cada usuario los directorios de configuración y de almacenaje de ficheros personales. La estructura básica de un usuario es: Datos de programa (oculto): información de programas instalados por el usuario y de los programas que esta autorizado usar. Documentos compartidos: documentos que se pueden compartir con otros usuarios. Escritorio: la configuración del escritorio del usuario. Favoritos: enlaces del usuario. Menú inicio: configuración del menú de usuario. Plantillas (oculto): lugar de almacenamiento de plantillas del usuario. Además de estos el usuario directorios a cada usuario se le crearán otros en función de las necesidades de determinados programas. Windows/winnt: donde se almacena el sistema operativo y el conjunto de ficheros necesarios. La estructura de directorios es muy compleja de los cuales hay que destacar: Config: almacena la configuración del equipo Segurite: almacena los ficheros de configuración de los servicios y los ficheros de log System/System32: en ellos se guardan los ficheros de bibliotecas dinámicas y ficheros del sistema Font: almacena los ficheros de fuentes utilizables por el sistema y los programas de usuario Help: se encuentran en el directorio los ficheros de ayuda. Debug: guarda los ficheros de sucesos del sistema. Miguel Angel Sanz Santos Miguel Angel Sanz Santos Sistemas Operativos Sistemas Operativos Los sistemas UNIX/Linux tienen una organización más rígida y el conjunto de directorios que se crea al ser instalado tiene muy establecido su uso. La estructura básica del conjunto de directorios es: / : directorio raíz /home: directorio donde se almacenarán los directorios particulares de cada usuario. /root: directorio del superusuario o administrador del sistema, solamente accesible por él. /mnt: directorio donde por defecto se montarán los diferentes sistemas de archivos, cada uno de ellos aparecerá como un directorio. /bin: almacenara los binarios correspondientes a los comandos esenciales. /sbin: almacena los binarios que permiten mantener el sistema y administrarlo. /dev: guarda los archivos de dispositivos (controladores). /lib: mantiene las librerías compartidas. /etc: mantiene los ficheros de la configuración del sistema local. /tmp: archivos temporales /var: información sobre las variables. /usr: constituye una segunda jerarquía de ordenación. En el se suelen instalar muchos de los programas y librerías que serán utilizados por los diferentes usuarios. Comandos básicos de Windows y Linux/Unix en modo terminal. En ambos sistemas no existen asignaciones a unidades como en windows, además el sistema es sensible a las mayúsculas/minúsculas y el conjunto de sistemas de almacenamiento se observa como un todo sin diferenciación de volúmenes Los ficheros ejecutables deben ser llamados precedidos de un ,/ para ser ejecutados, o bien desde un interprete de comandos. La privacidad en los sistemas UNIX/Linux es alta y los ficheros a parte de encontrarse con los atributos típicos de windows, tiene otro conjunto de ellos que hace referencia al usuario o usuarios que pueden utilizarlos. Miguel Angel Sanz Santos Miguel Angel Sanz Santos Bibliografía. • Silberschatz Galvin (1999) “Sistemas operativos” 5ª edición Edit PearsonAddison Wesley Logman, 891 pg. México. • Servicio de documentación on-line de Microsoft • Manuales de Windows 2000 y Linux • Directorio Sistemas Operativos CD • Tema 1 Sistemas Operativos - Marián D. Fondón / Miguel R. Albizu • Sistemas operativos – Un paseo por la historia: Lidón García, Luis Peralta, Samuel Fernández • Capitulo 1 • Sistemas operativos Francisco Leonel Rubio Quintanilla.