miércoles, 7 de septiembre de 2011

aspectos historicos del desarrollo de los Sistemas Operativos




Un sistema operativo es un conjunto de programas destinado a permitir el uso apropiado de las partes físicas del ordenador hardware, y de esta manera interactuar con el usuario. Los principales objetivos de los sistemas operativos es lograr que el sistema de computación se use de manera cómoda y que el hardware del computador se emplee de manera eficiente



Los primeros computadores eran grandes máquinas que se operaban desde una consola. El programador escribía un programa y luego lo controlaba directamente. 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 dirección de inicio y comenzar la ejecución del
programa. Mientras este se ejecutaba, el programador-operador lo podía supervisar observando las luces en la consola.

Con la creación de los circuitos LSI -integración a gran escala-, chips que contenían miles de transistores
en un centímetro cuadrado de silicio, empezó el auge de los ordenadores personales. En éstos se dejó un poco de lado el rendimiento y se buscó más que el sistema operativo fuera amigable, surgiendo menús, e
interfaces gráficas.

TIPOS DE GESTION DE PROCESOS 

Esto reducía la rapidez de las aplicaciones, pero se volvían más prácticos y simples para los usuarios. En esta época, siguieron utilizándose lenguajes ya existentes, como Smalltalk o C, y nacieron otros nuevos, de los cuales se podrían destacar: C++y Eiffel

dentro del paradigma de la orientación a objetos, y Haskell y Miranda en el campo de la programación declarativa.

SISTEMAS POR LOTES

El rasgo característico de un sistema por lotes es la ausencia de interacción entre el usuario y el trabajo mientras éste se ejecuta. El trabajo se prepara y se envía. Tiempo después aparece la salida.
 
TIEMPO COMPARTIDO
 
En estos sistemas los programas de los distintos usuarios residen en memoria. Al realizar una operación de E/S los programas ceden la CPU a otro programa, al igual que en la multiprogramación. Pero, a diferencia de ésta, cuando un programa lleva cierto tiempo ejecutándose el sistema operativo lo detiene para que se ejecute otra aplicación.
 
TIEMPO REAL
 
Estos sistemas se usan en entornos donde se deben aceptar y procesar en tiempos muy breves un gran número de sucesos, en su mayoría 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.


ARQUITECTURA DE UN SISTEMA OPERATIVO
 

Kernel monolítico:

 La estructura de esta arquitectura es simplemente no tener ninguna. A nivel de núcleo no se produce ninguna abstracción, es decir, si un procedimiento necesita a otro es libre de hacerlo en cualquier momento. Fue el primer enfoque en la historia, el resto son evoluciones. Microkernel o micronúcleo:
 
En este caso, el S.O. se ocupa solo de unas pocas funciones, reduciendo el núcleo a su mínima expresión. El resto de funciones pasan a estar en el espacio de usuario.
 
Máquinas virtuales:
 
El primer sistema con esta esta arquitectura nació con la idea de separar  completamente las dos funciones características de un S.O. de tiempo compartido: multiprogramación y un interfaz más apropiado que el del puro HW. El centro del sistema, también conocido como monitor de la máquina virtual, se ejecuta directamente sobre el propio HW, encargándose de la multiprogramación. De esta forma, ofrece al nivel superior varias máquinas virtuales, que son copias exactas del hardware, por lo que se puede dar el caso de ejecutar varios S.O. sobre cada una de ellas.

1 comentario: