Historia y Evolución de Los SO
Historia y Evolución de Los SO
Historia y Evolución de Los SO
Sistemas Operativos
La dcada de 1940
A finales de la dcada de 1940, con lo que se podra considerar la aparicin de la primera generacin de computadoras, se acceda directamente a la consola de la computadora desde la cual se actuaba sobre una serie de micro interruptores que permitan introducir directamente el programa en la memoria de la computadora (en realidad al existir tan pocas computadoras todos podran considerarse prototipos y cada constructor lo haca sin seguir ningn criterio predeterminado). Por aquel entonces no existan los sistemas operativos, y los programadores deban interactuar con el hardware del computador sin ayuda externa. Esto haca que el tiempo de preparacin para realizar una tarea fuera considerable. Adems para poder utilizar la computadora deba hacerse por turnos. Para ello, en muchas instalaciones, se rellenaba un formulario de reserva en el que se indicaba el tiempo que el programador necesitaba para realizar su trabajo. En aquel entonces las computadoras eran mquinas muy costosas lo que haca que estuvieran muy solicitadas y que slo pudieran utilizarse en periodos breves de tiempo. Todo se haca en lenguaje de mquina.
La dcada de 1950
A principios de los aos 50 con el objeto de facilitar la interaccin entre persona y computadora, los sistemas operativos hacen una aparicin 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, leyndolos 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 solucin para optimizar, en una misma cinta o conjunto de tarjetas, se cargaban varios programas, de forma que se ejecutaran uno a continuacin de otro sin perder apenas tiempo en la transicin. Almacenamiento temporal Su objetivo era disminuir el tiempo de carga de los programas, haciendo simultnea la carga del programa o la salida de datos con la ejecucin de la siguiente tarea. Para ello se utilizaban dos tcnicas, el buffering y el spooling.
La dcada de 1960
En los aos 60 se produjeron cambios notorios en varios campos de la informtica, con la aparicin del circuito integrado la mayora orientados a seguir incrementando el potencial de los ordenadores. Para ello se utilizaban tcnicas de lo ms diversas. Multiprogramacin En un sistema multi programado la memoria principal alberga a ms de un programa de usuario. La CPU ejecuta instrucciones de un programa, cuando el que se encuentra en ejecucin realiza una operacin de E/S; en lugar de esperar a que termine la operacin de E/S, se pasa a ejecutar otro programa. Si ste realiza, a su vez, otra operacin de E/S, se mandan las rdenes oportunas al controlador, y pasa a ejecutarse otro. De esta forma es posible, teniendo almacenado un conjunto adecuado de tareas en cada momento, utilizar de manera ptima los recursos disponibles.
Tiempo compartido En este punto tenemos un sistema que hace buen uso de la electrnica disponible, pero adolece la falta de interactividad; para conseguirla debe convertirse en un sistema multiusuario, en el cual existen varios usuarios con un terminal en lnea, utilizando el modo de operacin de tiempo compartido. En estos sistemas los programas de los distintos usuarios residen en memoria. Al realizar una operacin de E/S los programas ceden la CPU a otro programa, al igual que en la multiprogramacin. Pero, a diferencia de sta, cuando un programa lleva cierto tiempo ejecutndose el sistema operativo lo detiene para que se ejecute otra aplicacin. Tiempo real Estos sistemas se usan en entornos donde se deben aceptar y procesar en tiempos muy breves un gran nmero de sucesos, en su mayora externos al ordenador. Si el sistema no respeta las restricciones de tiempo en las que las operaciones deben entregar su resultado se dice que ha fallado. El tiempo de respuesta a su vez debe servir para resolver el problema o hecho planteado. El procesamiento de archivos se hace de una forma continua, pues se procesa el archivo antes de que entre el siguiente, sus primeros usos fueron y siguen siendo en telecomunicaciones. Multiprocesador Diseo que no se encuentran en ordenadores monoprocesador. Estos problemas derivan del hecho de que dos programas pueden ejecutarse simultneamente y, potencialmente, pueden interferirse entre s. Concretamente, en lo que se refiere a las lecturas y escrituras en memoria. Existen dos arquitecturas que resuelven estos problemas: La arquitectura NUMA, donde cada procesador tiene acceso y control exclusivo a una parte de la memoria. La arquitectura SMP, donde todos los procesadores comparten toda la memoria. Esta ltima debe lidiar con el problema de la coherencia de cach. Cada microprocesador cuenta con su propia memoria cache local. De manera que cuando un microprocesador escribe en una direccin de memoria, lo hace nicamente sobre su copia local en cach. Si otro microprocesador tiene almacenada la misma direccin de memoria en su cach, resultar que trabaja con una copia obsoleta del dato almacenado. Para que un multiprocesador opere correctamente necesita un sistema operativo especialmente diseado para ello. La mayora de los sistemas operativos actuales poseen esta capacidad. Sistemas operativos desarrollados Adems del Atlas Supervisor y el OS/360, los aos 1970 marcaron el inicio de UNIX, a mediados de los 60 aparece Multics, sistema operativo multiusuario - multitarea desarrollado por los laboratorios Bell de AT&T y Unix, convirtindolo en uno de los pocos SO escritos en un lenguaje de alto nivel. En el campo de la programacin lgica se dio a luz la primera implementacin de Prolog, y en la revolucionaria orientacin a objetos, Smalltalk. Inconvenientes de los Sistemas operativos Se trataba de sistemas grandes, complejos y costosos, pues antes no se haba construido nada similar y muchos de los proyectos desarrollados terminaron con costos muy por encima del presupuesto y mucho despus de lo que se marcaba como fecha de finalizacin. Adems, aunque formaban una capa entre el hardware y el usuario, ste deba conocer un complejo lenguaje de control para realizar sus trabajos. Otro de los inconvenientes es el gran consumo de recursos que ocasionaban, debido a los grandes espacios de memoria principal y secundaria ocupados, as como el tiempo de procesador consumido. Es por esto que se intent hacer hincapi en mejorar las tcnicas ya existentes de multiprogramacin y tiempo compartido.
Caractersticas de los nuevos sistemas Sistemas operativos desarrollados MULTICS (Multiplexed Information and Computing Service): Originalmente era un proyecto cooperativo liderado por Fernando Corbat del MIT, con General Electric y los laboratorios Bell, que comenz en los 60, pero los laboratorios Bell abandonaron en 1969 para comenzar a crear el sistema UNIX. Se desarroll inicialmente para el mainframe GE-645, un sistema de 36 bits; despus fue soportado por la serie de mquinas Honeywell 6180.
Fue uno de los primeros. Adems, los traduca a instrucciones de alto nivel destinadas a BDOS. BDOS (Basic Disk Operating System): Traductor de las instrucciones en llamadas a la BIOS.
El hecho de que, aos despus, IBM eligiera para sus PC a MS-DOS supuso su mayor fracaso, por lo que acab desapareciendo.
La dcada de 1980
Con la creacin de los circuitos LSI -integracin a gran escala-, chips que contenan miles de transistores en un centmetro cuadrado de silicio, empez el auge de los ordenadores personales. En stos se dej un poco de lado el rendimiento y se busc ms que el sistema operativo fuera amigable, surgiendo mens, e interfaces grficas. Esto reduca la rapidez de las aplicaciones, pero se volvan ms prcticos y simples para los usuarios. En esta poca, siguieron utilizndose lenguajes ya existentes, como Smalltalk o C, y nacieron otros nuevos, de los cuales se podran destacar: C++ y Eiffel dentro del paradigma de la orientacin a objetos, y Haskell y Miranda en el campo de la programacin declarativa. Un avance importante que se estableci a mediados de la dcada de 1980 fue el desarrollo de redes de computadoras personales que corran sistemas operativos en red y sistemas operativos distribuidos. En esta escena, dos sistemas operativos eran los mayoritarios: MS-DOS (Micro Soft Disk Operating System), escrito por Microsoft para IBM PC y otras computadoras que utilizaban la CPU Intel 8088 y sus sucesores, y UNIX, que dominaba en los ordenadores personales que hacan uso del Motorola 68000. Mac OS El lanzamiento oficial del ordenador Macintosh en enero de 1984, al precio de US $1,995 (despus cambiado a $2,495 dlares)[1]. Inclua su sistema operativo Mac OS cuya caractersticas novedosas era una GUI (Graphic User Interface), Multitareas y Mouse. Provoc diferentes reacciones entre los usuarios acostumbrados a la lnea de comandos y algunos tachando el uso del Mouse como juguete. MS-DOS En 1981 Microsoft compr un sistema operativo llamado QDOS que, tras realizar unas pocas modificaciones, se convirti en la primera versin de MS-DOS (Micro Soft Disk Operating System). A partir de aqu se sucedieron una serie de cambios hasta llegar a la versin 7.1, versin 8 en Windows Milenium, a partir de la cual MS-DOS dej de existir como un componente del Sistema Operativo.
Microsoft Windows A mediados de los aos 80 se crea este sistema operativo, pero no es hasta la salida de (Windows 95) que se le puede considerar un sistema operativo, solo era una interfaz grfica del (MS-DOS) en el cual se dispona de unos diskettes para correr los programas. Hoy en da es el sistema operativo ms difundido en el mbito domstico aunque tambin hay versiones para servidores como Windows NT. (Microsoft) ha diseado tambin algunas versiones para superordenadores, pero sin mucho xito. Aos despus se hizo el (Windows 98) que era el ms eficaz de esa poca. Despus se creara el sistema operativo de (Windows ME) (Windows Millenium Edition) aproximadamente entre el ao 1999 y el ao 2000. Un ao despus se creara el sistema operativo de (Windows 2000) en ese mismo ao. Despus le seguira el sistema operativo ms utilizado en la actualidad, (Windows XP) y otros sistemas operativos de esta familia especializados en las empresas. Ahora el ms reciente es (Windows 7) (Windows Seven) que sali al mercado el 22 de octubre del 2009, dejando atrs al (Windows Vista), que tuvo innumerables crticas durante el poco tiempo que dur en el mercado.
La dcada de 1990
GNU/Linux Este sistema es una versin mejorada de Unix, basado en el estndar POSIX, un sistema que en principio trabajaba en modo comandos. Hoy en da dispone de Ventanas, gracias a un servidor grfico y a gestores de ventanas como KDE, GNOME entre muchos. Recientemente GNU/Linux dispone de un aplicativo que convierte las ventanas en un entorno 3D como por ejemplo Beryl o Compiz. Lo que permite utilizar Linux de una forma visual atractiva. Existen muchas distribuciones actuales de Gnu/Linux (Debian, Fedora, Ubuntu, Slackware, etc.) donde todas ellas tienen en comn que ocupan el mismo ncleo Linux. Dentro de las cualidades de Gnu/Linux se puede caracterizar el hecho de que la navegacin a travs de la web es sin riegos de ser afectada por virus, esto debido al sistema de permisos implementado, el cual no deja correr ninguna aplicacin sin los permisos necesarios, permisos que son otorgados por el usuario. A todo esto se suma que los virus que vienen en dispositivos desmontables tampoco afectan al sistema, debido al mismo sistema de permisos. ReactOS ReactOS (React Operating System) es un sistema operativo de cdigo abierto destinado a lograr la compatibilidad binaria con aplicaciones de software y controladores de dispositivos hechos para Microsoft Windows NT versiones 5.x en adelante (Windows XP y sus sucesores). En 1996 un grupo de programadores y desarrolladores de software libre comenzaron un proyecto llamado FreeWin95 el cual consista en implementar un clon de Windows 95. El proyecto estuvo bajo discusin por el diseo del sistema ya habiendo desarrollado la capa compatible con MSDOS, pero lamentablemente esta fue una situacin que no se complet. Para 1997 el proyecto no haba lanzado ninguna versin, por lo que los miembros de ste, coordinados por Jason Filby, pudieron revivirlo. Se decidi cambiar el ncleo del sistema compatible con MS-DOS y de ahora en adelante basarlo en uno compatible con Windows NT y as el proyecto pudo seguir adelante con el nombre actual de ReactOS, que comenz en febrero de 1998, desarrollando las bases del kernel y algunos drivers bsicos.