1.3 Evolución histórica
Los
Sistemas Operativos, al igual que el Hardware de los computadores, han
sufrido una serie de cambios revolucionarios llamados generaciones. En
el caso del Hardware, las generaciones han sido marcadas por grandes
avances en los componentes utilizados, pasando de válvulas ( primera
generación ) a transistores ( segunda generación ), a circuitos
integrados ( tercera generación), a circuitos integrados de gran y muy
gran escala (cuarta generación). Cada generación Sucesiva de hardware ha
ido acompañada de reducciones substanciales en los costos, tamaño,
emisión de calor y consumo de energía, y por incrementos notables en
velocidad y capacidad.
Generación Cero (década de 1940) Los primeros sistemas computacionales no poseían sistemas operativos. Los usuarios tenían completo acceso al lenguaje de la maquina. Todas las instrucciones eran codificadas a mano.
Primera Generación (década de 1950) Los sistemas operativos de los años cincuenta fueron diseñados para hacer mas fluida la transición entre trabajos. Antes de que los sistemas fueran diseñados, se perdía un tiempo considerable entre la terminación de un trabajo y el inicio del siguiente. Este fue el comienzo de los sistemas de procesamiento por lotes, donde los trabajos se reunían por grupos o lotes. Cuando el trabajo estaba en ejecución, este tenia control total de la maquina. Al terminar cada trabajo, el control era devuelto al sistema operativo, el cual limpiaba y leía e iniciaba el trabajo siguiente. Al inicio de los 50's esto había mejorado un poco con la introducción de tarjetas perforadas (las cuales servían para introducir los programas de lenguajes de máquina), puesto que ya no había necesidad de utilizar los tableros enchufables. Además el laboratorio de investigación General Motors implementó el primer sistema operativo para la IBM 701. Los sistemas de los 50's generalmente ejecutaban una sola tarea, y la transición entre tareas se suavizaba para lograr la máxima utilización del sistema. Esto se conoce como sistemas de procesamiento por lotes de un sólo flujo, ya que los programas y los datos eran sometidos en grupos o lotes. La introducción del transistor a mediados de los 50's cambió la imagen radicalmente. Se crearon máquinas suficientemente confiables las cuales se instalaban en lugares especialmente acondicionados, aunque sólo las grandes universidades y las grandes corporaciones o bien las oficinas del gobierno se podían dar el lujo de tenerlas. Para poder correr un trabajo (programa), tenían que escribirlo en papel (en Fortran o en lenguaje ensamblador) y después se perforaría en tarjetas. Enseguida se llevaría la pila de tarjetas al cuarto de introducción al sistema y la entregaría a uno de los operadores. Cuando la computadora terminara el trabajo, un operador se dirigiría a la impresora y desprendería la salida y la llevaría al cuarto de salida, para que la recogiera el programador.
Segunda Generación (a mitad de la década de 1960) La característica de los sistemas operativos fue el desarrollo de los sistemas compartidos con multiprogramación, y los principios del multiprocesamiento. En los sistemas de multiprogramación, varios programas de usuario se encuentran al mismo tiempo en el almacenamiento principal, y el procesador se cambia rápidamente de un trabajo a otro. En los sistemas de multiprocesamiento se utilizan varios procesadores en un solo sistema computacional, con la finalidad de incrementar el poder de procesamiento de la maquina. La independencia de dispositivos aparece después. Un usuario que desea escribir datos en una cinta en sistemas de la primera generación tenia que hacer referencia especifica a una unidad de cinta particular. En la segunda generación, el programa del usuario especificaba tan solo que un archivo iba a ser escrito en una unidad de cinta con cierto numero de pistas y cierta densidad. Se desarrollo sistemas compartidos, en la que los usuarios podían acoplarse directamente con el computador a través de terminales. Surgieron sistemas de tiempo real, en que los computadores fueron utilizados en el control de procesos industriales. Los sistemas de tiempo real se caracterizan por proveer una respuesta inmediata.
Tercera Generación (mitad de década 1960 a mitad década de 1970) Se inicia en 1964, con la introducción de la familia de computadores Sistema/360 de IBM. Los computadores de esta generación fueron diseñados como sistemas para usos generales . Casi siempre eran sistemas grandes, voluminosos, con el propósito de serlo todo para toda la gente. Eran sistemas de modos múltiples, algunos de ellos soportaban simultáneamente procesos por lotes, tiempo compartido, procesamiento de tiempo real y multiprocesamiento. Eran grandes y costosos, nunca antes se había construido algo similar, y muchos de los esfuerzos de desarrollo terminaron muy por arriba del presupuesto y mucho después de lo que el planificador marcaba como fecha de terminación. Estos sistemas introdujeron mayor complejidad a los ambientes computacionales; una complejidad a la cual, en un principio, no estaban acostumbrados los usuarios.
Cuarta Generación (mitad de década de 1970 en adelante) Los sistemas de la cuarta generación constituyen el estado actual de la tecnología. Muchos diseñadores y usuarios se sienten aun incómodos, después de sus experiencias con los sistemas operativos de la tercera generación. Con la ampliación del uso de redes de computadores y del procesamiento en línea los usuarios obtienen acceso a computadores alejados geográficamente a través de varios tipos de terminales. Los sistemas de seguridad se ha incrementado mucho ahora que la información pasa a través de varios tipos vulnerables de líneas de comunicación. La clave de cifrado esta recibiendo mucha atención; han sido necesario codificar los datos personales o de gran intimidad para que; aun si los datos son expuestos, no sean de utilidad a nadie mas que a los receptores adecuados. El porcentaje de la población que tiene acceso a un computador en la década de los ochenta es mucho mayor que nunca y aumenta rápidamente. El concepto de maquinas virtuales es utilizado. El usuario ya no se encuentra interesado en los detalles físicos de; sistema de computación que esta siendo accedida. En su lugar, el usuario ve un panorama llamado maquina virtual creado por el sistema operativo. Los sistemas de bases de datos han adquirido gran importancia. Nuestro mundo es una sociedad orientada hacia la información, y el trabajo de las bases de datos es hacer que esta información sea conveniente accesible de una manera controlada para aquellos que tienen derechos de acceso.
Generación Cero (década de 1940) Los primeros sistemas computacionales no poseían sistemas operativos. Los usuarios tenían completo acceso al lenguaje de la maquina. Todas las instrucciones eran codificadas a mano.
Primera Generación (década de 1950) Los sistemas operativos de los años cincuenta fueron diseñados para hacer mas fluida la transición entre trabajos. Antes de que los sistemas fueran diseñados, se perdía un tiempo considerable entre la terminación de un trabajo y el inicio del siguiente. Este fue el comienzo de los sistemas de procesamiento por lotes, donde los trabajos se reunían por grupos o lotes. Cuando el trabajo estaba en ejecución, este tenia control total de la maquina. Al terminar cada trabajo, el control era devuelto al sistema operativo, el cual limpiaba y leía e iniciaba el trabajo siguiente. Al inicio de los 50's esto había mejorado un poco con la introducción de tarjetas perforadas (las cuales servían para introducir los programas de lenguajes de máquina), puesto que ya no había necesidad de utilizar los tableros enchufables. Además el laboratorio de investigación General Motors implementó el primer sistema operativo para la IBM 701. Los sistemas de los 50's generalmente ejecutaban una sola tarea, y la transición entre tareas se suavizaba para lograr la máxima utilización del sistema. Esto se conoce como sistemas de procesamiento por lotes de un sólo flujo, ya que los programas y los datos eran sometidos en grupos o lotes. La introducción del transistor a mediados de los 50's cambió la imagen radicalmente. Se crearon máquinas suficientemente confiables las cuales se instalaban en lugares especialmente acondicionados, aunque sólo las grandes universidades y las grandes corporaciones o bien las oficinas del gobierno se podían dar el lujo de tenerlas. Para poder correr un trabajo (programa), tenían que escribirlo en papel (en Fortran o en lenguaje ensamblador) y después se perforaría en tarjetas. Enseguida se llevaría la pila de tarjetas al cuarto de introducción al sistema y la entregaría a uno de los operadores. Cuando la computadora terminara el trabajo, un operador se dirigiría a la impresora y desprendería la salida y la llevaría al cuarto de salida, para que la recogiera el programador.
Segunda Generación (a mitad de la década de 1960) La característica de los sistemas operativos fue el desarrollo de los sistemas compartidos con multiprogramación, y los principios del multiprocesamiento. En los sistemas de multiprogramación, varios programas de usuario se encuentran al mismo tiempo en el almacenamiento principal, y el procesador se cambia rápidamente de un trabajo a otro. En los sistemas de multiprocesamiento se utilizan varios procesadores en un solo sistema computacional, con la finalidad de incrementar el poder de procesamiento de la maquina. La independencia de dispositivos aparece después. Un usuario que desea escribir datos en una cinta en sistemas de la primera generación tenia que hacer referencia especifica a una unidad de cinta particular. En la segunda generación, el programa del usuario especificaba tan solo que un archivo iba a ser escrito en una unidad de cinta con cierto numero de pistas y cierta densidad. Se desarrollo sistemas compartidos, en la que los usuarios podían acoplarse directamente con el computador a través de terminales. Surgieron sistemas de tiempo real, en que los computadores fueron utilizados en el control de procesos industriales. Los sistemas de tiempo real se caracterizan por proveer una respuesta inmediata.
Tercera Generación (mitad de década 1960 a mitad década de 1970) Se inicia en 1964, con la introducción de la familia de computadores Sistema/360 de IBM. Los computadores de esta generación fueron diseñados como sistemas para usos generales . Casi siempre eran sistemas grandes, voluminosos, con el propósito de serlo todo para toda la gente. Eran sistemas de modos múltiples, algunos de ellos soportaban simultáneamente procesos por lotes, tiempo compartido, procesamiento de tiempo real y multiprocesamiento. Eran grandes y costosos, nunca antes se había construido algo similar, y muchos de los esfuerzos de desarrollo terminaron muy por arriba del presupuesto y mucho después de lo que el planificador marcaba como fecha de terminación. Estos sistemas introdujeron mayor complejidad a los ambientes computacionales; una complejidad a la cual, en un principio, no estaban acostumbrados los usuarios.
Cuarta Generación (mitad de década de 1970 en adelante) Los sistemas de la cuarta generación constituyen el estado actual de la tecnología. Muchos diseñadores y usuarios se sienten aun incómodos, después de sus experiencias con los sistemas operativos de la tercera generación. Con la ampliación del uso de redes de computadores y del procesamiento en línea los usuarios obtienen acceso a computadores alejados geográficamente a través de varios tipos de terminales. Los sistemas de seguridad se ha incrementado mucho ahora que la información pasa a través de varios tipos vulnerables de líneas de comunicación. La clave de cifrado esta recibiendo mucha atención; han sido necesario codificar los datos personales o de gran intimidad para que; aun si los datos son expuestos, no sean de utilidad a nadie mas que a los receptores adecuados. El porcentaje de la población que tiene acceso a un computador en la década de los ochenta es mucho mayor que nunca y aumenta rápidamente. El concepto de maquinas virtuales es utilizado. El usuario ya no se encuentra interesado en los detalles físicos de; sistema de computación que esta siendo accedida. En su lugar, el usuario ve un panorama llamado maquina virtual creado por el sistema operativo. Los sistemas de bases de datos han adquirido gran importancia. Nuestro mundo es una sociedad orientada hacia la información, y el trabajo de las bases de datos es hacer que esta información sea conveniente accesible de una manera controlada para aquellos que tienen derechos de acceso.
Historia de los Sistemas Operativos.
Para
tratar de comprender los requisitos de un Sistema Operativo y el
significado de las principales características de un Sistema Operativo
contemporáneo, es útil considerar como han ido evolucionando éstos con
el tiempo.
Existen diferentes enfoques o versiones de como han ido evolucionando los Sistemas Operativos
La primera de estas versiones podría ser esta:
En
los 40's, se introducen los programas bit a bit, por medio de
interruptores mecánicos y después se introdujo el leng. 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 existía realmente un Sistema Operativo;
las primeras computadoras utilizaban bulbos, la entrada de datos y los
programas se realizaban a través del lenguaje máquina (bits) o a través
de interruptores.
Durante
los años 50's y 60's.- A principio de los 50's, la compañía 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, diseñadores, capturistas, etc.), se
encarguen de modificar sus programas. Establecían o apartaban tiempo,
metían o introducían sus programas, corregían y depuraban sus programas
en su tiempo. A esto se le llamaba trabajo en serie. Todo esto se
traducía 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 época 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, inició el auge de la INTERNET
en los Estados Unidos de América. A finales de los años 80's comienza
el gran auge y evolución de los Sistemas Operativos. Se descubre el
concepto de multiprogramación 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 computación distribuida y del
multiprocesamiento a través de múltiples redes de computadoras,
aprovechando el ciclo del procesador.
Se
tendrá una configuración dinámica con un reconocimiento inmediato de
dispositivos y software que se añada o elimine de las redes a través de
procesos de registro y localizadores.
La conectividad se facilita gracias a estándares y protocolos de sistemas abiertos por organizaciones como la Org. Intern.
de normas, fundación de software abierto, todo estará mas controlado
por los protocolos de comunicación OSI y por la red de servicios digital
ISDN.
Se ha desarrollado otra versión, la cual se ha hecho en base a etapas o generaciones:
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 máquina 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 oía de los Sistemas Operativos
el modo usual de operación consistía en que el programador reservaba
cierto período 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 mayoría de los problemas eran cálculos
numéricos directos, por ejemplo, el cálculo de valores para tablas de
senos y cosenos.
A
principio de la década 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 demás el
proceso era el mismo.
2a. Etapa. (1955-1965) : Transistores y Sistemas de Procesamiento por lotes.
La
introducción del transistor a mediados de los años 50's modificó en
forma radical el panorama. Las computadoras se volvieron confiables de
forma que podían 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 demás rápidas vías para reducir el tiempo
invertido. La solución que, por lo general se adoptó, fue la del
sistema de procesamiento por lotes.
3ra Etapa (1965-1980 ) : Circuitos integrados y multiprogramación.
La
360 de IBM fue la primera línea principal de computadoras que utilizó
los circuitos integrados, lo que proporcionó una gran ventaja en el
precio y desempeño con respecto a las máquinas de la segunda generación,
construidas a partir de transistores individuales. Se trabajo con un
sistema operativo enorme y extraordinariamente complejo. A pesar de su
enorme tamaño y sus problemas el sistema operativo de la línea IBM 360 y
los sistemas operativos similares de esta generación producidos por
otros fabricantes de computadoras realmente pudieron satisfacer, en
forma razonable a la mayoría de sus clientes. También popularizaron
varias técnicas fundamentales, ausentes de los sistemas operativos de la
segunda generación, de las cuales la más importante era la de
multiprogramación.
Otra
característica era la capacidad de leer trabajos de las tarjetas al
disco, tan pronto como llegara al cuarto de cómputo. Así, siempre que
concluyera un trabajo el sistema operativo podía cargar un nuevo trabajo
del disco en la partición que quedara desocupada y ejecutarlo.
4ta Etapa (1980-Actualidad) : Computadoras personales.
Un
interesante desarrollo que comenzó a llevarse a cabo a mediados de la
década de los ochenta ha sido el crecimiento de las redes de
computadoras personales, con sistemas operativos de red y sistemas
operativos distribuidos.
En
los sistema operativo de red, los usuarios están conscientes de la
existencia de varias computadoras y pueden conectarse con máquinas
remotas y copiar archivos de una máquina 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 automática y eficaz por el sistema operativo.
Comentarios
Publicar un comentario