En los años de la decada de los 60´s se definió un sistema operativo como el software que controlaba el hardware. Ahora entendemos el sistema operativo como un conjunto de programas, dispuestos ya sea en el software o en la memoria fija (firmware), que hacen al hardware utilizable. El hardware provee “poder computacional básico”. Los sistemas operativos ponen este poder convenientemente a disposición de usuario.
Un sistema operativo es principalmente un administrador de recursos, y el recurso primario que administra es el hardware del computador. Un sistema operativo tiene varias características, como:
Definir la “interfaz del usuario”
Compartir el hardware entre usuarios
Permitir a los usuarios compartir los datos entre ellos
Planificar recursos entre usuarios
Facilitar la entrada / salida
Recuperase de errores
Los recursos clave que un sistema operativo administra son:
Los procesadores
El almacenamiento
Los dispositivos de entrada / salida
Los datos
El sistema operativo es una interfaz con:
Los operadores del computador
Los programadores de aplicaciones
Los programadores de sistemas
El personal administrativo
Los programas
El hardware
Los usuarios
GENERACIONES DE SISTEMAS OPERATIVOS
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 enmarcadas por grandes avances en los componentes utilizados, pasando de válvulas (primera generación), a transistores (segunda generación), a circuito integrados (tercera generación), a circuitos integrados de gran y muy gran escala (cuarta generación). Cada generación sucesiva de hardware ha sido 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 sistemas operativos han ido evolucionando durante los últimos 40 años a través de un número de distintas fases o generaciones que corresponden a décadas. En 1940, las computadoras electrónicas digitales más nuevas no tenían sistema operativo. Las Máquinas de ese tiempo eran tan primitivas que los programas por lo regular manejaban un bit a la vez en columnas de switches mecánicos. Eventualmente los programas de lenguaje máquina manejaban tarjetas perforadas y lenguajes ensamblador; y fueron desarrollados para agilizar el proceso de programación. 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 laboratorios de investigación de la General Motors implementaron el primer sistema operativo en los 50's. Generalmente corría una tarea a la vez y suavizó la transición entre tareas para obtener máxima utilización del sistema de la computadora. Los sistemas operativos de los años cincuenta fueron diseñados para hacer mas fluida la transmisió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 de siguiente. Este fue el comienzo de los sistemas de procesamiento por lotes, donde los trabajos se reunían por grupo o lotes. Cuando el trabajo estaba en ejecución, esta tenia control total de la maquina. Al terminar cada trabajo (bien normal o anormalmente), el control era envuelto al sistema operativo, el cual "limpiaba" y leía e inicia el trabajo siguiente.
Segunda generación (primera mitad de la década de 1960)
La característica de la segunda generación de los sistemas operativos fue el desarrollo de los sistemas compartido con multiprogramación, y los principios del multiprocesamiento. En los sistemas de multiprogramación, varios programas de usuarios se encuentran el 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 deseara escribir datos en una cinta en sistemas de la primera generación tenia que hacer referencia especifica a una unidad en particular. En los sistemas de 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 número de pistas y cierta densidad. El sistema operativo localizaba, entonces, una unidad de cinta disponible con las características deseadas, y le indicaba al operador que montara una cinta en esa unidad.
Tercera generación (mitad de la década de 1960 a la mitad de la década de 1970)
La tercera generación de sistemas operativos comenzó en forma efectiva, en 1964, con la introducción de la familia de computadores Sistemas/360 de IBM. Las arquitectura de los sistemas computacionales 360 fueron diseñadas para ser compatibles con el hardware, para usar el sistema operativo OS/360, y para ofrecer mayor poder de procesamiento. Sistemas operativos mas avanzados fueron desarrollados para servir a múltiples usuarios interactivos a la vez. Los usuarios interactivos se comunicaban con la computadora vía terminales que estaban en línea, conectadas directamente a la computadora. Los computadores de la tercera generación fueron diseñados como sistemas de usos generales. Casi siempre eran sistemas grandes, voluminosos, con el propósito de serlo todo para toda la gente. Este concepto vendió gran cantidad de computadores, pero tenia su precio. Los usuarios que necesitaban de algunas aplicaciones particulares que no requerían de este tipo de poder pagaban caro el elevado tiempo de ejecución, tiempo de depuración, mantenimiento, etc. Los sistemas operativos de la tercera generación eran sistemas de modos múltiples. Algunos soportan 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 arriba del presupuesto y mucho después de lo que el planificador marcaba como fecha de terminación. Finalmente se desarrollo el sistema de arquitectura 370 con el sistema operativo OS370, en el cual se utilizaron las primeras redes SNA (Structured Network Arquitecture).
Cuarta generación (de la mitad de la década de 1970 a 1990)
Los sistemas de la cuarta generación constituyen el último estado de la tecnología de mainframes (sistemas grandes). Muchos diseñadores y usuarios se sienten aun incómodos, después de sus experiencias con los sistemas operativos de la tercera generación, y se muestran cautelosos antes de comprometerse con sistemas operativos complejos. 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. Aparecen los supercomputadores 3090 y los sistemas operativos MVS (Multiple Variable System). Los precios son astronómicos pero la capacidad de procesamiento también. Para la década de los años 80 aparecen las nuevas generaciones de microprocesadores que hicieron posible la aparición del computadora personal, uno de los desarrollos con notables consecuencias sociales más importantes de las últimas décadas. Ahora, muchos usuarios han desarrollado sistemas de computación que son accesibles para su uso personal en cualquier momento del día o de la noche. La potencia de computador, que costaba varios cientos de miles de dólares al principio de la década de 1960, hoy es accesible por menos de mil dólares. El porcentaje de la población que tenía acceso a un computador en la década de los ochenta es mucho mayor y aumentó rápidamente en relación a décadas anteriores. Las personas que podían tener su propia computadora para realizar su trabajo, aprendieron a utilizar facilidades de comunicación para transmitir datos entre sistemas. La aplicación de paquetes de software tales como procesadores de palabras, paquetes de bases de datos y paquetes de gráficos ayudaron a la evolución de la computadora personal.
Quinta generación (de la década de 1990 a nuestros días)
Redes de computadores y sistemas operativos de redes. La llave es transferir información entre computadoras en redes de trabajo de computadoras. El correo electrónico, transferencia de archivos, y aplicaciones de acceso a bases de datos proliferaron. El modelo cliente-servidor fue esparcido. El campo de ingeniería de software continuó evolucionando con una mayor confianza proveniente de los Estados Unidos y Europa. Los ambientes del usuario, altamente simbólicos, mnemónicos y orientados hacia las siglas que se desarrollaron en las décadas de los sesenta, setenta y ochenta, fueron reemplazados, en la década de los noventa, por los sistemas controlados por menús y ventanas, los cuales guían al usuario a lo largo de varias opciones expresadas en un lenguaje sencillo.
En el siglo XXI habremos de entrar a la era de la verdadera distribución computacional en la cual las tareas pueden ser ejecutadas entre varias computadoras de múltiples procesadores y en conmutadores de red. Estos tipos de conectividad son facilitados para abrir sistemas y protocolos inalámbricos estándar que se empiezan desarrollar para grupos, empresas y organizaciones estadales. Paralelamente se desarrollaran medios satelitales de comunicación con mayor ancho de banda, medios masivos de almacenamiento auxiliar y la integración de redes inalámbricas. Los procesadores formaran parte de equipos elctrodomésticos, automóviles, equipos industriales, etc. Todos interconectados a una nueva generación de internet.
0 comentarios