UNIX

El sistema UNIX


El sistema Unix es un sistema operativo  que admite múltiples usuarios, así como también múltiples tareas, lo que significa que permite que en un único equipo o multiprocesador se ejecuten simultáneamente varios programas a cargo de uno o varios usuarios. Este sistema cuenta con uno o varios intérpretes de comando (shell) así como también con un gran número de comandos y muchas utilidades (ensambladores, compiladores para varios idiomas, procesador de textos, correo electrónico, etc.). Además, es altamente transportable, lo que significa que es posible implementar un sistema Unix en casi todas las plataformas de hardware.

Actualmente, los sistemas Unix se afianzaron en entornos profesionales y universitarios gracias a su estabilidad, su gran nivel de seguridad y el cumplimiento de estándares, especialmente en lo que se refiere a redes.

LA HISTORIA DE LOS SISTEMAS UNIX

El primer sistema "Unix" fue desarrollado en 1965 por Ken Thompson en los laboratorios de Bell AT&T en Murray Hill, Nueva Jersey, Estados Unidos. El objetivo de Ken Thompson era desarrollar un sistema operativo interactivo simple, denominado "Multics" (Multiplexed Information and Computing System [Sistema informático y de Información Multiplexado]) de manera que pudiera ejecutar un juego que él mismo había creado (Space Travel [Viaje al espacio], una simulación de un sistema solar).

Luego, alrededor de Multics se formó un consorcio compuesto por el MIT(Massachesetts Institute of Technology), la compañía General Electric Co. y los laboratorios Bell Lab.

En abril de 1969 los laboratorios AT&T decidieron utilizar el GECOS (General Electric Comprehensive Operating System [Sistema Operativo Completo General Electric]) en lugar de Multics. Sin embargo, Ken Thompson y Dennis Ritchie, quien se había unido al equipo, necesitaban hacer funcionar el juego Space Travel (Viaje al espacio) en una máquina más pequeña (un DEC PDP-7,Procesador de Datos Programados que sólo tenía una memoria de 4K para hacer que se ejecutaran los programas del usuario). Por este motivo, ellos rediseñaron el sistema para crear una versión limitada de Multics, denominadaUNICS (UNiplexed Information and Computing Service [Servicio informático y de Información UNiplexado]), convenientemente abreviado: Unix.

La fecha del 1 de enero de 1970 es considerada la fecha de nacimiento del sistema UNIX, lo que explica por qué todos los relojes del sistema en los sistemas operativos de Unix comienzan con esta fecha.

Además de estas actividades, D. Ritchie jugó un papel muy importante en la definición del lenguaje C (ya que él es considerado uno de sus creadores junto con B. W. Kernighan). Así el sistema entero fue completamente reescrito en C en 1973 y se denominó Unix Time-Sharing System (Sistema de Tiempo Compartido Unix) (TSS). 

Cuando el sistema pasó a la versión 7 en 1979, su desarrollo fue acompañado de notables modificaciones, tales como: la extracción de las limitaciones relacionadas con el tamaño de los archivos,  mejor portabilidad del sistema (que opera en varias plataformas de hardware), la inclusión de varias utilidades.

Un decreto que data del año 1956 impidió que la compañía AT&T, a la que pertenecía Bell Labs, comercializara cualquier otro producto que no fuesen teléfonos o equipos de telégrafo. Es por este motivo que se tomó la decisión, en el año 1973, de distribuir el código fuente de UNIX en las universidades, con fines educativos.

Para fines del año 1977, investigadores de la Universidad de California desarrollaron otra versión Unix a partir del código fuente provisto por AT&T para poder ejecutar el sistema en su plataforma VAX y lo denominaron BSD, que significa Berkeley Software Development (Desarrollo del Software Berkeley).

De esta forma se conformaron dos ramas de desarrollo para el código fuente:
La rama de AT&T que se convertiría en Sistema V de los Laboratorios del Sistema UNIX (USL)
La rama de BSD (Berkeley Software Development [Desarrollo del Software Berkeley]), desarrollado por la Universidad de California.

En 1977, AT&T puso el código fuente de UNIX a disposición de otras compañías, a pesar de que se desarrollaron muchos sistemas similares a UNIX:
AIX, Unix comercial basado en el Sistema V desarrollado por IBM en febrero de 1990
Sun Solaris, Unix comercial basado en el Sistema V y en BSD desarrollado por SUN Microsystems
HP-UX, Unix comercial basado en BSD desarrollado por Hewlett Packard a partir de 1986
Ultrix, Unix comercial desarrollado por DEC
IRIX, Unix comercial desarrollado por SGI
Unixware, Unix comercial desarrollado por Novell
Unix SCO, Unix comercial basado en el Sistema V desarrollado por Santa Cruz Operations y Hewlett Packard a partir de 1979
Tru64 UNIX, Unix comercial desarrollado por Compaq

En 1983, AT&T tuvo el derecho de comercializar su Unix, lo que marcó la aparición del Sistema UNIX V, la versión comercial de su sistema Unix.

En 1985, un profesor holandés llamado Andrew Tannenbaum, desarrolló un sistema operativo mínimo denominado Minix, con el objetivo de poder enseñarles a sus alumnos la programación de sistemas.

En 1991, un estudiante finlandés, Linus Torvalds, decidió diseñar, basándose en el modelo Minix, un sistema operativo capaz de ejecutar 386 tipos de arquitecturas.
Este sistema operativo se denominó "Linux" y mostraba el siguiente mensaje en el foro de discusión comp.os.minix:



CARACTERÍSTICAS GENERALES: 


Es un sistema operativo de tiempo compartido, controla los recursos de una computadora y los asigna entre los usuarios. Permite a los usuarios correr sus programas. Controla los dispositivos de periféricos conectados a la máquina.

Posee las siguientes características:

- Es un sistema operativo multiusuario, con capacidad de simular multiprocesamiento y procesamiento no interactivo.

- Está escrito en un lenguaje de alto nivel: C.

- Dispone de un lenguaje de control programable llamado SHELL.

- Ofrece facilidades para la creación de programas y sistemas y el ambiente adecuado para las tareas de diseños de software.

- Emplea manejo dinámico de memoria por intercambio o paginación.

- Tiene capacidad de interconexión de procesos.

- Permite comunicación entre procesos.

- Emplea un sistema jerárquico de archivos, con facilidades de protección de archivos, cuentas y procesos.

- Tiene facilidad para re direccionamiento de Entradas/Salidas.

- Garantiza un alto grado de portabilidad.

El sistema se basa en un Núcleo llamado Kernel, que reside permanentemente en la memoria, y que atiende a todas las llamadas del sistema, administra el acceso a los archivos y el inicio o la suspensión de las tareas de los usuarios.

La comunación con el sistema UNIX se da mediante un programa de control llamado SHELL. Este es un lenguaje de control, un intérprete, y un lenguaje de programación, cuyas características lo hacen sumamente flexible para las tareas de un centro de cómputo. Como lenguaje de programación abarca los siguientes aspectos:

- Ofrece las estructuras de control normales: secuenciación, iteración condicional, selección y otras.

- Paso de parámetros.

- Sustitución textual de variables y Cadenas.

- Comunicación bidireccional entre órdenes de shell.

El shell permite modificar en forma dinámica las características con que se ejecutan los programas en UNIX:

Las entradas y salidas pueden ser redireccionadas o redirigidas hacia archivos, procesos y dispositivos;

Es posible interconectar procesos entre sí.

Diferentes usuarios pueden "ver" versiones distintas del sistema operativo debido a la capacidad del shell para configurar diversos ambientes de ejecución. Por ejemplo, se puede hacer que un usuario entre directamente a su sección, ejecute un programa en particular y salga automáticamente del sistema al terminar de usarlo. 

No hay comentarios.:

Publicar un comentario