Unix
Unix | ||
---|---|---|
Parte deUnix-like | ||
Información general | ||
Tipo de programa | proyecto | |
Desarrollador | Ken Thompson,Dennis Ritchie,Brian Kernighan,Douglas McIlroy,yJoe Ossannaen losLaboratorios Bell | |
Modelo de desarrollo | Históricamente código propietario | |
Lanzamiento inicial | 1969 (hace 53 años). Primer manual en 1971 y anunciado en octubre de 1973 por los Laboratorios Bell | |
Licencia | Propietaria y licencias tipofree/open-source | |
Idiomas | Inglés | |
Información técnica | ||
Programado en | Cyensamblador | |
Núcleo | Unix-like | |
Tipo de núcleo | Monolítico | |
Plataformas admitidas | PDP-7,PDP-11/20,familia VAX | |
Interfaz gráficapredeterminada | Shell de UnixyX Window System | |
Versiones | ||
Última versión estable | Unix V7() | |
SerieUnix-like | ||
Multics | Unix | BSD,GNU,Linux,Solaris,AIX,HP-UX,macOS,XENIX |
Enlaces | ||
Unix(registrado oficialmente comoUNIX®) es unsistema operativoportable,multitareaymultiusuario;desarrollado en 1969 por un grupo de empleados de loslaboratorios BelldeAT&T.[1][2]
El sistema, junto con todos los derechos fueron vendidos por AT&T aNovell,Inc. Esta vendió posteriormente el software aSanta Cruz Operationen 1995, y esta, a su vez, lo revendió aCaldera Softwareen 2001, empresa que después se convirtió en elgrupo SCO.Sin embargo, Novell siempre argumentó que solo vendió los derechos de uso del software, pero que retuvo elcopyrightsobre "UNIX®". 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 especificaciónSingle UNIX Specificationpueden ser denominados "UNIX®" (otros reciben la denominación «similar a un sistema Unix» o «similar a Unix»). En ocasiones, suele usarse el término "Unix tradicional" para referirse a Unix o a un sistema operativo que cuenta con las características deUNIX Versión 7oUNIX System Vo unix versión 6.
Historia
[editar]A finales de la década de 1960 elInstituto Tecnológico de Massachusetts,losLaboratorios BelldeAT&TyGeneral Electrictrabajaban en un sistema operativo experimental llamadoMultics(Multiplexed Information and Computing Service),[4] desarrollado para ejecutarse en unacomputadora central(mainframe) modeloGE-645.El objetivo del proyecto era desarrollar un gran sistema operativo interactivo que contase con muchas innovaciones, entre ellas mejoras en laspolíticas de seguridad.El proyecto consiguió dar a luz versiones para producción, 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,siguió trabajando para la computadora GE-645[5] y escribió un juego llamadoSpace Travel,[6][7] (Viaje espacial). Sin embargo, descubrió que el juego era lento en la máquina deGeneral Electricy resultaba realmente caro, algo así como 75 dólares de EE. UU. por cada partida.
De este modo, Thompson escribió nuevamente el programa, con ayuda de Dennis Ritchie, enlenguaje ensamblador,para que se ejecutase en unacomputadoraDECPDP-7.Esta experiencia, junto al trabajo que desarrolló para el proyecto Multics, condujo a Thompson a iniciar la creación de un nuevo sistema operativo para la DEC PDP-7.[8] Thompson y Ritchie lideraron un grupo de programadores, entre ellos aRudd Canaday,en los laboratorios Bell, para desarrollar tanto elsistema de ficheroscomo el sistema operativo multitarea en sí. A lo anterior, agregaron unintérprete de órdenes(o intérprete de comandos) y un pequeño conjunto de programas. El proyecto fue bautizado UNICS, comoacrónimoUniplexed Information and Computing System, pues solo prestaba servicios a dos usuarios (de acuerdo conAndrew Tanenbaum,era solo a un usuario[9]). La autoría de esta sigla se le atribuye aBrian Kernighan,ya que era unhackde Multics. Dada la popularidad que tuvo un juego de palabras que consideraba a UNICS un sistema MULTICS castrado (pueseunuchs,eninglés,es unhomófonode UNICS), se cambió el nombre a UNIX, dando origen al legado que llega hasta nuestros días.[10]
Hasta ese instante, no había existido apoyo económico por parte de loslaboratorios Bell,pero eso cambió cuando el Grupo de Investigación en Ciencias de la Computación decidió utilizar UNIX en una máquina 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 máquinaPDP-11/20,y como consecuencia de ello consiguieron el apoyo económico de los laboratorios Bell. Fue así como por vez primera, en 1970, se habla oficialmente del sistema operativo UNIX[11] ejecutado en una PDP-11/20. Se incluía en él un programa para dar formato a textos (runoff) y uneditor 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 recibían. Pronto, runoff fue mejorado hasta convertirse entroff,el primer programa de edición electrónica que permitía realizarcomposición tipográfica.El 3 de noviembre de 1971 Thomson y Ritchie publicaron un manual de programación de UNIX (título original en inglés: "UNIX Programmer's Manual" ).[12]
En 1972 se tomó la decisión de escribir nuevamente UNIX, pero esta vez en ellenguaje de programación C.[13] Este cambio significaba que UNIX podría ser fácilmente modificado para funcionar en otras computadoras (de esta manera, se volvía portable) y así otras variaciones podían ser desarrolladas por otros programadores. Ahora, el código era más conciso y compacto, lo que se tradujo en un aumento en la velocidad de desarrollo de UNIX. AT&T puso a UNIX a disposición de universidades y compañías, también al gobierno de losEstados Unidos,a través de licencias.[14] Una de estas licencias fue otorgada al Departamento de Computación de la Universidad de California, con sede en Berkeley.[14] En 1975 esta institución desarrolló y publicó su propio sucedáneo de UNIX, conocida comoBerkeley Software Distribution(BSD), que se convirtió en una fuerte competencia para la familia UNIX de AT&T.
Mientras tanto,AT&Tcreó una división comercial denominadaUnix Systems Laboratoriespara la explotación comercial del sistema operativo. El desarrollo prosiguió, con la entrega de las versiones 4, 5 y 6[15] en el transcurso de 1975. Estas versiones incluían lospipesotuberías,lo que permitió dar al desarrollo una orientación modular respecto a la base del código, consiguiendo aumentar aún más la velocidad de desarrollo. Ya en 1978, cerca de 600 o más máquinas estaban ejecutando alguna de las distintas encarnaciones de UNIX.
La versión 7,[15] la última versión del UNIX original con amplia distribución, entró en circulación en 1979. Las versiones 8, 9 y 10[15] se desarrollaron durante la década de 1980, pero su circulación se limitó a unas cuantas universidades, a pesar de que se publicaron los informes que describían el nuevo trabajo. Los resultados de esta investigación sirvieron de base para la creación dePlan 9 from Bell Labs,un nuevo sistema operativo portable y distribuido, diseñado para ser el sucesor de UNIX en investigación por losLaboratorios Bell.
AT&T entonces inició el desarrollo deUNIX System III,basado en la versión 7, como una variante de tinte comercial y así vendía el producto de manera directa. La primera versión del sistema III se lanzó en 1981.[15] A pesar de lo anterior, la empresa subsidiariaWestern Electricseguía vendiendo versiones antiguas de Unix basadas en las distintas versiones hasta la séptima. Para finalizar con la confusión con todas las versiones divergentes, AT&T decidió combinar varias versiones desarrolladas en distintas universidades y empresas, dando origen en 1983 al UnixSystem VRelease 1.[15] Esta versión presentó características tales como el editorViy la bibliotecacurses,desarrolladas porBerkeley Software Distributionen laUniversidad de California, Berkeley.También contaba con compatibilidad con las máquinasVAXde la compañíaDEC.
Hacia 1991, un estudiante de ciencias de la computación de laUniversidad de Helsinki,llamadoLinus Torvaldsdesarrolló unnúcleopara computadoras con arquitecturax86deIntelque emulaba muchas de las funcionalidades de UNIX y lo lanzó en forma de código abierto en 1991, bajo el nombre deLinux.En 1992, elProyecto GNUcomenzó a utilizar el núcleo Linux junto a sus programas.
En 1993, la compañíaNovelladquirió la divisiónUnix Systems Laboratoriesde AT&T junto con su propiedad intelectual.[16] Esto ocurrió en un momento delicado en el queUnix Systems Laboratoriesdisputaba una demanda en los tribunales contra BSD por infracción de los derechos de copyright, revelación de secretos y violación de marca de mercado.[17]
Aunque BSD ganó el juicio, Novell descubrió que gran parte del código de BSD fue copiada ilegalmente en UNIXSystem V.En realidad, la propiedad intelectual de Novell se reducía a unos cuantos archivos fuente.[17] La correspondiente contra-demanda acabó en un acuerdo extrajudicial cuyos términos permanecen bajo secreto a petición de Novell.
A finales de 1993, Novell vendió su división UNIX comercial[16] (es decir, la antigua Unix Systems Laboratories) aSanta Cruz Operation(SCO) reservándose, aparentemente, algunos derechos de propiedad intelectual sobre el software.[18] Xinuos (antes UnXis) continúa la comercialización de System V en su productoUnixWaretras adquirir a SCO en abril de 2011.
Familias UNIX más 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 más significativos sonUNIX System IIIy UNIXSystem V.
- BSD:Familia originada por el licenciamiento de UNIX a Berkely. BSD se reescribió para no incorporar propiedad intelectual originaria de AT&T en la versión 4. La primera implementación de los protocolosTCP/IPque dieron origen aInternetson la pila (stack) TCP/IP BSD.
- AIX:Esta familia surge por el licenciamiento deUNIX System IIIaIBM.
- Xenix:Familia derivada de la adquisición de los derechos originales de AT&T primero por parte de Microsoft y de esta los vendió aSCO.
- GNU:En 1983,Richard Stallmananunció elProyecto GNU,un ambicioso esfuerzo para crear un sistema similar a Unix, que pudiese ser distribuido libremente. El software desarrollado por este proyecto -por ejemplo, GNUEmacsyGCC- también han sido parte fundamental de otros sistemas UNIX.
- Linux: En 1991, cuandoLinus Torvaldsempezó a proponer elnúcleoLinuxy a reunir colaboradores, las herramientas GNU eran la elección perfecta. Al combinarse ambos elementos, conformaron la base del sistema operativo (basado enPOSIX), que hoy se conoce comoGNU/Linux.Lasdistribucionesbasadas en el núcleo, el software GNU y otros agregados entre las que se pueden mencionar aSlackware Linux,Red Hat LinuxyDebian GNU/Linuxse han hecho populares tanto entre los aficionados a la computación como en el mundo empresarial. Obsérvese que Linux tiene un origen independiente, por lo que se considera un 'clónico' de UNIX y no un UNIX en el sentido histórico.
Las interrelaciones entre estas familias son las siguientes, aproximadamente en orden cronológico:
- La familia BSD surge del licenciamiento del UNIX original de AT&T.
- Xenix también surge por licenciamiento del UNIX original de AT&T, aunque aún no era propiedad de SCO.
- AIX surge por licenciamiento deUNIX System III,pero también 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 deUNIX System V.
- Linuxincorpora propiedad intelectual deBSD,gracias a que este también se libera con una licencia de código abierto denominadaOpen-source BSD.
- SegúnSCO Group,Linux incorpora propiedad intelectual procedente de AIX gracias a la colaboración de IBM en la versión 2.4. Aún no está demostrado y hay un proceso judicial:Disputas de SCO sobre Linux.
La marca
[editar]UNIX® es una marca registrada de Novell, después de una disputa conThe Open Groupen Estados Unidos y otros países. Esta marca solo se puede aplicar a los sistemas operativos que cumplen la "Single Unix Specification"de esta organización y han pagado las regalías establecidas.
En la práctica, el término UNIX se utiliza en su acepción de familia. Se aplica también a sistemas multiusuario basados enPOSIX(tales comoGNU/Linux,Mac OS X[el cual, en su versión 10.5 ya ha alcanzado la certificación UNIX],FreeBSD,NetBSD,OpenBSD), los cuales no buscan la certificación UNIX por resultar cara para productos destinados al consumidor final o que se distribuyen libremente en Internet. En estos casos, el término 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) también se utiliza "Unixes", pero "Unices" (que trata la palabraUnixcomo un nombre latino de la tercera declinación) es asimismo popular.
Implementaciones más 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 más importantes son:
- SolarisdeSun Microsystems.Uno de los sistemas operativos Unix más difundidos 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).
- AIXdeIBM.El UNIX "propietario" de IBM cumplió 30 años de vida en el 2016 y continúa en pleno desarrollo, con una perceptible herencia del mainframe en campos como lavirtualizacióno la RAS de los servicios, heredada de sus "hermanos mayores".
- HP-UXdeHewlett-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.
- macOS.Se trata de un UNIX completo, aprobado porThe Open Group.Su diferencia marcada es que posee una interfaz gráfica propietaria llamadaAqua,y es principalmente desarrollada enObjective-Cen lugar de C o C++.
Existen sistemas operativos basados en el núcleoLinux,y el conjunto de aplicacionesGNU(también denominadoGNU/Linux), entre las más utilizadas encontramos:
- Red Hat Enterprise Linux.Cuyo fabricanteRed Hates conocido por su amplia gama de soluciones y aportes al desarrollo desoftware libre.Apoya elproyecto Fedoradel cual se beneficia y de ella se derivan distribuciones compatibles comoOracle Enterprise LinuxyCentOS,también distribuciones comoMandriva Linux,se basó en una de sus primeras versiones.
- SUSE LinuxdeNovell.Originalmente liberado por la compañía alemanaSuSE.Es popular por sus herramientas de administración centralizada. De manera análoga aRedHatconFedora,apoya el proyectoopenSUSE.
- Debian GNU/Linux.Con una de las comunidades más grandes y antiguas del movimiento desoftware libre,es base para distribuciones comoXandros,Mepis,Linspire,UbuntuyLinux Mint.
También son populares los sistemas operativos descendientes del 4.4BSD:
- FreeBSD.Quizá el sistema operativo más popular de la familia, de propósito múltiple. Con una implementaciónSMPmuy elaborada, es el sistema operativo utilizado por los servidores deYahoo.Y base de muchos sistemas operativos entre ellosMac OS XdeApple.
- OpenBSD.Ampliamente reconocida por su seguridad proactiva y auditoría permanente del código fuente. Es utilizada en ambientes donde la seguridad prima sobre todo, es usual encontrarlo instalado en servidores que actúan comoFirewall,VPNoProxy.
- NetBSD.Se le conoce por su portabilidad, a octubre de 2008: 53 arquitecturas soportadas. LaNASAlo ha utilizado para la investigación en redesTCP/IPsatelitales, al igual que para reciclar computadoras viejas con software moderno.
Las siguientes implementaciones de UNIX tienen importancia desde el punto de vista histórico, no obstante, actualmente están en desuso:
- Tru64 UNIXactualmente deHewlett-Packard(antes deCompaqy originalmente deDigital Equipment Corporation).
- UnixWareySCO OpenServeranteriormente deSanta Cruz OperationySCO Group,ahora deXinuos(UnXis).
- UX/4800deNEC.
- IRIXdeSilicon Graphics Inc..
Órdenes clásicas de UNIX
[editar]Algunos comandos básicos de UNIX son:
- Navegación/creación de directorios/archivos:lscdpwdmkdirrmrmdircp.
- Edición/visión de archivos:touchmoreedvinano.
- Procesamiento de textos:echocatgrepsortuniqsedawktailhead.
- Comparación de archivos:commcmpdiffpatch.
- Administración del sistema:chmodchownpsfindxargssdwwho.
- Comunicación:mailtelnetsshftpfingerrlogin.
- Shells:shcshksh.
- Documentación:man.
Esta es una lista de los sesenta comandos de usuario de la sección 1 de la Primera Edición:
- arasbbasbcdbootcatchdircheckchmodchowncmpcpdatedb (Unix)dbpptdcdfdswdtfduedfindforformhuplbpptldlnlsmailmesgmkdirmkfsmountmvnmodprrew (Unix)rkdrkfrklrmrmdirroffsdateshstatstrip (Unix)susumtap (Unix)tmttytypeunwcwhowrite
Otros comandos
- Tiempo:cal
Véase también
[editar]- Jerarquía de directorios en sistemas tipo UNIX
- The Open Group
- Xinuos
- BSD
- OS X de Apple
- GNU/Linux
- Anexo:Programas para Unix(Lista de programas para Unix)
- Plan 9 from Bell Labs
- Research Unix
- 386BSD
- Historia de Unix
Referencias
[editar]- ↑Bell Labs.The Creation of the UNIX* Operating System.(en inglés)
- ↑Bell Labs.THE UNIX ORAL HISTORY PROJECT.Edited and Transcribed by Michael S. Mahoney. Princeton University. Princeton, New Jersey (en inglés).
- ↑«Unix pertenece a Novell».El País.31 de marzo de 2010.
- ↑Bell Labs.Before Multics there was chaos, and afterwards, tooThe Creation of the UNIX* Operating System. (en inglés)
- ↑Bell Labs.The famous PDP-7 comes to the rescueThe Creation of the UNIX* Operating System. (en inglés)
- ↑Ritchie, Dennis M. (septiembre de 1979)The Evolution of the Unix Time-sharing SystemArchivadoel 8 de abril de 2015 enWayback Machine.Bell Labs. 1996.. Lucent Technologies Inc. (en inglés).
- ↑Ritchie, Dennis M.Thompson's Space Travel GameArchivadoel 9 de abril de 2007 enWayback Machine.Bell Labs. 2001. Lucent Technologies Inc. (en inglés).
- ↑Bell Labs.The UNIX system begins to take shapeThe Creation of the Unix Operating System (en inglés).
- ↑Tanenbaum, Andrew S. (20 May 2004)Some Notes on the "Who wrote Linux" Kerfuffle, Release 1.5Departament of Computer Science, Vrije Universiteit, Amsterdam (en inglés).
- ↑Bell Labs.It looked like an operating system, almostThe Creation of the UNIX* Operating System. (en inglés)
- ↑Bell Labs.Porting UNIX for its first commercial applicationThe Creation of the UNIX* Operating System (en inglés).
- ↑Dennis M. RitchieUnix Programmer's Manual, First Edition (1971)Archivadoel 18 de mayo de 2008 enWayback Machine.Bell Labs. Lucent Technologies Inc. (en inglés).
- ↑Bell Labs.From B language to NB to CThe Creation of the UNIX* Operating System. (en inglés)
- ↑abBell Labs.Sharing UNIX with the rest of the worldThe Creation of the UNIX* Operating System (en inglés).
- ↑abcdeBell Labs.Early versions of the UNIX* systemThe Creation of the UNIX* Operating System. (en inglés)
- ↑ab«The Creation of the UNIX* Operating System: UNIX moves on»(en inglés).Archivado desdeel originalel 21 de noviembre de 2011.Consultado el 14 de septiembre de 2011.
- ↑ab«La colorida historia del UNIX».Consultado el 14 de septiembre de 2011.
- ↑Novell, Inc. Press Release (20 September 1995)HP, Novell and SCO To Deliver High-Volume UNIX OS With Advanced Network And Enterprise ServicesNovell, Inc. New York. (en inglés)
Enlaces externos
[editar]- Wikimedia Commonsalberga una categoría multimedia sobreUnix.
- Wikilibrosalberga un libro o manual sobreHacks para sistemas operativos Unix-like.
- Sistemas Unix del Open Group