Anda di halaman 1dari 10

Los Sistemas

Operativos
Historia y Evolucin

Instituto Tecnolgico Superior De


Progreso

Alumno:

Jimnez Viana Israel Enrique

Introduccin
El documento presenta la evolucin de los sistemas operativos a lo largo
de la historia, introduciendo los conceptos fundamentales relativos a
stos, como son su funcionamiento, tareas que realiza y su origen.
Con las primeras mquinas, era algo muy complicado ser programador...
y no slo porque los lenguajes de programacin no haban evolucionado,
sino porque se deba manejar el ordenador desde la consola y la consola
en aquellos tiempos significaba un puado de interruptores.
Afortunadamente, esto ha ido cambiando y se lo debemos, en parte, a
que han nacido y evolucionado los sistemas operativos. Como tambin
lo han hecho las mquinas, los lenguajes de programacin e incluso las
ideas.
Historia y Evolucin de los Sistemas Operativos
Aos 40: A finales de los aos 1940, con lo que podramos llamar 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 hacia en
lenguaje de mquina.
Aos 50: A principios de los aos 50 con el objeto de facilitar la
interaccin entre persona y computador, 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.

Aos 60: En los aos 1960 se produjeron cambios notorios en varios


campos de la informtica, con la aparicin del circuito cerrado la
mayora orientados a seguir incrementando el potencial de los
computadores.
Aos 70: Debido al avance de la electrnica, pudieron empezar a crearse
circuitos con miles de transistores en un centmetro cuadrado de silicio,
lo que llevara, pocos aos despus, a producirse los primeros sistemas
integrados. sta dcada se podra definir como la de los sistemas de
propsito general y en ella se desarrollan tecnologas que se siguen
utilizando en la actualidad. Es en los aos 1970 cuando se produce el
boom de los miniordenadores y la informtica se acerca al nivel de
usuario. En lo relativo a lenguajes de programacin, es de sealar la
aparicin de Pascal y C, el ltimo de los cuales se cre especficamente
para reescribir por completo el cdigo del sistema operativo 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.
Aos 80: 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, 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.
Aos 90: En 1991 aparece la primera versin del ncleo de Linux.
Creado por Linus Torvalds y un sinfn de colaboradores a travs de

Internet. Este sistema se basa en Unix, un sistema que en principio


trabajaba en modo comandos, estilo MS-DOS. Hoy en da dispone de
Ventanas, gracias a un servidor grafico 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. Lo que permite utilizar linux de una forma muy visual y
atractiva.
Que dio origen a los Sistemas Operativos?
En un principio solo exista el hardware del computador. Los primeros
computadores eran (fsicamente) grandes mquinas que se operaban
desde una consola. El programador escriba un programa y luego lo
controlaba directamente. En primer lugar, el programa se cargaba
manualmente en la memoria, desde los interruptores del tablero frontal,
desde una cinta de papel o desde tarjetas perforadas. Luego se
pulsaban los botones adecuados para establecer la direccin de inicio y
comenzar la ejecucin del programa. Mientras este se ejecutaba, el
programador-operador lo poda supervisar observando las luces en la
consola. Si se descubran errores, el programador poda detener el
programa, examinar el contenido de la memoria y los registros y depurar
el programa directamente desde la consola. La salida del programa se
imprima, o se perforaba en cintas de papel o tarjetas para su impresin
posterior. Un aspecto importante de ese entorno era su naturaleza
interactiva directa. El programador tambin era el operador del sistema
de computacin. La mayora de los sistemas utilizaban un esquema de
reservas o de registro para asignar tiempo de mquina. Si alguien quera
usar el computador, acuda a la hoja de registro, buscaba el siguiente
tiempo libre de la mquina que fuera conveniente y se anotaba para
usarla. Sin embargo, con este procedimiento se presentaban ciertos
problemas. Si un programador se haba registrado para usar una hora de
tiempo del computador dedicada a ejecutar el programa que estaba
desarrollando, pero se topaba con algn error difcil y no poda terminar
en esa hora. Si alguien ms haba reservado el siguiente bloque de
tiempo, el programador deba detenerse, rescatar lo que pudiera y
volver mas tarde para continuar. Por otra parte, si el programa se
ejecutaba sin problemas, podra terminar en 35 minutos; pero como
pens que necesitara la mquina durante ms tiempo, se registr para
usarla un hora, y permanecera inactiva durante 25 minutos. Conforme
transcurri el tiempo, se desarrollaron software y hardware adicionales;
empezaron a popularizarse los lectores de tarjetas, impresoras de lineas

y cintas magnticas. Se disearon ensambladores, cargadores y


ligadores para facilitar las tareas de programacin, y se crearon
bibliotecas de funciones comunes, de manera que stas podan copiarse
a un nuevo programa sin tener que escribirlas de nuevo. Se poda
necesitar un considerable tiempo de operacin para realizar un trabajo.
Cada trabajo consista en varios pasos distintos: cargar la cinta del
compilador de FORTRAN, ejecutar el compilador, descargar la cinta del
compilador, cargar la cinta del ensamblador, ejecutar el ensamblador,
descargar la cinta del ensamblador, cargar el programa objeto y
ejecutarlo. Si ocurra un error en cualquiera de los pasos, probablemente
habra que comenzar desde el principio. Cada paso del trabajo poda
ocasionar la necesidad de cargar y descargar cintas magnticas, cintas
de papel o tarjetas perforadoras, por lo que al avanzar el tiempo
aparecieron los primeros sistemas operativos. Los computadores,
sobretodo los centrales de gran tamao, han sido siempre mquinas
muy costosas. Por ello, los dueos han deseado que estas mquinas
efectuen la mayor cantidad posible de clculos. Hoy en da, esta
situacin tambin se aplica a los microprocesadores de menor coste, de
los cuales, a pesar de no ser tan costosos, siempre se espera que logren
el mayor nmero posible de clculos. El cambio a los sistemas por lotes
con secuenciacin automtica de trabajos se efectu para mejorar el
rendimiento. El problema es que las personas somos demasiado lentas.
Por lo tanto, es deseable sustituir la intervencin humana por el software
del sistema operativo.
Tipos
Sistemas por lotes: Cuando se desarrollaron por primera vez, estaban
caracterizados por la "agrupacin en bloques" de trabajos similares. Los
modernos sistemas utilizan otras caractersticas. El rasgo caracterstico
de un sistema por lotes es la ausencia de interaccin entre el usuario y
el trabajo mientras ste se ejecuta. El trabajo se prepara y se enva.
Tiempo despus aparece la salida.
Multiprogramacin: Un solo usuario no puede, en general, mantener
todo el tiempo ocupado a la UCP o a los dispositivos de E/S. La
multiprogramacin aumenta la utilizacin de la UCP organizando los
trabajos de manera que sta siempre tenga algo que ejecutar. El S.O.
escoge uno de los trabajos del depsito y comienza a ejecutarlo. En
algn momento el trabajo tendr que esperar, ya que el sistema ha
pasado el control a otro programa y as sucesivamente. Mientras haya

otro trabajo por ejecutar, la UCP nunca estar inactiva. Dentro de los
sistemas multiprogramados tenemos tres tipos:
Tiempo compartido: Utiliza la planificacin de la UCP y la
multiprogramacin para proporcionar a cada usuario, que tiene su propio
programa en memoria, una pequea porcin de un computador de
tiempo compartido. La E/S interactiva es demasiado lenta para un
computador por lo que, para que la UCP no permanezca inactiva, el S.O.
la cambiar al programa de otro usuario. sto ocurre tan rpidamente
que cada usuario tiene la impresin de que cuenta con su propio
computador, cuando en realidad todos lo comparten.
Tiempo real: Suele usarse como dispositivo de control en una
aplicacin dedicada. Tiene restricciones temporales bien definidas, por lo
que el procesamiento debe llevarse a cabo dentro de los lmites
definidos o el sistema fallar. Puede parecernos extraa la utilidad de
este tipo de gestin, as que pondremos un ejemplo: una nave espacial
se dispone a acoplarse a la estacin espacial MIR, nos interesa conocer
las coordenadas de la MIR en todo momento para compararlas con las
nuestras y as actuar en consecuencia. De nada nos sirve que se
resuelvan los clculos una vez nos hemos estrellado porque un
astronauta estaba jugando con el mismo ordenador al tetris y este
consuma toda la potencia de clculo del ordenador.
Combinados: Es una mezcla de los dos anteriores. Aunque se ha
intentado combinar la funcionalidad del tiempo compartido y el tiempo
real en un solo S.O., los resultados han sido psimos debido a los obvios
conflictos entre los requisitos de ambos tipos.
Sistemas distribuidos: Es un sistema dbilmente acoplado, es decir,
los procesadores no comparten ni memoria ni reloj, cada uno cuenta con
su propia memoria local y se comunican a travs de distintas lneas de
comunicacin. Los procesadores pueden variar de tamao y funcin. Las
principales ventajas son:
o Comparticin de recursos.
o Aceleracin de los clculos.
o Fiabilidad.
o Comunicacin.

Funciones bsicas de los S.O.

Los sistemas operativos, en su condicin de capa software que posibilita


y simplifica el manejo de la computadora, desempean una serie de
funciones bsicas esenciales para la gestin del equipo. Entre las ms
destacables, cada una ejercida por un componente interno, podemos
resear las siguientes:

Proporcionar comodidad en el uso de un computador.

Gestionar de manera eficiente los recursos del equipo, ejecutando


servicios para los procesos (programas)

Brindar una interfaz al


(vulgarmente comandos).

Permitir que los cambios debidos al desarrollo del propio SO se


puedan realizar sin interferir con los servicios que ya se prestaban
(evolutividad).

usuario,

ejecutando

instrucciones

Tareas que realiza un S.O.


El sistema operativo crea un entorno para la ejecucin de cada proceso,
adems de ofrecer ciertos servicios a los programas y a sus usuarios.
Vamos a ver algunos de ellos. Los servicios especficos que ofrece cada
S.O. suelen ser diferentes, dependiendo del sector al que estn
destinados, aunque algunas clases de ellos son comunes: las
operaciones de E/S, la manipulacin del sistema de archivos, la
deteccin de errores, etc. Estas funciones tienen el propsito, en su
mayora, de favorecer la tarea del programador, haciendo ms fcil su
trabajo. Lo que realmente nos est dando el S.O. es una capa de
abstraccin del hardware particular sobre el que corre. Por si no ha
quedado claro el porqu de estas facilidades, pongamos un ejemplo: un
programador de bases de datos que trabaje con dos mquinas distintas
en HW se encontrar con el problema de que tiene que saber manipular
los archivos tanto en una como en otra plataforma. Si el S.O. cumple
bien el objetivo de abstraccin, un mismo programa puede funcionar
sobre dos mquinas de arquitectura diferente con el mismo sistema
operativo, sin que haga falta modificar el cdigo del programa. Adems
de estas funciones, el S.O. tiene otro conjunto destinado al
funcionamiento eficiente de la mquina: asignacin de recursos, gestin
de procesos,... Prcticamente, estos dos grandes grupos de funciones
determinan todo lo que hace un S.O.: por un lado, las que facilitan la
vida al programador y, por otro, las que hacen que stas ltimas se
ejecuten en un medio con consistencia. De nada servira que el sistema
permitiese abrir 5 archivos simultneamente si es incapaz de dejar algo
de memoria para la ejecucin del programa que los ha abierto. Veamos

ahora algunos de estos tipos de llamadas al sistema, o servicios que


ofrece el sistema:

Para la gestin de procesos: Dentro de este tipo nos encontramos


todas aquellas llamadas necesarias para la ejecucin de
programas, as como la eficiente distribucin de recursos entre
stos.

Para el acceso a dispositivos de E/S: Como hemos dicho antes, el


S.O. debe abstraer el funcionamiento del hardware al
programador. Para ello, el sistema nos provee de ciertas funciones
genricas para su acceso.

Para la deteccin de errores y respuesta: A pesar de ser mquinas,


en los sistemas se pueden producir multitud de errores, tanto de
SW como de HW, algunos de ellos pueden ser:
o Acceso a zonas prohibidas de memoria (SW)
o Imposibilidad de asignar los recursos solicitados por una
aplicacin (SW)
o Fallo de algn dispositivo de almacenamiento (HW)

En todos los casos el sistema ha de ser capaz de responder con xito a


estos sucesos, o en su defecto, evitar la prdida de datos. Alguno de
estos problemas, como la imposibilidad de asignar recursos solicitados
por una aplicacin han causado muchos quebraderos de cabeza a los
programadores y se han llegado a escribir captulos enteros sobre las
posibles soluciones.

Para la contabilidad del sistema: Si bien este tipo de funciones no


las encontramos en todos los S.O., son bastante comunes en
aquellos que tienen la particularidad de ser multiusuario.

Conclusin
Como hemos visto, existen multitud de Sistemas Operativos, muchos de
los cuales el pblico desconoce, pero que nosotros, como estudiantes de
sistemas computacionales, tenemos la 'obligacin' de saber de ellos o
incluso probarlos. Muchos de ellos son incluso de libre distribucin. De
nada nos servir que las tiendas ofrezcan ahora preinstalar Windows o
Linux, habiendo una baraja entera de S.O.'s entre los que elegir. Estas

iniciativas estn lejos de complacer a todos aquellos que tratan de llegar


ms lejos, es decir, de abrir los ojos.

Bibliografa
http://www.aeromental.com/2006/08/16/evolucion-de-los-sistemasoperativos/
Goscinski, Andrezj (1991). Distributed Operating Systems: The logical
Design. Prentice-Hall. 2 edicin.
William Stallings (1997). Sistemas Operativos. Prentice-Hall. 2 edicin.

Andrew Tanenbaum (1992). Modern Operating Systems. Prentice-Hall. 1


edicin.

Anda mungkin juga menyukai