El documento describe los sistemas operativos. Resume que los sistemas operativos se encuentran en la mayoría de los dispositivos electrónicos para permitir la interacción con el usuario y gestionar los recursos hardware. Explica que los sistemas operativos administran procesos, archivos, memoria, dispositivos de entrada/salida y ofrecen servicios a los programas de usuario a través de llamadas al sistema. También clasifica los sistemas operativos según su administración de tareas, usuarios, recursos y forma de procesar trabajos.
1. Sistemas Operativos LOCALIZACION Se puede encontrar normalmente en la mayoría de los aparatos electrónicos que utilicen microprocesadores para funcionar, ya que gracias a éstos podemos entender la máquina y que ésta cumpla con sus funciones
2. DEFINICION Es un programa o conjunto de programas de computadora destinado a permitir una gestión eficaz de sus recursos. Comienza a trabajar cuando se enciende el computador, y gestiona el hardware de la máquina desde los niveles más básicos, permitiendo también la interacción con el usuario. Es una interfaz y consta de : Programadores de sistemas (administradores del S.O.), Operadores, Programadores de aplicaciones, Programas, Hardware, Usuarios.
3. Características Definir la “Interfaz del Usuario”. Compartir el hardware entre usuarios. Permitir a los usuarios compartir los datos entre ellos. Planificar recursos entre usuarios. Facilitar la entrada / salida. Recuperarse de los errores. Los principales recursos administrados Procesadores. Almacenamiento. Dispositivos de e / s. Datos.
4. CONCEPTOS La interfaz entre el S. O. y los programas del usuario se define como el conjunto de “instrucciones ampliadas”que proporciona el S. O. y son las “llamadas al sistema”: Crean, eliminan y utilizan objetos del software controlados por el S. O.: Los mas importantes son procesos y archivos. Procesos: Es un programa en ejecución que necesita recursos para realizar su tarea, consta del programa ejecutable, sus datos y pila, contador y otros registros, además de la información necesaria para ejecutar el programa. La información de control relacionada con los procesos se almacena en la tabla de procesos:.
5. Archivos: Son colecciones de información relacionada, definidas por sus creadores. Éstos almacenan programas (en código fuente y objeto) y datos tales como imágenes, textos, información de bases de datos, etc. El SO es responsable de Construir y eliminar archivos y directorios, Ofrecer funciones para manipular archivos y directorios, Establecer la correspondencia entre archivos y unidades de almacenamiento.Realizar copias de seguridad de archivos. Existen diferentes Sistemas de Archivos o formas de organizar la información que se almacena en las memorias (normalmente discos) de los ordenadores. EjFAT, FAT32, EXT3, NTFS, XFS, etc.
6.
7. Luego de “trap” el S. O. recupera el control , examina los parámetros y si son válidos ejecuta el trabajo solicitado.
8. Luego de terminar, el S. O. coloca un código de estado en un registro indicando si tuvo éxito o fracaso y ejecuta una instrucción del tipo “returnfromtrap” para regresar el control al procedimiento.
9.
10. Máquinas virtuales: Es una implementación de software de una máquina física ya sea un servidor o una pc, utilizando recursos físicos como cpu, memoria y disco rígido del equipo físico donde corren los cuales le permiten a la misma correr un S.O. . En estas VM Se separan totalmente las funciones de multiprogramación y de máquina extendida. Existe un elemento central llamado monitor de la máquina virtual que: Se ejecuta en el hardware. Realiza la multiprogramación. Proporciona varias máquinas virtuales a la capa superior. Las máquinas virtuales instrumentan copias “exactas” del hardware simple, con su modo núcleo /usuario, e / s, interrupciones y todo lo demás que posee una máquina real. Pueden ejecutar cualquier S. O. que se ejecute en forma directa sobre el hardware. Las distintas máquinas virtuales pueden ejecutar distintos S. O. y en general así lo hacen..
11. NÚCLEO o KERNEL El núcleo (es la 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. Como hay muchos programas y el acceso al hardware es limitado, el núcleo también se encarga de decidir qué programa podrá hacer uso de un dispositivo de hardware y durante cuánto tiempo, lo que se conoce como multiplexado. Funciones Garantizar el cargamento y la ejecución de los procesos, las entradas/salidas y proponer un interfaz entre el espacio núcleo y los programas del espacio del usuario.
12. FUNCIONES INTERFACES DE USUARIO ADMINISTRACIÓN DE RECURSOS ADMINISTRACION DEARCHIVOS ADMINISTRACION DE TAREAS SERVICIO DE SOPORTE .
13. INTERFACES DEL USUARIOEs la parte del sistema operativo que permite comunicarse con él de tal manera que se puedan cargar programas, acceder archivos y realizar otras tareas. Existen tres tipos básicos de interfaces: las que se basan en comandos, las que utilizan menús y las interfaces gráficas de usuario. ADMINISTRACIÓN DE RECURSOSSirven para administrar los recursos de hardware y de redes de un sistema informativo, como el CPU, memoria, dispositivos de almacenamiento secundario y periféricos de entrada y de salida
14. ADMINISTRACIÓN DE ARCHIVOS Un S. I. contiene programas de administración de archivos controla la creación, borrado y acceso de archivos de datos y de programas, también implica mantener el registro de la ubicación física de los archivos en los discos magnéticos y en otros dispositivos de almacenamiento secundarios. ADMINISTRACIÓN DE TAREAS administran la realización de las tareas informáticas de los usuarios finales. Los programas controlan que áreas tiene acceso al CPU y su tiempo; distribuye partes del tiempo del CPU para asignar o interrumpir al CPU si tiene otra tarea de mayor prioridad.
15. SERVICIO DE SOPORTE Dependerán de la implementación particular de éste con la que estemos trabajando. Estos servicios de soporte suelen consistir en: Actualización de versiones, Mejoras de seguridad., Inclusión de alguna nueva utilidad (un nuevo entorno gráfico, un asistente para administrar alguna determinada función, ...), Controladores para manejar nuevos periféricos (este servicio debe coordinarse a veces con el fabricante del hardware),Corrección de errores de software. Otros.
16. EVOLUCION HISTORICA GENERACION 0 (..1940) El uso de computadoras era restringido al pago de su alto precio, carencia de s.o, con acceso a través del lenguaje de máquina PRIMERA GENERACION (A finales de los 40's) Estructura Grandes máq. ejecutándose desde una consola por medio de tableros enchufables y tarjetas perforadas o cintas programadas Computadora dedicada a un solo usuario-programador. Primeros Software utilizados fueron: Ensambladores, compilad., cargadores, drivers, Librerías de subrutinas comunes, Desventajas Uso ineficiente de recursos , Baja utilización del CPU, Mucho tiempo en inicialización del sistema (setup-time), Programación y depuración lenta y tediosa.
17.
18. Multiprocesamiento: varios procesadores se utilizan en un mismo sistema para incrementar el poder de procesamiento.Aparece después Independencia de dispositivo: El programa del usuario especifica las características de los dispositivos que requieren los archivos. El S. O. asigna los dispositivos correspondientes según los requerimientos y las disponibilidades
19. TERCERA GENERACION (1965-1980) Caracterizado por los circuitos integrados y multiprogramación Difusión de la multiprogramación: Partición de memoria en porciones, con trabajos distintos en c/u de ellasy protegiendo su contenido por hardware Aprovechamiento del te consecuencia de operaciones de e/s, al utilizar la CPU para otros procesos. Aparición de técnicas de spooling: (Simultaneous Peripheral Operation On Line): Aparece el disco magnètico como nueva solución a los problemas de rendimiento, eliminando las cintas magnéticas (un disco simula varias cintas). Debido al solapamiento del cálculo de un trabajo con la E/S de otro trabajo se crean tablas en el disco para diferentes tareas Soportan timesharing (tiempo compartido), y Aparecen los sistemas de tiempo real, que requieren tiempos de respuesta muy exigentes,
20.
21. Surgen los S.O. distribuidos: Los usuarios no son conscientes del lugar donde se ejecutan sus programas o donde se encuentran sus archivos, ya que lo debe administrar el S. O. automáticamente.
22. Gran énfasis en la seguridad, en especial por el desarrollo de los sistemas de comunicaciones de datos.
23. El S. O. crea un ambiente de trabajo según el concepto de máquina virtual, que lo aísla del funcionamiento interno de la máquina.
24.
25. Segùn Administración de usuarios Monousuario: permite ejecutar los programas de un usuario al mismo tiempo. Multiusuario: permite que varios usuarios ejecuten simultáneamente sus programas, accediendo a la vez a los recursos de la computadora. Normalmente estos sistemas operativos utilizan métodos de protección de datos, de manera que un programa no pueda usar o cambiar los datos de otro usuario.
26. Segùn Manejo de recursos Centralizado: Permite usar los recursos de una sola computadora. Distribuido: Permite utilizar los recursos (memoria, CPU, disco, periféricos... ) de más de una computadora al mismo tiempo.
27. Segùnvisualizaciòn del Usuario Tiempo Real La importancia radica en el usuario, no en el proceso. Subutilizan sus recursos con la finalidad de prestar atención a los procesos en el momento que lo requieran. Se utilizan en entornos donde son procesados un gran número de sucesos o eventos. Ej.: Control de tráfico aéreo, bolsas de valores, control de refinerías. Tiempo Compartido Permiten la simulación de que el sistema y sus recursos son todos para cada usuario. El usuario hace una petición a la computadora, ésta la procesa tan pronto como le es posible, y la respuesta aparecerá en la terminal del usuario. desventaja: Los principales recursos del sistema, son continuamente utilizados entre los diversos usuarios, trae como consecuencia una sobrecarga de trabajo al S.O., principalmente en la administración de memoria principal y secundaria.
28. Segùn forma de procesar el trabajo Por Lotes Procesan una gran cantidad de trabajos con poca o ninguna interacción entre los usuarios y los programas en ejecución. Se reúnen todos los trabajos comunes para realizarlos al mismo tiempo En Serie Se procesan los trabajos en secuencia, por lo tanto los demás esperan mientras el proceso termina y continua el siguiente Paralelos Se pretende que cuando existan dos o más procesos que compitan por algún recurso se puedan realizar o ejecutar al mismo tiempo. (es decir, atendidendode manera concurrente varios procesos de un mismo usuario).
29. ESTRUCTURA ESTRUCTURA MODULAR O MONOLÌTICO La estructura consiste en que no existe estructura alguna o es muy mínima. El S.O. se escribe como una colección de procedimientos, cada uno de los cuales puede llamar a los demás cada vez que así lo requiera. Cuando se usa esta técnica, cada procedimiento del sistema tiene una interfaz bien definida en términos de parámetros y resultados y cada uno de ellos es libre de llamar a cualquier otro, si este ultimo proporciona cierto cálculo útil para el primero. Esta organización sugiere una organización básica del S.O. es1.- Un programa principal llama al procedimiento del servicio solicitado.2.-El conjunto de procedimientos de servicio que llevan a cabo las llamadas al sistema. 3.-Un conjunto de procedimientos utilitarios que ayudan al procedimiento de servicio.
30. ESTRUCTURA MICROKERNEL Las funciones centrales de un S.O. son controladas por el núcleo (kernel) mientras que la interfaz del usuario es controlada por el entorno (shell). Por ejemplo, la parte más importante del DOS es un programa con el nombre "COMMAND.COM" Este programa tiene dos partes.: El kernel, se mantiene en memoria en todo momento, contiene el código máquina de bajo nivel para manejar la admón de hardware para otros programas que necesitan estos servicios El shell, el cual es el interprete de comandos . Las funciones de bajo nivel del S.0. y las funciones de interpretación de comandos están separadas, de tal forma que se puede mantener el kernel DOS corriendo, pero utilizar una interfaz de usuario diferentecomointerfase grafica de usuario de WINDOWS.
31. ESTRUCTURA POR ANILLOS CONCÉNTRICOS (CAPAS) El sistema por "capas" consiste en organizar el S. O. como una jerarquía de capas, cada una construida sobre la inmediata inferior. El primer sistema construido de esta manera fue el sistema THE (TechnischeHogeschoolEindhoven), desarrollado en Holanda por E. W. Dijkstra (1968) y sus estudiantes.
32. Capa 0: Trabaja con la asignación del procesador. Alterna entre los procesos cuando ocurren las interrupciones o expiran los cronómetros. Proporciona la multiprogramación básica. Capa 1: Administra la memoria. Asegura que las páginas (porciones de memoria) requeridas de los procesos lleguen a memoria cuando fueran necesarias. Capa 2: Administra la comunicación entre cada proceso y la consola del operador. Por sobre esta capa, cada proceso tiene su propia consola de operador. Capa 3: Controla los dispositivos de e / s y almacena en buffers los flujos de información entre ellos. Por sobre la capa 3 cada proceso puede trabajar con dispositivos abstractos de e / s en vez de con dispositivos reales. Capa 4: Aloja los programas del usuario. Los programas. del usuario no tienen que preocuparse por el proceso, memoria, consola o control de e / s. Capa 5: Localiza el proceso operador del sistema.
33. ESTRUCTURA CLIENTE-SERVIDOR Una tendencia de los S.O. es la de mover el código a capas superiores y eliminar la mayor parte posible del S.O. para mantener un núcleo mínimo, buscando implantar la mayoría de las funciones del s.o.en los procesos del usuario. Para solicitar un servicio; un proceso del usuario (denominado proceso cliente) envía la solicitud a un proceso servidor, que realiza entonces el trabajo y regresa la respuesta. En este modelo, lo único que hace el núcleo es controlar la comunicación entre los clientes y los servidores. Al separar el sistema operativo en partes, cada una de ellas controla una faceta del sistema, los servidores se ejecutan como procesos en modo usuario y no en modo núcleo, no tienen acceso directo al hardware. En consecuencia si hay un error en un servidor, éste puede fallar, pero esto no afectará eatoda la máquina . .