Historia 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. 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
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. Hoy en día la mayoría de la gente conoce
por Linux al Sistema Operativo que realmente se llama GNU/Linux.
Para
tratar de comprender los requisitos de un Sistema Operativo y el significado de
las principales caracteristicas de un Sistema Operativo contemporaneo, es util
considerar como han ido evolucionando estos con el tiempo.
Existen
diferentes enfoques o versiones de cómo han ido evolucionando los Sistemas
Operativos La primera de estas versiones podria ser
esta:
En
los 40's, se introducen los programas bit a bit, por medio de interruptores
mecanicos y despues se introdujo el lenguaje máquina que trabajaba por tarjetas
perforadas.
Con
las primeras computadoras, desde finales de los años 40 hasta la mitad de los
años 50, el programador interactuaba de manera directa con el hardware de la
computadora, no existia realmente un Sistema Operativo; las primeras
computadoras utilizaban bulbos, la entrada de datos y los programas se
realizaban a traves del lenguaje maquina (bits) o a traves de interruptores.
Durante
los años 50's y 60's.- A principio de los 50's, la compania General's Motors
implanto el primer sistema operativo para su IBM 170. Empiezan a surgir las
tarjetas perforadas las cuales permiten que los usuarios (que en ese tiempo
eran programadores, disenadores, capturistas, etc.), se encarguen de modificar
sus programas. Establecian o apartaban tiempo, metian o introducian sus
programas, corregian y depuraban sus programas en su tiempo. A esto se le
llamaba trabajo en serie. Todo esto se traducia en pérdida de tiempo y tiempos
de programas excesivos.
En
los años 60's y 70's se genera el circuito integrado, se organizan los trabajos
y se generan los procesos Batch (por lotes), lo cual consiste en determinar los
trabajos comunes y realizarlos todos juntos de una sola vez. En esta epoca
surgen las unidades de cinta y el cargador de programas, el cual se considera
como el primer tipo de Sistema Operativo.
En los 80's, inicio el auge de la INTERNET en los Estados Unidos de America. A finales de los años 80's comienza el gran auge y evolucion de los Sistemas Operativos. Se descubre el concepto de multiprogramacion que consiste en tener cargados en memoria a varios trabajos al mismo tiempo, tema principal de los Sistemas Operativos actuales.
Los
90's y el futuro, entramos a la era de la computacion distribuida y del
multiprocesamiento a traves de multiples redes de computadoras, aprovechando el
ciclo del procesador.
Se tendra
una configuracion dinamica con un reconocimiento inmediato de dispositivos y
software que se anada o elimine de las redes a traves de procesos de registro y
localizadores.
La
conectividad se facilita gracias a estandares y protocolos de sistemas abiertos
por organizaciones como la Organizacion Internacional de normas, fundacion de
software abierto, todo estara más controlado por los protocolos de comunicacion
OSI y por la red de servicios digital ISDN.
1a Etapa (1945-1955): Bulbos y conexiones.
Después
de los infructuosos esfuerzos de Babbage, hubo poco progreso en la construcción
de las computadoras digitales, hasta la Segunda Guerra Mundial. A mitad de la década
de los 40's, Howard Aiken (Harvard), John Von Newman (Instituto de Estudios
Avanzados, Princeton), J. Prespe R. Eckert y Williams Mauchley (Universidad de
Pennsylvania), Así
como Conrad Zuse (Alemania), entre otros lograron construir máquinas de cálculo
mediante bulbos. Estas máquinas eran enormes y llenaban cuartos completos con
decenas de miles de bulbos, pero eran mucho más lentas que la computadora
casera más económica en nuestros días.
Toda la
programación se llevaba a cabo en lenguaje de maquina absoluto y con frecuencia
se utilizaban conexiones para controlar las funciones básicas de la máquina.
Los lenguajes de programación eran desconocidos (incluso el lenguaje
ensamblador). No se oia de los Sistemas Operativos el modo usual de operación consistía
en que el programador reservaba cierto periodo en una hoja de reservación
pegada a la pared, iba al cuarto de la máquina, insertaba su conexión a la
computadora y pasaba unas horas esperando que ninguno de los 20,000 o más
bulbos se quemara durante la ejecución. La inmensa mayoria de los problemas
eran calculos numericos directos, por ejemplo, el cálculo de valores para
tablas de senos y cosenos.
A
principio de la decada de los 50's la rutina mejoro un poco con la introducción
de las tarjetas perforadas. Fue entonces posible escribir los programas y
leerlas en vez de insertar conexiones, por lo demas el proceso era el mismo.
2a. Etapa. (1955-1965): Transistores y Sistemas de
Procesamiento por lotes.
La
introduccion del transistor a mediados de los años 50's modifico en forma
radical el panorama. Las computadoras se volvieron confiables de forma que
podian fabricarse y venderse a clientes, con la esperanza de que ellas
continuaran funcionando lo suficiente como para realizar un trabajo en forma.
Dado el
alto costo del equipo, no debe sorprender el hecho de que las personas buscaron
en forma por demas rapidas vias para reducir el tiempo invertido. La solucion
que, por lo general se adoptó, fue la del sistema de procesamiento por lotes.
3ra Etapa
(1965-1980): Circuitos integrados y multiprogramacion.
La 360 de
IBM fue la primera linea principal de computadoras que utilizo los circuitos
integrados, lo que proporciono una gran ventaja en el precio y desempeno con
respecto a las máquinas de la segunda generacion, construidas a partir de
transistores individuales. Se trabajó con un sistema operativo enorme y
extraordinariamente complejo. A pesar de su enorme tamano y sus problemas el
sistema operativo de la linea IBM 360 y los sistemas operativos similares de
esta generacion producidos por otros fabricantes de computadoras realmente
pudieron satisfacer, en forma razonable a la mayoria de sus clientes. Tambien
popularizaron varias tecnicas fundamentales, ausentes de los sistemas
operativos de la segunda generacion, de las cuales la más importante era la de
multiprogramacion.
Otra caracteristica era la capacidad de leer trabajos de las tarjetas al disco, tan pronto como llegara al cuarto de computo. Asi, siempre que concluyera un trabajo el sistema operativo podia cargar un nuevo trabajo del disco en la particion que quedara desocupada y ejecutarlo.
4ta Etapa (1980-Actualidad): Computadoras personales.
Un
interesante desarrollo que comenzo a llevarse a cabo a mediados de la decada de
los ochenta ha sido el crecimiento de las redes de computadoras personales, con
sistemas operativos de red y sistemas operativos distribuidos.
En los
sistemas operativos de red, los usuarios estan conscientes de la existencia de
varias computadoras y pueden conectarse con máquinas remotas y copiar archivos
de una maquina a otra. Cada máquina ejecuta su propio sistema operativo local y
tiene su propio usuario.
Por el
contrario, un sistema operativo distribuido es aquel que aparece ante sus
usuarios como un sistema tradicional de un solo procesador, aun cuando está
compuesto por varios procesadores. En un sistema distribuido verdadero, los
usuarios no deben ser conscientes del lugar donde su programa se ejecute o de
lugar donde se encuentren sus archivos; eso debe ser manejado en forma
automatica y eficaz por el sistema operativo.
No hay comentarios:
Publicar un comentario