UNIX vs Linux: ¿En qué se diferencian?

UNIX vs Linux: ¿En qué se diferencian?

UNIX es un potente sistema operativo (SO) multiusuario que definió la forma en que hacemos informática durante más de 40 años. Proporcionó muchas características y abstracciones que hoy en día damos por sentadas. Esto incluye la idea de que los archivos son una secuencia de bytes no interpretados, así como la noción de un sistema de archivos jerárquico.

Este artículo le mostrará algunas de las diferencias entre el sistema operativo UNIX original y su sucesor espiritual moderno: Linux. Además, también le mostrará un breve resumen tanto del historial como de las características notables de cada sistema.

¿Qué es UNIX?

Desde finales de la década de 1970, UNIX ha establecido el estándar para lo que puede considerarse un sistema operativo moderno y potente. Desarrollado en Bell Laboratories, se convirtió en el vehículo que impulsó la investigación del sistema operativo para algunas de las mentes más brillantes de la informática.

Una captura de pantalla del shell raíz de Research Unix de la séptima edición.

El sistema operativo UNIX de investigación original se puede dividir en siete ediciones separadas. Cada uno de los cuales ha introducido numerosas innovaciones sobre cómo funciona el sistema UNIX, junto con sus utilidades. Por ejemplo, los programas awky sedaparecieron por primera vez en la 7.ª edición de Research UNIX.

Captura de pantalla de la página de manual de awk de Research Unix de la séptima edición.

En la década de 1980, AT&T volvió a empaquetar el UNIX de investigación original junto con otras variantes internas para crear un sistema comercial para empresas e instituciones. Esto se conoció como System III y System V UNIX. Incluía funciones como el comando uname y Korn Shell. Eventualmente, estas dos versiones se convirtieron en la base para los derivados modernos de UNIX como illumos , OmniOS e IBM AIX .

Una consola que muestra un indicador básico de OmniOS.

¿Qué es Linux?

Linux es una implementación de sala limpia de un kernel similar a UNIX compatible con POSIX para arquitecturas de sistemas modernos. Linus Torvalds lo creó en 1991 como un pequeño proyecto que proporcionaba un kernel de código abierto alternativo al System V UNIX de código cerrado.

Una captura de pantalla que muestra un escritorio Ubuntu Linux.

La mayoría de la gente piensa en Linux como un sistema operativo en sí mismo. Sin embargo, solo corresponde al kernel binario del sistema. Una máquina Linux es a menudo una colección de proyectos de software dirigidos por la comunidad que los mantenedores agrupan como una sola «distribución». Cada distribución proporciona sus propios procesos de construcción únicos junto con un conjunto básico de programas.

Una terminal que muestra la versión actual del kernel de Linux en Ubuntu 22.04.

Por ejemplo, tanto Red Hat Enterprise Linux como Devuan Linux usan el kernel de Linux pero tienen utilidades de espacio de usuario muy diferentes.

Una captura de pantalla del escritorio RHEL 8 básico.

Hoy en día, Linux es un nombre familiar en casi todos los niveles de la informática. Además de ser la columna vertebral de Internet, puede encontrar Linux en placas SoC, así como distribuciones de alto rendimiento que se ejecutan en clústeres de supercomputadoras.

Una captura de pantalla de la página web de distribución de Ubuntu SoC Linux.
Fuente de la imagen: https://ubuntu.com

Comandos de UNIX frente a Linux

Si bien UNIX y Linux comparten un paradigma informático común, ambos sistemas operativos difieren en los comandos y las opciones que puede usar dentro de ellos.

Descripción general de los comandos básicos de UNIX

En general, los comandos de UNIX suelen ser concisos y contienen pocas o ninguna opción adicional. Esto va en línea con el origen centrado en la investigación del sistema operativo, donde espera que sus usuarios puedan programar las características que quieren de la máquina.

Captura de pantalla de la página de manual de cat de Research UNIX de la séptima edición.

Por ejemplo, el catcomando en UNIX solo tiene una sola bandera mientras que lssolo contiene 11. Además, el sistema UNIX original no tiene opciones largas para sus comandos. Esto puede hacer que el sistema sea poco intuitivo al principio, pero rápido una vez que esté familiarizado con sus opciones de formato corto.

Captura de pantalla de la página de manual de ls de Research UNIX de la séptima edición.

Dado que los sistemas derivados de UNIX intentan mantener el código y los programas heredados, la mayoría de sus comandos de nivel inferior ahora son ligeramente diferentes de una distribución normal de Linux. Como ejemplo, OmniOS usa el gestor de arranque BSD y System V Init en lugar de GNU GRUB y systemd.

Una captura de pantalla del cargador de arranque OmniOS BSD.

Descripción general de los comandos básicos de Linux

A diferencia de UNIX, cada comando en Linux contiene una variedad de opciones que amplían las características de sus contrapartes originales. Esto hace que el sistema sea accesible para los que no son programadores, ya que la mayoría de lo que necesita ya está en los programas de forma predeterminada.

Una terminal que muestra la página man de Linux cat.

Aparte de eso, el kernel de Linux también proporciona funciones adicionales, como KVM, que puede exponer como comandos al usuario. Por ejemplo, libvirtd de Red Hat le permite utilizar su sistema operativo como un hipervisor de tipo 1.

Una captura de pantalla que muestra la consola RHEL VM Cockpit usando libvirtd.

Por último, Linux también proporciona opciones de formato largo para algunas de sus utilidades principales. Estas son banderas memorables y detalladas que permiten a los usuarios especificar rápidamente la función que desean sin memorizar opciones oscuras de una sola letra.

Una captura de pantalla de las opciones de formato largo en Linux.

Diferencias entre UNIX y Linux

Con eso en mente, UNIX y Linux también difieren en algunos detalles de implementación y específicos del sistema. Estos incluyen el estado de los derechos de autor de cada sistema operativo, así como su rendimiento y usabilidad generales. La siguiente tabla destaca algunas de las principales diferencias entre los dos sistemas operativos:

UNIX linux
Estado de los derechos de autor La mayoría de las variantes son de código cerrado. Aparte del antiguo UNIX, solo unos pocos son de código abierto. La mayoría de las distribuciones son de código abierto y de uso gratuito.
Soporte comunitario Puede ser difícil obtener el apoyo adecuado de la comunidad. La mayoría de las distribuciones de Linux tienen una base de usuarios activa para soporte comunitario.
Resolución de problemas UNIX de código abierto puede ser lento para resolver problemas no críticos en el sistema. Las distribuciones populares pueden resolver rápidamente incluso problemas no críticos.
Desarrollo del núcleo El kernel y el espacio de usuario están siendo desarrollados por el mismo equipo. Esto puede llevar a actualizaciones más lentas pero a un código más confiable. El kernel y el espacio de usuario son proyectos diferentes dirigidos por personas diferentes. Esto puede resultar en problemas e incompatibilidad.
Rendimiento general Las mejoras de rendimiento en el código del kernel pueden tardar un tiempo en desarrollarse y distribuirse. El kernel de Linux suele ser más rápido que otras alternativas.
Seguridad UNIX de código abierto es relativamente seguro para las tareas informáticas normales. SELinux es la barra de oro para tareas de misión crítica, así como un requisito para el cumplimiento de estándares.
Facilidad de uso Las opciones de comando de UNIX pueden ser poco intuitivas ya que no usa nombres largos. Linux puede ser más fácil de usar para un novato ya que tiene comandos intuitivos.
Soporte binario Puede ser difícil encontrar software fuera del repositorio predeterminado. Las distribuciones de Linux ofrecen múltiples formas de instalar paquetes.
Soporte de hardware El soporte generalmente se enfoca en hardware de nivel empresarial actual y heredado. Linux es compatible con hardware de nivel empresarial y de consumo.
Sistemas de archivos disponibles Los sistemas suelen venir con ZFS, UFS, JFS y FFS. Linux viene con EXT2, 3 y 4 junto con XFS, BTRFS y JFS.
Interfaces gráficas disponibles La mayoría de los sistemas actuales utilizan GNOME u Openbox. La mayoría de las distribuciones usan GNOME, KDE o XFCE, pero hay muchos otros entornos de escritorio para elegir.
Concha predeterminada Los sistemas UNIX actuales utilizan el shell Bourne original (Bsh) de 7th Edition Research UNIX. La mayoría de los sistemas actuales utilizan la implementación gratuita de Bourne Shell: Bourne Again Shell (Bash).

Preguntas frecuentes

¿Es Windows un sistema UNIX?

No. Windows es un sistema operativo completamente diferente de UNIX y Linux. Microsoft desarrolló originalmente Windows como un shell gráfico para el sistema operativo MS-DOS, pero desde entonces se convirtió en su propio sistema con la introducción del kernel de Windows NT.

¿macOS es UNIX?

Sí. La versión actual de macOS utiliza el sistema operativo Darwin que se ejecuta en el kernel XNU. Este es un kernel similar a UNIX que Apple desarrolla junto con Darwin. XNU utiliza principalmente el código base de FreeBSD para sus sistemas de archivos, pila de red y bibliotecas del sistema.

¿Qué es más rápido: Linux o UNIX?

En la mayoría de los casos, Linux es un sistema operativo más rápido en comparación con UNIX. Sin embargo, hay casos en los que UNIX es más rápido y eficiente, especialmente en arquitecturas de nivel empresarial como SPARC.

Crédito de la imagen: Maksym Zakharyak a través de Unsplash . Todas las alteraciones y capturas de pantalla por Ramces Red.

Deja una respuesta

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