Dark Mode

Ir al contenido

Unix

De Wikipedia, la enciclopedia libre
(Redirigido desde <<UNIX>>)
Unix
Parte de Unix-like
Informacion general
Tipo de programa proyecto
Desarrollador Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, y Joe Ossanna en los Laboratorios Bell
Modelo de desarrollo Historicamente codigo propietario
Lanzamiento inicial 1969 (hace 53 anos). Primer manual en 1971 y anunciado en octubre de 1973 por los Laboratorios Bell
Licencia Propietaria y licencias tipo free/open-source
Idiomas Ingles
Informacion tecnica
Programado en C y ensamblador
Nucleo Unix-like
Tipo de nucleo Monolitico
Plataformas admitidas PDP-7, PDP-11/20, familia VAX
Interfaz grafica predeterminada Shell de Unix y X Window System
Versiones
Ultima version estable Unix V7 ()
Serie Unix-like
Multics
Unix
BSD, GNU, Linux, Solaris, AIX, HP-UX, macOS, XENIX
Enlaces

Unix (registrado oficialmente como UNIX(r)) es un sistema operativo portable, multitarea y multiusuario; desarrollado en 1969 por un grupo de empleados de los laboratorios Bell de AT&T.[1] [2]

El sistema, junto con todos los derechos fueron vendidos por AT&T a Novell, Inc. Esta vendio posteriormente el software a Santa Cruz Operation en 1995, y esta, a su vez, lo revendio a Caldera Software en 2001, empresa que despues se convirtio en el grupo SCO. Sin embargo, Novell siempre argumento que solo vendio los derechos de uso del software, pero que retuvo el copyright sobre "UNIX(r)". En 2010, y tras una larga batalla legal, esta ha pasado nuevamente a ser propiedad de Novell.[3]

Solo los sistemas operativos totalmente compatibles y que se encuentran certificados por la especificacion Single UNIX Specification pueden ser denominados "UNIX(r)" (otros reciben la denominacion <> o <>). En ocasiones, suele usarse el termino "Unix tradicional" para referirse a Unix o a un sistema operativo que cuenta con las caracteristicas de UNIX Version 7 o UNIX System V.

Historia

[editar]

A finales de la decada de 1960 el Instituto Tecnologico de Massachusetts, los Laboratorios Bell de AT&T y General Electric trabajaban en un sistema operativo experimental llamado Multics (Multiplexed Information and Computing Service),[4] desarrollado para ejecutarse en una computadora central (mainframe) modelo GE-645. El objetivo del proyecto era desarrollar un gran sistema operativo interactivo que contase con muchas innovaciones, entre ellas mejoras en las politicas de seguridad. El proyecto consiguio dar a luz versiones para produccion, pero las primeras versiones contaban con un pobre rendimiento. Los laboratorios Bell de AT&T decidieron desvincularse y dedicar sus recursos a otros proyectos.

Uno de los programadores de los laboratorios Bell, Ken Thompson, siguio trabajando para la computadora GE-645[5] y escribio un juego llamado Space Travel,[6] [7] (Viaje espacial). Sin embargo, descubrio que el juego era lento en la maquina de General Electric y resultaba realmente caro, algo asi como 75 dolares de EE. UU. por cada partida.

De este modo, Thompson escribio nuevamente el programa, con ayuda de Dennis Ritchie, en lenguaje ensamblador, para que se ejecutase en una computadora DEC PDP-7. Esta experiencia, junto al trabajo que desarrollo para el proyecto Multics, condujo a Thompson a iniciar la creacion de un nuevo sistema operativo para la DEC PDP-7.[8] Thompson y Ritchie lideraron un grupo de programadores, entre ellos a Rudd Canaday, en los laboratorios Bell, para desarrollar tanto el sistema de ficheros como el sistema operativo multitarea en si. A lo anterior, agregaron un interprete de ordenes (o interprete de comandos) y un pequeno conjunto de programas. El proyecto fue bautizado UNICS, como acronimo Uniplexed Information and Computing System, pues solo prestaba servicios a dos usuarios (de acuerdo con Andrew Tanenbaum, era solo a un usuario[9] ). La autoria de esta sigla se le atribuye a Brian Kernighan, ya que era un hack de Multics. Dada la popularidad que tuvo un juego de palabras que consideraba a UNICS un sistema MULTICS castrado (pues eunuchs, en ingles, es un homofono de UNICS), se cambio el nombre a UNIX, dando origen al legado que llega hasta nuestros dias.[10]


Hasta ese instante, no habia existido apoyo economico por parte de los laboratorios Bell, pero eso cambio cuando el Grupo de Investigacion en Ciencias de la Computacion decidio utilizar UNIX en una maquina superior a la PDP-7. Thompson y Ritchie lograron cumplir con la solicitud de agregar herramientas que permitieran el procesamiento de textos a UNIX en una maquina PDP-11/20, y como consecuencia de ello consiguieron el apoyo economico de los laboratorios Bell. Fue asi como por vez primera, en 1970, se habla oficialmente del sistema operativo UNIX[11] ejecutado en una PDP-11/20. Se incluia en el un programa para dar formato a textos (runoff) y un editor de texto. Tanto el sistema operativo como los programas fueron escritos en el lenguaje ensamblador de la PDP-11/20. Este "sistema de procesamiento de texto" inicial, compuesto tanto por el sistema operativo como de runoff y el editor de texto, fue utilizado en los laboratorios Bell para procesar las solicitudes de patentes que ellos recibian. Pronto, runoff fue mejorado hasta convertirse en troff, el primer programa de edicion electronica que permitia realizar composicion tipografica. El 3 de noviembre de 1971 Thomson y Ritchie publicaron un manual de programacion de UNIX (titulo original en ingles: "UNIX Programmer's Manual").[12]

En 1972 se tomo la decision de escribir nuevamente UNIX, pero esta vez en el lenguaje de programacion C.[13] Este cambio significaba que UNIX podria ser facilmente modificado para funcionar en otras computadoras (de esta manera, se volvia portable) y asi otras variaciones podian ser desarrolladas por otros programadores. Ahora, el codigo era mas conciso y compacto, lo que se tradujo en un aumento en la velocidad de desarrollo de UNIX. AT&T puso a UNIX a disposicion de universidades y companias, tambien al gobierno de los Estados Unidos, a traves de licencias.[14] Una de estas licencias fue otorgada al Departamento de Computacion de la Universidad de California, con sede en Berkeley.[14] En 1975 esta institucion desarrollo y publico su propio sucedaneo de UNIX, conocida como Berkeley Software Distribution (BSD), que se convirtio en una fuerte competencia para la familia UNIX de AT&T.

Mientras tanto, AT&T creo una division comercial denominada Unix Systems Laboratories para la explotacion comercial del sistema operativo. El desarrollo prosiguio, con la entrega de las versiones 4, 5 y 6[15] en el transcurso de 1975. Estas versiones incluian los pipes o tuberias, lo que permitio dar al desarrollo una orientacion modular respecto a la base del codigo, consiguiendo aumentar aun mas la velocidad de desarrollo. Ya en 1978, cerca de 600 o mas maquinas estaban ejecutando alguna de las distintas encarnaciones de UNIX.

La version 7,[15] la ultima version del UNIX original con amplia distribucion, entro en circulacion en 1979. Las versiones 8, 9 y 10[15] se desarrollaron durante la decada de 1980, pero su circulacion se limito a unas cuantas universidades, a pesar de que se publicaron los informes que describian el nuevo trabajo. Los resultados de esta investigacion sirvieron de base para la creacion de Plan 9 from Bell Labs, un nuevo sistema operativo portable y distribuido, disenado para ser el sucesor de UNIX en investigacion por los Laboratorios Bell.

AT&T entonces inicio el desarrollo de UNIX System III, basado en la version 7, como una variante de tinte comercial y asi vendia el producto de manera directa. La primera version del sistema III se lanzo en 1981.[15] A pesar de lo anterior, la empresa subsidiaria Western Electric seguia vendiendo versiones antiguas de Unix basadas en las distintas versiones hasta la septima. Para finalizar con la confusion con todas las versiones divergentes, AT&T decidio combinar varias versiones desarrolladas en distintas universidades y empresas, dando origen en 1983 al Unix System V Release 1.[15] Esta version presento caracteristicas tales como el editor Vi y la biblioteca curses, desarrolladas por Berkeley Software Distribution en la Universidad de California, Berkeley. Tambien contaba con compatibilidad con las maquinas VAX de la compania DEC.

Hacia 1991, un estudiante de ciencias de la computacion de la Universidad de Helsinki, llamado Linus Torvalds desarrollo un nucleo para computadoras con arquitectura x86 de Intel que emulaba muchas de las funcionalidades de UNIX y lo lanzo en forma de codigo abierto en 1991, bajo el nombre de Linux. En 1992, el Proyecto GNU comenzo a utilizar el nucleo Linux junto a sus programas.

En 1993, la compania Novell adquirio la division Unix Systems Laboratories de AT&T junto con su propiedad intelectual.[16] Esto ocurrio en un momento delicado en el que Unix Systems Laboratories disputaba una demanda en los tribunales contra BSD por infraccion de los derechos de copyright, revelacion de secretos y violacion de marca de mercado.[17]

Aunque BSD gano el juicio, Novell descubrio que gran parte del codigo de BSD fue copiada ilegalmente en UNIX System V. En realidad, la propiedad intelectual de Novell se reducia a unos cuantos archivos fuente.[17] La correspondiente contra-demanda acabo en un acuerdo extrajudicial cuyos terminos permanecen bajo secreto a peticion de Novell.

A finales de 1993, Novell vendio su division UNIX comercial[16] (es decir, la antigua Unix Systems Laboratories) a Santa Cruz Operation (SCO) reservandose, aparentemente, algunos derechos de propiedad intelectual sobre el software.[18] Xinuos (antes UnXis) continua la comercializacion de System V en su producto UnixWare tras adquirir a SCO en abril de 2011.

Familias UNIX mas significativas

[editar]
  • AT&T: La familia que tuvo su origen en el UNIX de AT&T. Considerada la familia UNIX "pura" y original. Sus sistemas operativos mas significativos son UNIX System III y UNIX System V.
  • BSD: Familia originada por el licenciamiento de UNIX a Berkely. BSD se reescribio para no incorporar propiedad intelectual originaria de AT&T en la version 4. La primera implementacion de los protocolos TCP/IP que dieron origen a Internet son la pila (stack) TCP/IP BSD.
  • AIX: Esta familia surge por el licenciamiento de UNIX System III a IBM.
  • Xenix: Familia derivada de la adquisicion de los derechos originales de AT&T primero por parte de Microsoft y de esta los vendio a SCO.
  • GNU: En 1983, Richard Stallman anuncio el Proyecto GNU, un ambicioso esfuerzo para crear un sistema similar a Unix, que pudiese ser distribuido libremente. El software desarrollado por este proyecto -por ejemplo, GNU Emacs y GCC - tambien han sido parte fundamental de otros sistemas UNIX.
  • Linux: En 1991, cuando Linus Torvalds empezo a proponer el nucleo Linux y a reunir colaboradores, las herramientas GNU eran la eleccion perfecta. Al combinarse ambos elementos, conformaron la base del sistema operativo (basado en POSIX), que hoy se conoce como GNU/Linux. Las distribuciones basadas en el nucleo, el software GNU y otros agregados entre las que se pueden mencionar a Slackware Linux, Red Hat Linux y Debian GNU/Linux se han hecho populares tanto entre los aficionados a la computacion como en el mundo empresarial. Observese que Linux tiene un origen independiente, por lo que se considera un 'clonico' de UNIX y no un UNIX en el sentido historico.

Las interrelaciones entre estas familias son las siguientes, aproximadamente en orden cronologico:

  • La familia BSD surge del licenciamiento del UNIX original de AT&T.
  • Xenix tambien surge por licenciamiento del UNIX original de AT&T, aunque aun no era propiedad de SCO.
  • AIX surge por licenciamiento de UNIX System III, pero tambien incorpora propiedad intelectual de BSD.
  • La familia original AT&T incorpora ilegalmente propiedad intelectual de BSD en UNIX System III r3.
  • La familia AIX vuelve a incorporar propiedad intelectual de la familia AT&T, esta vez procedente de UNIX System V.
  • Linux incorpora propiedad intelectual de BSD, gracias a que este tambien se libera con una licencia de codigo abierto denominada Open-source BSD.
  • Segun SCO Group, Linux incorpora propiedad intelectual procedente de AIX gracias a la colaboracion de IBM en la version 2.4. Aun no esta demostrado y hay un proceso judicial: Disputas de SCO sobre Linux.

La marca

[editar]
Pantalla de inicio de FreeBSD

UNIX(r) es una marca registrada de Novell, despues de una disputa con The Open Group en Estados Unidos y otros paises. Esta marca solo se puede aplicar a los sistemas operativos que cumplen la "Single Unix Specification" de esta organizacion y han pagado las regalias establecidas.

En la practica, el termino UNIX se utiliza en su acepcion de familia. Se aplica tambien a sistemas multiusuario basados en POSIX (tales como GNU/Linux, Mac OS X [el cual, en su version 10.5 ya ha alcanzado la certificacion UNIX], FreeBSD, NetBSD, OpenBSD), los cuales no buscan la certificacion UNIX por resultar cara para productos destinados al consumidor final o que se distribuyen libremente en Internet. En estos casos, el termino se suele escribir como "UN*X", "UNIX*", "*NIX", o "*N?X". Para referirse a ellos (tanto a Unix, como a los sistema basados en Unix/POSIX) tambien se utiliza "Unixes", pero "Unices" (que trata la palabra Unix como un nombre latino de la tercera declinacion) es asimismo popular.

Implementaciones mas importantes

[editar]

A lo largo de la historia ha surgido una gran multitud de implementaciones comerciales de UNIX. Sin embargo, un conjunto reducido de productos ha consolidado el mercado y prevalece gracias a un continuo esfuerzo de desarrollo por parte de sus fabricantes. Los mas importantes son:

  • Solaris de Sun Microsystems. Uno de los sistemas operativos Unix mas difundidos en el entorno empresarial y conocido por su gran estabilidad. Parte del codigo fuente de Solaris se ha liberado con licencia de fuentes abiertas (OpenSolaris).
  • AIX de IBM. El UNIX "propietario" de IBM cumplio 30 anos de vida en el 2016 y continua en pleno desarrollo, con una perceptible herencia del mainframe en campos como la virtualizacion o la RAS de los servicios, heredada de sus "hermanos mayores".
  • HP-UX de Hewlett-Packard. Este sistema operativo tambien nacio ligado a las computadoras departamentales de este fabricante. Tambien es un sistema operativo estable que continua en desarrollo.
  • macOS. Se trata de un UNIX completo, aprobado por The Open Group. Su diferencia marcada es que posee una interfaz grafica propietaria llamada Aqua, y es principalmente desarrollada en Objective-C en lugar de C o C++.

Existen sistemas operativos basados en el nucleo Linux, y el conjunto de aplicaciones GNU (tambien denominado GNU/Linux), entre las mas utilizadas encontramos:

Tambien son populares los sistemas operativos descendientes del 4.4BSD:

  • FreeBSD. Quiza el sistema operativo mas popular de la familia, de proposito multiple. Con una implementacion SMP muy elaborada, es el sistema operativo utilizado por los servidores de Yahoo. Y base de muchos sistemas operativos entre ellos Mac OS X de Apple.
  • OpenBSD. Ampliamente reconocida por su seguridad proactiva y auditoria permanente del codigo fuente. Es utilizada en ambientes donde la seguridad prima sobre todo, es usual encontrarlo instalado en servidores que actuan como Firewall, VPN o Proxy.
  • NetBSD. Se le conoce por su portabilidad, a octubre de 2008: 53 arquitecturas soportadas. La NASA lo ha utilizado para la investigacion en redes TCP/IP satelitales, al igual que para reciclar computadoras viejas con software moderno.

Las siguientes implementaciones de UNIX tienen importancia desde el punto de vista historico, no obstante, actualmente estan en desuso:

Ordenes clasicas de UNIX

[editar]

Algunos comandos basicos de UNIX son:

Esta es una lista de los sesenta comandos de usuario de la seccion 1 de la Primera Edicion:

ar as b bas bcd boot cat chdir check chmod chown cmp cp date db (Unix) dbppt dc df dsw dtf du ed find for form hup lbppt ld ln ls mail mesg mkdir mkfs mount mv nm od pr rew (Unix) rkd rkf rkl rm rmdir roff sdate sh stat strip (Unix) su sum tap (Unix) tm tty type un wc who write

Otros comandos

Vease tambien

[editar]

Referencias

[editar]
  1. | Bell Labs. The Creation of the UNIX* Operating System. (en ingles)
  2. | Bell Labs. THE UNIX ORAL HISTORY PROJECT. Edited and Transcribed by Michael S. Mahoney. Princeton University. Princeton, New Jersey (en ingles).
  3. | <>. El Pais. 31 de marzo de 2010.
  4. | Bell Labs. Before Multics there was chaos, and afterwards, too The Creation of the UNIX* Operating System. (en ingles)
  5. | Bell Labs. The famous PDP-7 comes to the rescue The Creation of the UNIX* Operating System. (en ingles)
  6. | Ritchie, Dennis M. (septiembre de 1979) The Evolution of the Unix Time-sharing System Archivado el 8 de abril de 2015 en Wayback Machine. Bell Labs. 1996.. Lucent Technologies Inc. (en ingles).
  7. | Ritchie, Dennis M. Thompson's Space Travel Game Archivado el 9 de abril de 2007 en Wayback Machine. Bell Labs. 2001. Lucent Technologies Inc. (en ingles).
  8. | Bell Labs. The UNIX system begins to take shape The Creation of the Unix Operating System (en ingles).
  9. | Tanenbaum, Andrew S. (20 May 2004) Some Notes on the "Who wrote Linux" Kerfuffle, Release 1.5 Departament of Computer Science, Vrije Universiteit, Amsterdam (en ingles).
  10. | Bell Labs. It looked like an operating system, almost The Creation of the UNIX* Operating System. (en ingles)
  11. | Bell Labs. Porting UNIX for its first commercial application The Creation of the UNIX* Operating System (en ingles).
  12. | Dennis M. Ritchie Unix Programmer's Manual, First Edition (1971) Archivado el 18 de mayo de 2008 en Wayback Machine. Bell Labs. Lucent Technologies Inc. (en ingles).
  13. | Bell Labs. From B language to NB to C The Creation of the UNIX* Operating System. (en ingles)
  14. | a b Bell Labs. Sharing UNIX with the rest of the world The Creation of the UNIX* Operating System (en ingles).
  15. | a b c d e Bell Labs. Early versions of the UNIX* system The Creation of the UNIX* Operating System. (en ingles)
  16. | a b <> (en ingles). Archivado desde el original el 21 de noviembre de 2011. Consultado el 14 de septiembre de 2011.
  17. | a b <>. Consultado el 14 de septiembre de 2011.
  18. | Novell, Inc. Press Release (20 September 1995) HP, Novell and SCO To Deliver High-Volume UNIX OS With Advanced Network And Enterprise Services Novell, Inc. New York. (en ingles)

Enlaces externos

[editar]