Linux vs Unix: ¿Cuál es la diferencia?

Si eres un desarrollador de software de 20 o 30 años, has crecido en un mundo dominado por Linux. Ha sido un jugador importante en el Centro de datos durante décadas, y si bien es difícil encontrar informes definitivos de Cuota de mercado del sistema operativo, la cuota de Linux de los sistemas operativos del centro de datos podría ser tan alta como 70%, con variantes de Windows que llevan casi todo el porcentaje restante. Los desarrolladores que usan cualquier nube pública importante pueden esperar que el sistema de destino ejecute Linux., La evidencia de que Linux está en todas partes ha crecido en los últimos años cuando se agregan Sistemas Embebidos basados en Android y Linux en teléfonos inteligentes, televisores, Automóviles y muchos otros dispositivos.

aún así, la mayoría de los desarrolladores de software, incluso aquellos que han crecido durante esta venerable «revolución de Linux», al menos han oído hablar de Unix. Suena similar a Linux, y probablemente hayas escuchado a la gente usar estos términos indistintamente. O tal vez usted ha oído Linux llamado un «Unix-like» sistema operativo.

Entonces, ¿Qué es este Unix?, Las caricaturas hablan de «osos grises» como magos sentados detrás de pantallas verdes brillantes, escribiendo código C y scripts de shell, impulsados por café anticuado y elaborado por goteo. Pero Unix tiene una historia mucho más rica más allá de los programadores de C barbudos de la década de 1970. mientras abundan los artículos que detallan La historia de Unix y las comparaciones de «Unix vs.Linux», este artículo ofrecerá un fondo de alto nivel y una lista de las principales diferencias entre estos mundos complementarios.,

los inicios de Unix

La historia de Unix comienza en AT& T Bell Labs a finales de la década de 1960 con un pequeño equipo de programadores que buscan escribir un sistema operativo multitarea y multiusuario para el PDP-7. Dos de los miembros más notables de este equipo en las instalaciones de Investigación de Bell Labs fueron Ken Thompson y Dennis Ritchie. Mientras que muchos de los conceptos de Unix eran derivados de su predecesor (Multics), la decisión del equipo de Unix a principios de la década de 1970 de reescribir este pequeño sistema operativo en el lenguaje C es lo que separó a Unix de todos los demás., En ese momento, los sistemas operativos rara vez eran, si es que alguna vez, portátiles. En cambio, por la naturaleza de su diseño y lenguaje fuente de bajo nivel, los sistemas operativos estaban estrechamente vinculados a la plataforma de hardware para la que habían sido creados. Al refactorizar Unix en el lenguaje de programación C, Unix ahora podría ser portado a muchas arquitecturas de hardware.

además de esta nueva portabilidad, que permitió a Unix expandirse rápidamente más allá de Bell Labs a otros usos de investigación, académicos e incluso comerciales, varios principios clave del diseño del sistema operativo eran atractivos para los usuarios y programadores., Por un lado, la filosofía Unix de Ken Thompson se convirtió en un poderoso modelo de diseño de software modular y computación. La filosofía Unix recomendaba utilizar pequeños programas especialmente diseñados en combinación para realizar tareas complejas. Desde que Unix fue diseñado alrededor de archivos y pipes, este modelo de «piping» de entradas y salidas de programas juntos en un conjunto lineal de operaciones en la entrada está todavía en boga hoy en día. De hecho, el actual modelo de computación sin servidor en la nube debe gran parte de su herencia a la filosofía Unix.,

rápido crecimiento y competencia

a finales de los años 1970 y 80, Unix se convirtió en la raíz de un árbol genealógico que se expandió a través de la investigación, la academia y un creciente negocio comercial de sistemas operativos Unix. Unix no era software de código abierto, y el código fuente de Unix era licenciable a través de acuerdos con su propietario, en& T. La primera licencia de software conocida fue vendida a la Universidad de Illinois en 1975.

Unix creció rápidamente en la academia, con Berkeley convirtiéndose en un importante centro de actividad, dado el año sabático de Ken Thompson allí en los años 70., Con toda la actividad en torno a Unix en Berkeley, nació una nueva entrega de software Unix: la Berkeley Software Distribution, O BSD. Inicialmente, BSD no era una alternativa al Unix de AT&T, sino un complemento con software y capacidades adicionales. Para cuando 2BSD (la segunda distribución de software de Berkeley) llegó en 1979, Bill Joy, un estudiante de Posgrado de Berkeley, había agregado programas ahora famosos como vi y el shell C (/bin / csh).,

además de BSD, que se convirtió en una de las ramas más populares de la familia Unix, las ofertas comerciales de Unix explotaron a través de la década de 1980 y en los años 90 con nombres como HP-UX, AIX de IBM, Solaris de Sun, Sequent y Xenix. A medida que las ramas crecían desde la raíz original, comenzaron las «guerras Unix», y la estandarización se convirtió en un nuevo enfoque para la comunidad. El estándar POSIX nació en 1988, así como otros seguimientos de estandarización a través del grupo abierto en la década de 1990.,

alrededor de este tiempo en& T y Sun lanzaron System V Release 4 (SVR4), que fue adoptado por muchos proveedores comerciales. Por separado, la familia de sistemas operativos BSD había crecido a lo largo de los años, lo que llevó a algunas variaciones de código abierto que se lanzaron bajo la ahora familiar licencia BSD. Esto incluía FreeBSD, OpenBSD y NetBSD, cada uno con un mercado objetivo ligeramente diferente en la industria de servidores Unix. Estas variantes de Unix siguen teniendo cierto uso hoy en día, aunque muchos han visto su Cuota de mercado de servidores menguar en un solo dígito (o menor)., BSD puede tener la mayor base de instalación de cualquier sistema Unix moderno hoy en día. Además, cada unidad de hardware Apple Mac enviada en la historia reciente puede ser reclamada por BSD, ya que su sistema operativo OS X (ahora macOS) es un derivado de BSD.

si bien la historia completa de Unix y sus variantes académicas y comerciales podrían tomar muchas más páginas, por el bien de nuestro enfoque en el artículo, pasemos al surgimiento de Linux.

Enter Linux

lo que hoy llamamos el sistema operativo Linux es realmente la combinación de dos esfuerzos de principios de la década de 1990., Richard Stallman estaba buscando crear una alternativa verdaderamente libre y de código abierto al sistema Unix propietario. Estaba trabajando en las utilidades y programas bajo el nombre GNU, un acrónimo recursivo que significa » ¡GNU no es Unix!»Aunque había un proyecto de kernel en marcha, resultó ser difícil, y sin un kernel, el sueño del sistema operativo libre y de código abierto no se podría realizar. Fue el trabajo de Linus Torvald-produciendo un núcleo viable y funcional que él llamó Linux – el que dio vida al sistema operativo completo. Dado que Linus estaba usando varias herramientas GNU (p. ej.,, la colección de compiladores de GNU, o GCC), la Unión de las herramientas de GNU y el kernel de Linux era una combinación perfecta.

Las distribuciones de Linux cobraron vida con los componentes de GNU, el kernel de Linux, la GUI X-Windows del MIT y otros componentes BSD que podían usarse bajo la licencia BSD de código abierto. La temprana popularidad de distribuciones como Slackware y luego Red Hat dio al» usuario común de PC » de la década de 1990 acceso al sistema operativo Linux y, con él, muchas de las capacidades y Utilidades del sistema Unix propietario que usaban en su trabajo o vida académica.,

debido a la posición libre y de código abierto de todos los componentes de Linux, cualquiera podría crear una distribución de Linux con un poco de esfuerzo, y pronto el número total de distribuciones llegó a cientos. Por supuesto, muchos desarrolladores utilizan Linux ya sea a través de proveedores de nube o mediante el uso de distribuciones libres populares como Fedora, canonical Ubuntu, Debian, Arch Linux, Gentoo, y muchas otras variantes., Las ofertas comerciales de Linux, que proporcionan soporte sobre los componentes libres y de código abierto, se hicieron viables ya que muchas empresas, incluyendo IBM, migraron de Unix propietario a ofrecer soluciones de middleware y software sobre Linux. Red Hat creó un modelo de soporte comercial en torno a Red Hat Enterprise Linux, al igual que el proveedor alemán SUSE con SUSE Linux Enterprise Server (SLES).

comparando Unix y Linux

hasta ahora, hemos mirado la historia de Unix y el surgimiento de Linux y los fundamentos de GNU/Free Software Foundation de una alternativa libre y de código abierto a Unix., Examinemos las diferencias entre estos dos sistemas operativos que comparten gran parte del mismo patrimonio y muchos de los mismos objetivos.

desde la perspectiva de la experiencia del Usuario, ¡no es muy diferente! Gran parte de la atracción de Linux fue la disponibilidad del sistema operativo en muchas arquitecturas de hardware (incluyendo la PC moderna) y la capacidad de usar herramientas familiares para los administradores y usuarios de sistemas Unix.

debido a los estándares POSIX y el cumplimiento, el software escrito en Unix podría compilarse para un sistema operativo Linux con una cantidad generalmente limitada de esfuerzo de portabilidad., Los scripts de Shell podrían ser usados directamente en Linux en muchos casos. Mientras que algunas herramientas tenían opciones de línea de comandos/banderas ligeramente diferentes entre Unix y Linux, muchas operaban lo mismo en ambas.

una nota al margen es que la popularidad del hardware y el sistema operativo macOS como una plataforma para el desarrollo que se dirige principalmente a Linux puede atribuirse al sistema operativo macOS similar a BSD. Muchas herramientas y scripts destinados a un sistema Linux funcionan fácilmente dentro del terminal macOS. Muchos componentes de software de código abierto disponibles en Linux están fácilmente disponibles a través de herramientas como Homebrew.,

las diferencias restantes entre Linux y Unix están principalmente relacionadas con el modelo de licencia: código abierto vs.software propietario con licencia. Además, la falta de un núcleo común dentro de las distribuciones Unix tiene implicaciones para los proveedores de software y hardware. Para Linux, un proveedor puede crear un controlador de dispositivo para un dispositivo de hardware específico y esperar que, dentro de lo razonable, funcione en la mayoría de las distribuciones., Debido a las ramas comerciales y académicas del árbol de Unix, un proveedor podría tener que escribir diferentes controladores para las variantes de Unix y tener licencias y otras preocupaciones relacionadas con el acceso a un SDK o un modelo de distribución para el software como un controlador de dispositivo binario a través de muchas variantes de Unix.

a medida que ambas comunidades han madurado en la última década, muchos de los avances en Linux han sido adoptados en el mundo Unix. Muchas utilidades GNU se pusieron a disposición como complementos para sistemas Unix donde los desarrolladores querían características de programas GNU que no son parte de Unix., Por ejemplo, AIX de IBM ofreció una caja de herramientas de Aix para aplicaciones Linux con cientos de paquetes de software GNU (como Bash, GCC, OpenLDAP, y muchos otros) que podrían agregarse a una instalación de Aix para facilitar la transición entre sistemas AIX basados en Linux y Unix.

Unix propietario todavía está vivo y bien y, con muchos proveedores importantes que prometen soporte para sus versiones actuales hasta bien entrada la década de 2020, no hace falta decir que Unix estará presente en el futuro previsible., Además, la rama BSD del árbol Unix es de código abierto, y NetBSD, OpenBSD y FreeBSD tienen bases de usuarios fuertes y Comunidades de código abierto que pueden no ser tan visibles o activas como Linux, pero que se mantienen en los últimos informes de servidores compartidos, con números muy por encima de los Unix propietarios en áreas como el servicio web.

donde Linux ha mostrado una ventaja significativa sobre Unix propietario es en su disponibilidad a través de un gran número de plataformas de hardware y dispositivos., La Raspberry Pi, popular entre los aficionados y entusiastas, está impulsada por Linux y ha abierto la puerta a todo un espectro de dispositivos IoT que ejecutan Linux. Ya hemos mencionado los dispositivos Android, autos (con Linux de grado automotriz) y televisores inteligentes, donde Linux tiene una gran cuota de mercado. Todos los proveedores de nube del planeta ofrecen servidores virtuales que ejecutan Linux, y muchas de las pilas nativas de nube más populares de hoy en día están basadas en Linux, ya sea que esté hablando de tiempos de ejecución de contenedores o Kubernetes o muchas de las plataformas sin servidor que están ganando popularidad.,

una de las representaciones más reveladoras de la ascendencia de Linux es la transformación de Microsoft en los últimos años. Si le hubieras dicho a los desarrolladores de software hace una década que el sistema operativo Windows «ejecutaría Linux» en 2016, la mayoría de ellos se habrían reído histéricamente. Pero la existencia y popularidad del subsistema de Windows Para Linux (WSL), así como las capacidades anunciadas más recientemente como el puerto de Windows de Docker, incluido el soporte LCOW (Linux containers on Windows), son evidencia del impacto que Linux ha tenido—y claramente continuará teniendo—en todo el mundo del software.,

Este artículo fue publicado originalmente en mayo de 2018 y ha sido actualizado por el editor.

Share

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *