Mejía Huidobro Miriam Angelica 2CM32 Sistemas Operativos HISTORIA Y EVOLUCIÓN DE LOS SISTEMAS OPERATIVOS La informática tal y como se le conoce hoy día, surgió a raíz de la II Guerra Mundial, en la década de los 40. En esos años no existía siquiera el concepto de "Sistema Operativo" y los programadores interactuaban directamente con el hardware de las computadoras trabajando en lenguaje máquina (esto es, en binario, programando únicamente con 0s y 1s). El concepto de Sistema Operativo surge en la década de los 50. A principios de los años 50 con el objeto de facilitar la interacción entre persona y computador, los sistemas operativos hacen una aparición discreta y bastante simple, con conceptos tales como el monitor residente, el proceso por lotes y el almacenamiento temporal. Monitor residente: Su funcionamiento era bastante simple, se limitaba a cargar los programas a memoria, leyéndolos de una cinta o de tarjetas perforadas, y ejecutarlos. El problema era encontrar una forma de optimizar el tiempo entre la retirada de un trabajo y el montaje del siguiente. Procesamiento por lotes: Como solución para optimizar el tiempo de montaje surgió la idea de agrupar los trabajos en lotes, en una misma cinta o conjunto de tarjetas, de forma que se ejecutaran uno a continuación de otro sin perder apenas tiempo en la transición. Almacenamiento temporal: Su objetivo era disminuir el tiempo de carga de los programas, haciendo simultánea la carga del programa o la salida de datos con la ejecución de la siguiente tarea. Para ello se utilizaban dos técnicas, el buffering y el spooling. El primer Sistema Operativo de la historia fue creado en 1956 para un ordenador IBM 704, y básicamente lo único que hacía era comenzar la ejecución de un programa cuando el anterior terminaba. En los años 60 se produce una revolución en el campo de los Sistemas Operativos. Aparecen conceptos como sistema multitarea, sistema multiusuario, sistema multiprocesadores y sistema en tiempo real. Es en esta década cuando aparece UNIX, la base de la gran mayoría de los Sistemas Operativos que existen hoy en día. En los años 70 se produce un boom en cuestión de ordenadores personales, acercando estos al público general de manera impensable hasta entonces. Esto hace que se multiplique el desarrollo, creándose el lenguaje de programación C (diseñado específicamente para reescribir por completo el código UNIX). Como consecuencia de este crecimiento exponencial de usuarios, la gran mayoría de ellos sin ningún conocimiento sobre lenguajes de bajo o alto nivel, hizo que en Mejía Huidobro Miriam Angelica 2CM32 Sistemas Operativos los años 80, la prioridad a la hora de diseñar un sistema operativo fuese la facilidad de uso, surgiendo así las primeras interfaces de usuario. En los 80 nacieron sistemas como MacOS, MS-DOS, Windows. En la década de los 90 hace su aparición Linux, publicándose la primera versión del núcleo en septiembre de 1991, que posteriormente se uniría al proyecto GNU, un sistema operativo completamente libre, similar a UNIX, al que le faltaba para funcionar un núcleo funcional. Pasos evolutivos Proceso en serie Inicialmente, finales de los 40, el programador interactúa directamente con la máquina mediante conmutadora, indicadora luminosa y tal vez una impresora. No existe el sistema operativo y los usuarios de un ordenador se turnan para acceder secuencialmente, en serie. Proceso por lotes Se desarrolla un elemento de software denominado monitor que es capaz de ejecutar tareas, lotes, de manera secuencial. En estos sistemas informáticos los programadores pasaban a los administradores de sistemas los programas a ejecutar en cinta (o tarjetas perforadas) y el sistema los ejecutaba secuencialmente y de manera no interactiva. Multiprogramación o multitarea Con el ánimo de maximizar el uso de la CPU se cargan varios programas de manera simultánea. Así mientras un proceso está bloqueado por una operación de entrada/salida, la CPU puede continuar la ejecución de otro proceso. Sistemas de tiempo compartido El sistema reparte la atención de la CPU (o CPUs) entre diferentes procesos, simulando la ejecución en paralelo de los mismos. Los sistemas de tiempo compartido permiten que varios usuarios trabajen de manera simultánea y en modo interactivo. Uno de los primeros sistemas de tiempo compartido fue el CTSS (Compatible Time-Sharing System) desarrollado en el MIT.