29

Unix

Embed Size (px)

Citation preview

Page 2: Unix

U N I X

Page 3: Unix

CONTENIDO• Introducción

• Que es UNIX

• Historia de UNIX

• Versiones de UNIX

• Características Generales

• Ideas Principales Sobre UNIX

• Estandarización de UNIX

• BSD

• Conclusión

• Bibliografía

Page 4: Unix

INTRODUCCION

Unix se trata de un sistema operativo de los mas utilizados y con masfuturo debido a que son muchos organismos oficiales y particulares losque defienden su utilización, así como muchas firmas de fabricación ycomercialización de computadoras que lo incorporan en sus productos.

Page 5: Unix

U N I X es un sistema operativo portable, multitarea y multiusuario;desarrollado, en principio, en 1969, por un grupo de empleados de loslaboratorios Bell de AT&T, entre los que figuran Ken Thompson, DennisRitchie y Douglas McIlroy.

Page 6: Unix

HISTORIA DE UNIXMuchos usuarios de sistemas basados enUnix ignoran la colorida historia que seesconde detrás de su propio sistemaoperativo. Las distribuciones actuales deLinux, Mac OS y los sistemas operativos demuchos dispositivos móviles se originaronde los deseos de dos programadores deAT&T, que querían jugar al Space Travel(Viaje espacial) sin gastarse 75 dólares porpartida. Hoy te contamos cómo KenThompson, Dennis Ritchie y Rudd Canadayiniciaron el desarrollo de un sistemaoperativo que 40 años más tarde goza demuy buena salud.

Page 7: Unix

HISTORIA DE UNIXLa historia de Unix comienza a finales delos años 1960, cuando el InstitutoTecnológico de Massachusetts (MIT), losLaboratorios Bell de AT&T y la GeneralElectric trabajaban en la creación de unsistema operativo de carácter experimentalllamado Multics (por MultiplexedInformation and Computing Service).Multics corría en un “mainframe” (unaclase de ordenadores muy comunes en laépoca que constaba de una unidad centralque “atendía” a varias terminales “bobas”)de General Electric modelo GE-645.

Page 8: Unix

HISTORIA DE UNIX• Estas empresas buscaban desarrollar “un gran sistema operativointeractivo” que incorporase sólidas políticas de seguridad. Hasta esemomento, la seguridad de los datos la proporcionaba la escasadisponibilidad de los ordenadores, de los que había una pequeñacantidad y solo personal autorizado podía tener acceso a ellos. Pero labaja de precios y la popularización de los sistemas informáticos hacíanindispensable integrar en el mismo corazón del SO las herramientasdestinadas a proteger la información. El proyecto fue relativamenteexitoso, e incluso existieron algunas “versiones para producción” deMultics, pero su pobre rendimiento hizo que AT&T decidieradesvincularse del proyecto.

Page 9: Unix

HISTORIA DE UNIXKen Thompson, uno de los programadores del equipo de los laboratorios Bell deAT&T, siguió escribiendo software para el ordenador GE-635. Entre otrosprogramas, escribió un juego llamado Space Travel (Viaje espacial). Sin embargo,descubrió que el juego era lento en la máquina de General Electric y resultabarealmente caro, algo así como 75 dólares de EE.UU. por cada partida. Así fuecomo, junto a su amigo Dennis Ritchie, escribió nuevamente el programa, peroesta vez utilizando el lenguaje ensamblador de un ordenador más popular (ybarato) llamado DEC PDP-7.

Page 10: Unix

HISTORIA DE UNIX

DEC PDP-7

Page 11: Unix

HISTORIA DE UNIXThompson y Ritchie descubrieron que trabajar juntos era divertido. En 1969, ysiempre dentro de los laboratorios Bell, armaron un equipo de programadoresentre los que se encontraba Rudd Canaday con la idea de desarrollar un sistemaoperativos que cumpliese con las premisas originales del proyecto Multics, peroque corriese en un DEC PDP-7. Comenzaron a trabajar en el sistema de archivos yen el núcleo del sistema operativo, que sería capaz de ejecutar procesos ensimultáneo (multitarea). Además, crearon un pequeño intérprete de órdenes (o decomandos) y un reducido grupo de programas accesorios. El proyecto fuebautizado UNICS (por Uniplexed Information and Computing System) y, enprincipio, solo podía “atender” a dos usuarios a la vez. El mismo Kernighan fue elque eligió el nombre del nuevo sistema operativo, por culpa de un juego depalabras UNICS se convertía un sistema Multics castrado (pues “eunuchs”, eninglés, es un homófono de UNICS). Entonces, se decidió cambiarle el nombre aUNIX, denominación que se mantiene hasta la actualidad.

Page 12: Unix

VERSIONES DE UNIX

Las mas importantes implementaciones de UNIX se han mantenido gracias al desarrollo que se ha mantenido por parte de los fabricantes, estos son los mas importantes:

• Solaris de Sun Microsystems: Uno de los sistemas operativos Unix más difundido en el entorno empresarial y conocido por su gran estabilidad. Parte del código fuente de Solaris se ha liberado con licencia de fuentes abiertas (OpenSolaris).

• AIX de IBM: El UNIX "propietario" de IBM ha cumplido 20 años de vida en el 2006 y continúa en pleno desarrollo, con una perceptible herencia del mainframe en campos como la virtualización o la RAS de los servidores, heredada de sus "hermanos mayores".

Page 13: Unix

VERSIONES DE UNIX

• HP-UX de Hewlett-Packard: Este sistema operativo también nació ligado a las computadoras departamentales de este fabricante. También es un sistema operativo estable que continua en desarrollo.

Page 14: Unix

ARBOL GENEALOGICO DE UNIX

Page 15: Unix

ESCRITORIO DE FEDORA, UNA VERSION DE UNIX QUE HA DADO LA VUELTA AL MUNDO

Page 16: Unix

CARACTERISTCAS GENERALESEs 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.

Page 17: Unix

CARACTERISTCAS GENERALES• 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 redireccionamiento de Entradas/Salidas.

• Garantiza un alto grado de portabilidad

Page 18: Unix

CARACTERISTCAS GENERALESLa comunicació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.

Page 19: Unix

CARACTERISTCAS GENERALES

• 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 re direccionadas o redirigidas hacia archivos, procesos y dispositivos.

• Es posible interconectar procesos entre sí.

Page 20: Unix

IDEAS PRINCIPALESLas ideas principales de UNIX fueron derivadas del proyecto MULTICS (Multiplexed Information and Computing Service) del MIT y de General Electric. Estas ideas son:

• Todo se maneja como cadena de bytes: Los dispositivos periféricos, los archivos y los comandos pueden verse como secuencias de bytes o como entes que las producen. Por ejemplo, para usar una terminal en UNIX se hace a través de un archivo (generalmente en el directorio /dev y con nombre ttyX).

• Manejo de tres descriptores estándares: Todo comando posee tres descriptores por omisión llamados 'stdin', 'stdout' y 'stderr', los cuales son los lugares de donde se leen los datos de trabajo, donde se envían los resultados y en donde se envían los errores, respectivamente. El 'stdin' es el teclado, el 'stdout' y el 'stderr' son la pantalla por omisión (default).

Page 21: Unix

IDEAS PRINCIPALES

• Capacidades de 'entubar' y 'redireccionar': El 'stdin', 'stdout' y el 'stderr' pueden usarse para cambiar el lugar de donde se leen los datos, donde se envían los resultados y donde se envían los errores, respectivamente. A nivel comandos, el símbolo de 'mayor que' (>) sirve para enviar los resultados de un comando a un archivo. Por ejemplo, en UNIX el comando 'ls' lista los archivos del directorio actual (es lo mismo que 'dir' en DOS). Si en vez de ver los nombres de archivos en la pantalla se quieren guardar en el archivo 'listado', el redireccionamiento es útil y el comando para hacer la tarea anterior es 'ls > listado'. Si lo que se desea es enviar a imprimir esos nombres, el 'entubamiento' es útil y el comando sería 'ls | lpr', donde el símbolo "|" ( pipe) es el entubamiento y 'lpr' es el comando para imprimir en UNIX BSD.

Page 22: Unix

IDEAS PRINCIPALESCrear sistemas grandes a partir de módulos: Cada instrucción en UNIX está diseñada para poderse usar con 'pipes' o 'redireccionamiento', de manera que se pueden crear sistemas complejos a través del uso de comandos simples y elegantes. Un ejemplo sencillo de esto es el siguiente. Suponga que se tienen cuatro comandos separados A,B,C y D cuyas funcionalidades son:

A: lee matrices checando tipos de datos y formato.

B: recibe matrices, las invierte y arroja el resultado en forma matricial.

C: recibe una matriz y le pone encabezados 'bonitos'

D: manda a la impresora una matriz cuidando el salto de página, etc.

Page 23: Unix

ESTANDARIZACION DE UNIXDebido a las múltiples versiones en el mercado de UNIX, secomenzaron a publicar estándares para que todas las s versionesfuesen 'compatibles'. La primera de ellas la lanzó AT&T llamada SVID(System V Interface Definition) que definiría cómo deberían ser lasllamadas al sistema, el formato de los archivos y muchas cosas más,pero la otra versión importante, la de Bekeley (Berkeley SoftwareDistribution o BSD) simplemente la ignoró.

Después la IEEE usó un algoritmo consistente en revisar las llamadas alsistema de ambas versiones (System V y BSD) y aquellas que eraniguales las definió como estándares surgiendo así la definición 'PortableOperating System for UNIX' o POSIX, que tuvo buen éxito y que variosfabricantes adoptaron rápidamente.

Page 24: Unix

ESTANDARIZACION DE UNIXEl estándar de POSIX se llama1003.1 Posteriormente losinstitutos ANSI e ISO seinteresaron en estandarizar ellenguaje 'C' y conjuntamentese publicaron definicionesestándares para otras áreas delsistema operativo como lainterconectividad, el intérpretede comandos y otras.

Estándar Descripción:

1003.0 Introducción y repaso.

1003.1 Llamadas al sistema.

1003.2 Intérprete y comandos.

1003.3 Métodos de prueba.

1003.4 Extensiones para tiempo real.

1003.5 Lenguaje Ada.

1003.6 Extensiones para la seguridad

1003.7 Administración del Sistema.

1003.8 Acceso transparente a archivos.

1003.9 Lenguaje Fortran.

1003.10 Supercómputo.

Page 25: Unix

BSD

BSD son las siglas de “Berkeley Software Distribution”. Así se llamó a lasdistribuciones de código fuente que se hicieron en la Universidad deBerkeley en California y que en origen eran extensiones del sistemaoperativo UNIX® de AT&T Research. Varios proyectos de sistemasoperativos de código abierto tienen su origen en una distribución deéste código conocida como 4.4BSD-Lite.

Page 26: Unix

BSD

Añaden además un buen número de paquetes de otros proyectos de Código Abierto, incluyendo de forma destacada al proyecto GNU. El sistema operativo completo incluye:

• El kernel BSD, que se encarga de la programación del tiempo de ejecución de los procesos, la gestión de memoria, el multiproceso simétrico (SMP), los controladores de dispositivos, etc.

• La biblioteca C, la API base del sistema.

• Aplicaciones como las distintas shells, aplicaciones de gestión de ficheros, compiladores y enlazadores.

Page 27: Unix

BSD

• El sistema X Windows, que gestiona el entorno gráfico.

• Muchos otros programas y utilidades.

Page 28: Unix

CONCLUSIONUnix es un sistema operativo apropiado para muchas aplicaciones, ya queofrece muchas facilidades para proceso de textos (en un marco atractivopara programadores) y facilidades de comunicación entre usuarios ymáquinas.Unix es popular debido a que:• Es portátil, y por lo tanto, todo el software desarrollado en él es portátil

también.• Se puede cambiar de máquina sin cambiar de sistema operativo ni de

aplicaciones.• Es fácil de adaptar según los requerimientos del usuario.• Es muy fiable.• Es fácil de usar.• Tiene una amplia gama de utilidades.

Page 29: Unix