Unix - Unix

Unix
Simh-pdp11-unix-sysiii.png
Unix System III ejecutándose en un simulador PDP-11
Desarrollador Ken Thompson , Dennis Ritchie , Brian Kernighan , Douglas McIlroy y Joe Ossanna en Bell Labs
Escrito en C y lenguaje ensamblador
Familia OS Unix
Modelo fuente Software históricamente propietario , mientras que algunos proyectos Unix (incluida la familia BSD e illumos ) son de código abierto
Versión inicial El desarrollo comenzó en 1969
Primer manual publicado internamente en noviembre de 1971 Anunciado fuera de Bell Labs en octubre de 1973 ( 1971-11 )
 ( 1973-10 )
Disponible en inglés
Tipo de grano Varía; monolítico , microkernel , híbrido
Influenciado por Multics

Interfaz de usuario predeterminada
Interfaz de línea de comandos y gráfica ( Wayland y X Window System ; Android SurfaceFlinger ; macOS Quartz )
Licencia Varía; algunas versiones son propietarias , otras son software gratuito / de código abierto
Página web oficial opengroup .org / unix

Unix ( / j ü n ɪ k s / ; marca registrada como UNIX ) es una familia de multitarea , multiusuario computadora sistemas operativos que se derivan de la original de AT & T Unix, cuyo desarrollo se inició en la década de 1970 en el Bell Labs centro de investigación por Ken Thompson , Dennis Ritchie y otros.

Inicialmente diseñado para su uso dentro del sistema Bell , AT&T otorgó licencias de Unix a terceros a fines de la década de 1970, lo que dio lugar a una variedad de variantes de Unix académicas y comerciales de proveedores como la Universidad de California, Berkeley ( BSD ), Microsoft ( Xenix ), Sun Microsystems. ( SunOS / Solaris ), HP / HPE ( HP-UX ) e IBM ( AIX ). A principios de la década de 1990, AT&T vendió sus derechos en Unix a Novell , que luego vendió su negocio Unix a Santa Cruz Operation (SCO) en 1995. La marca comercial UNIX pasó a The Open Group , un consorcio industrial fundado en 1996, lo que permite uso de la marca para sistemas operativos certificados que cumplen con la Especificación Única de UNIX (SUS). Sin embargo, Novell sigue siendo propietario de los derechos de autor de Unix, lo que confirmó el caso judicial de SCO Group, Inc. contra Novell, Inc. (2010).

Los sistemas Unix se caracterizan por un diseño modular que a veces se denomina " filosofía Unix ". De acuerdo con esta filosofía, el sistema operativo debe proporcionar un conjunto de herramientas simples, cada una de las cuales realiza una función limitada y bien definida. Un sistema de archivos unificado y basado en inodo (el sistema de archivos Unix ) y un mecanismo de comunicación entre procesos conocido como " tuberías " sirven como el principal medio de comunicación, y se utiliza un lenguaje de comandos y secuencias de comandos de shell (el shell de Unix ) para combinar las herramientas. para realizar flujos de trabajo complejos.

Unix se distingue de sus predecesores como el primer sistema operativo portátil : casi todo el sistema operativo está escrito en el lenguaje de programación C , lo que permite que Unix funcione en numerosas plataformas.

Visión general

Versión 7 Unix , el antepasado Unix de investigación de todos los sistemas Unix modernos

Originalmente, Unix estaba destinado a ser una plataforma conveniente para los programadores que desarrollan software para ejecutar en él y en otros sistemas, en lugar de para los no programadores. El sistema creció a medida que el sistema operativo comenzó a extenderse en los círculos académicos y los usuarios agregaron sus propias herramientas al sistema y las compartieron con sus colegas.

Al principio, Unix no fue diseñado para ser portátil o multitarea . Más tarde, Unix ganó gradualmente la portabilidad, multitarea y multiusuario capacidades en un tiempo compartido de configuración. Los sistemas Unix se caracterizan por varios conceptos: el uso de texto plano para almacenar datos; un sistema de archivos jerárquico ; tratar los dispositivos y ciertos tipos de comunicación entre procesos (IPC) como archivos; y el uso de una gran cantidad de herramientas de software , pequeños programas que se pueden unir a través de un intérprete de línea de comandos usando tuberías , en lugar de usar un solo programa monolítico que incluye todas las mismas funciones. Estos conceptos se conocen colectivamente como la " filosofía Unix ". Brian Kernighan y Rob Pike resumen esto en El entorno de programación Unix como "la idea de que el poder de un sistema proviene más de las relaciones entre programas que de los programas mismos".

A principios de la década de 1980, los usuarios comenzaron a ver Unix como un posible sistema operativo universal, adecuado para computadoras de todos los tamaños. El entorno Unix y el modelo de programa cliente-servidor fueron elementos esenciales en el desarrollo de Internet y la remodelación de la informática centrada en las redes en lugar de en las computadoras individuales.

Tanto Unix como el lenguaje de programación C fueron desarrollados por AT&T y distribuidos a instituciones gubernamentales y académicas, lo que llevó a que ambos se adaptaran a una variedad más amplia de familias de máquinas que cualquier otro sistema operativo.

El sistema operativo Unix consta de muchas bibliotecas y utilidades junto con el programa de control maestro, el kernel . El kernel proporciona servicios para iniciar y detener programas, maneja el sistema de archivos y otras tareas comunes de "bajo nivel" que comparten la mayoría de los programas y programa el acceso para evitar conflictos cuando los programas intentan acceder al mismo recurso o dispositivo simultáneamente. Para mediar en dicho acceso, el núcleo tiene derechos especiales, reflejados en la distinción entre el espacio del núcleo y el espacio del usuario , siendo este último un ámbito prioritario donde operan la mayoría de los programas de aplicación.

Historia

Ken Thompson (sentado) y Dennis Ritchie trabajando juntos en un PDP-11

Los orígenes de Unix se remontan a mediados de la década de 1960 cuando el Instituto de Tecnología de Massachusetts , Bell Labs y General Electric estaban desarrollando Multics , un sistema operativo de tiempo compartido para la computadora central GE-645 . Multics presentaba varias innovaciones , pero también presentaba graves problemas. Frustrados por el tamaño y la complejidad de Multics, pero no por sus objetivos, los investigadores individuales de Bell Labs comenzaron a retirarse del proyecto. Los últimos en marcharse fueron Ken Thompson , Dennis Ritchie , Douglas McIlroy y Joe Ossanna , quienes decidieron reimplementar sus experiencias en un nuevo proyecto de menor escala. Este nuevo sistema operativo inicialmente carecía de respaldo organizativo y tampoco tenía nombre.

El nuevo sistema operativo era un sistema de una sola tarea. En 1970, el grupo acuñó el nombre Unics para Uniplexed Information and Computing Service como un juego de palabras con Multics , que significaba Multiplexed Information and Computer Services . Brian Kernighan se atribuye el mérito de la idea, pero añade que "nadie puede recordar" el origen de la ortografía Unix final . Dennis Ritchie, Doug McIlroy y Peter G. Neumann también le dan crédito a Kernighan.

El sistema operativo ha sido escrita en lenguaje ensamblador , pero en 1973, Versión 4 Unix fue reescrito en C . Sin embargo, la versión 4 de Unix todavía tenía muchos códigos dependientes de PDP-11 y no era adecuada para la migración. El primer puerto a otra plataforma se realizó cinco años después (1978) para Interdata 8/32 .

En 1974, Ken Robinson, del Departamento de Ciencias de la Computación de la Universidad de Nueva Gales del Sur (UNSW) en Australia, solicitó una copia de Unix para su minicomputadora PDP-11/40 a Dennis Ritchie en Bell Labs. Esta instalación de 1975 convirtió a la UNSW en la primera universidad fuera de los Estados Unidos en ejecutar Unix.

Bell Labs produjo varias versiones de Unix que se conocen colectivamente como Research Unix . En 1975, la primera licencia de fuente para UNIX se vendió a Donald B. Gillies en la Universidad de Illinois en Urbana-Champaign Departamento de Ciencias de la Computación (UIUC). El estudiante graduado de UIUC, Greg Chesson, que había trabajado en el kernel de Unix en Bell Labs, fue fundamental en la negociación de los términos de la licencia.

Durante finales de la década de 1970 y principios de la de 1980, la influencia de Unix en los círculos académicos condujo a la adopción a gran escala de Unix ( BSD y System V ) por parte de nuevas empresas comerciales, lo que a su vez llevó a Unix a fragmentarse en múltiples, similares pero a menudo ligeramente incompatibles entre sí. sistemas que incluyen DYNIX , HP-UX , SunOS / Solaris , AIX y Xenix . A finales de la década de 1980, AT&T Unix System Laboratories y Sun Microsystems desarrollaron System V Release 4 ( SVR4 ), que posteriormente fue adoptado por muchos proveedores comerciales de Unix.

En la década de 1990, los sistemas Unix y similares a Unix crecieron en popularidad y se convirtieron en el sistema operativo elegido por más del 90% de las 500 supercomputadoras más rápidas del mundo , ya que las distribuciones BSD y Linux se desarrollaron mediante la colaboración de una red mundial de programadores. En 2000, Apple lanzó Darwin , también un sistema Unix, que se convirtió en el núcleo del sistema operativo Mac OS X, más tarde rebautizado como macOS .

Los sistemas operativos Unix se utilizan ampliamente en servidores , estaciones de trabajo y dispositivos móviles modernos .

Estándares

A finales de la década de 1980, un esfuerzo de estandarización de sistemas operativos abiertos ahora conocido como POSIX proporcionó una línea de base común para todos los sistemas operativos; POSIX basado en IEEE en torno a la estructura común de las principales variantes competidoras del sistema Unix, publicando el primer estándar POSIX en 1988. A principios de la década de 1990, un consorcio de la industria inició un esfuerzo independiente pero muy similar, Common Open Software Environment (COSE ), que finalmente se convirtió en la Especificación Única de UNIX (SUS) administrada por The Open Group . A partir de 1998, Open Group e IEEE iniciaron Austin Group , para proporcionar una definición común de POSIX y la Especificación Única de UNIX, que, en 2008, se había convertido en la Especificación Base de Open Group.

En 1999, en un esfuerzo por lograr la compatibilidad, varios proveedores de sistemas Unix acordaron el formato ejecutable y enlazable (ELF) de SVR4 como estándar para archivos de código binario y objeto. El formato común permite una compatibilidad binaria sustancial entre diferentes sistemas Unix que operan en la misma arquitectura de CPU.

El estándar de jerarquía del sistema de archivos se creó para proporcionar un diseño de directorio de referencia para sistemas operativos similares a Unix; se ha utilizado principalmente en Linux.

Componentes

El sistema Unix está compuesto por varios componentes que originalmente fueron empaquetados juntos. Al incluir el entorno de desarrollo, las bibliotecas, los documentos y el código fuente portátil y modificable para todos estos componentes, además del núcleo de un sistema operativo, Unix era un sistema de software autónomo. Esta fue una de las razones clave por las que surgió como una importante herramienta de enseñanza y aprendizaje y ha tenido una influencia tan amplia.

La inclusión de estos componentes no hizo que el sistema fuera grande: la distribución original V7 UNIX, que constaba de copias de todos los binarios compilados más todo el código fuente y la documentación, ocupaba menos de 10 MB y llegaba en una sola cinta magnética de nueve pistas. . La documentación impresa, compuesta de fuentes en línea, estaba contenida en dos volúmenes.

Los nombres y las ubicaciones del sistema de archivos de los componentes de Unix han cambiado sustancialmente a lo largo de la historia del sistema. No obstante, muchos consideran que la implementación de V7 tiene la estructura inicial canónica:

  • Kernel  : código fuente en / usr / sys, compuesto por varios subcomponentes:
    • conf  : configuración y partes dependientes de la máquina, incluido el código de inicio
    • dev  : controladores de dispositivo para el control del hardware (y algunos pseudo-hardware)
    • sys  - "kernel" del sistema operativo, manejo de la administración de memoria, programación de procesos, llamadas al sistema, etc.
    • h  - archivos de encabezado, que definen estructuras clave dentro del sistema e importantes invariables específicos del sistema
  • Entorno de desarrollo  : las primeras versiones de Unix contenían un entorno de desarrollo suficiente para recrear todo el sistema a partir del código fuente:
    • cc  - compilador de lenguaje C (apareció por primera vez en V3 Unix)
    • como  : ensamblador de lenguaje de máquina para la máquina
    • ld  - enlazador, para combinar archivos de objeto
    • lib  : bibliotecas de código objeto (instaladas en / lib o / usr / lib). libc , la biblioteca del sistema con soporte en tiempo de ejecución de C, era la biblioteca principal, pero siempre ha habido bibliotecas adicionales para cosas como funciones matemáticas ( libm ) o acceso a la base de datos. V7 Unix introdujo la primera versión de la moderna biblioteca "E / S estándar" stdio como parte de la biblioteca del sistema. Las implementaciones posteriores aumentaron significativamente el número de bibliotecas.
    • make  - build manager (introducido en PWB / UNIX ), para automatizar eficazmente el proceso de construcción
    • incluir  : archivos de encabezado para el desarrollo de software, definición de interfaces estándar e invariantes del sistema
    • Otros lenguajes  : V7 Unix contenía un compilador Fortran-77, una calculadora programable de precisión arbitraria ( bc , dc ) y el lenguaje de programación awk ; las versiones e implementaciones posteriores contienen muchos otros compiladores de lenguajes y conjuntos de herramientas. Las primeras versiones de BSD incluían herramientas Pascal , y muchos sistemas Unix modernos también incluyen la Colección de compiladores GNU , así como o en lugar de un sistema de compilación propietario.
    • Otras herramientas  , incluido un administrador de archivos de código objeto ( ar ), una lista de tablas de símbolos ( nm ), herramientas de desarrollo de compiladores (por ejemplo, lex y yacc ) y herramientas de depuración.
  • Comandos  : Unix hace poca distinción entre comandos (programas a nivel de usuario) para la operación y mantenimiento del sistema (por ejemplo, cron ), comandos de utilidad general (por ejemplo, grep ) y aplicaciones más generales como el paquete de formato de texto y composición tipográfica. No obstante, algunas categorías principales son:
    • sh  : el intérprete de línea de comandos programable "shell", la interfaz de usuario principal en Unix antes de que aparecieran los sistemas de ventanas, e incluso después (dentro de una "ventana de comandos").
    • Utilidades  : el conjunto de herramientas principal del conjunto de comandos de Unix, que incluye cp , ls , grep , find y muchos otros. Las subcategorías incluyen:
      • Utilidades del sistema  : herramientas administrativas como mkfs , fsck y muchas otras.
      • Utilidades de usuario  : herramientas de gestión del entorno como passwd , kill y otras.
    • Formateo de documentos  : los sistemas Unix se utilizaron desde el principio para la preparación de documentos y los sistemas de composición tipográfica, e incluían muchos programas relacionados como nroff , troff , tbl , eqn , refer y pic . Algunos sistemas Unix modernos también incluyen paquetes como TeX y Ghostscript .
    • Gráficos  - la trama subsistema, a condición instalaciones para la producción de representaciones gráficas de vectores simples en un formato independiente del dispositivo, con intérpretes dispositivo específico para mostrar este tipo de archivos. Los sistemas Unix modernos también incluyen generalmente X11 como sistema de ventanas y GUI estándar , y muchos son compatibles con OpenGL .
    • Comunicaciones  : los primeros sistemas Unix no contenían comunicación entre sistemas, pero sí incluían los programas de comunicación entre usuarios por correo y escritura . V7 introdujo el primer sistema de comunicación entre sistemas UUCP , y los sistemas que comenzaron con la versión 4.1c de BSD incluían utilidades TCP / IP .
  • Documentación  : Unix fue el primer sistema operativo en incluir toda su documentación en línea en forma legible por máquina. La documentación incluía:
    • man  : páginas de manual para cada comando, componente de biblioteca, llamada al sistema , archivo de encabezado, etc.
    • doc  : documentos más extensos que detallan los principales subsistemas, como el lenguaje C y troff

Impacto

Ken Thompson y Dennis Ritchie , principales desarrolladores de Research Unix
Foto de USENIX 1984, incluido Dennis Ritchie (centro)
Plan 9 de Bell Labs amplía los principios de diseño de Unix y fue desarrollado como sucesor de Unix.

El sistema Unix tuvo un impacto significativo en otros sistemas operativos. Logró su reputación por su interactividad, al proporcionar el software a una tarifa nominal para uso educativo, al ejecutarse en hardware económico y al ser fácil de adaptar y mover a diferentes máquinas. Unix se escribió originalmente en lenguaje ensamblador , pero pronto se reescribió en C , un lenguaje de programación de alto nivel . Aunque esto siguió el ejemplo de Multics y Burroughs , fue Unix el que popularizó la idea.

Unix tenía un modelo de archivo drásticamente simplificado en comparación con muchos sistemas operativos contemporáneos: trataba todo tipo de archivos como simples matrices de bytes. La jerarquía del sistema de archivos contenía servicios y dispositivos de la máquina (como impresoras , terminales o unidades de disco ), proporcionando una interfaz uniforme, pero a expensas de requerir ocasionalmente mecanismos adicionales como ioctl y banderas de modo para acceder a funciones del hardware que no lo hicieron. se ajusta al modelo simple de "flujo de bytes". El sistema operativo Plan 9 impulsó este modelo aún más y eliminó la necesidad de mecanismos adicionales.

Unix también popularizó el sistema de archivos jerárquico con subdirectorios anidados arbitrariamente, originalmente introducido por Multics. Otros sistemas operativos comunes de la época tenían formas de dividir un dispositivo de almacenamiento en varios directorios o secciones, pero tenían un número fijo de niveles, a menudo solo un nivel. Varios de los principales sistemas operativos propietarios eventualmente agregaron capacidades de subdirectorio recursivo también siguiendo el patrón de Multics. La jerarquía de "grupo, usuario" de RSX-11M de DEC evolucionó a directorios OpenVMS , los volúmenes de CP / M evolucionaron a subdirectorios de MS-DOS 2.0+ y el grupo MPE de HP. La jerarquía de cuentas y los sistemas de bibliotecas SSP y OS / 400 de IBM se plegaron en sistemas de archivos POSIX más amplios.

Hacer del intérprete de comandos un programa de nivel de usuario ordinario, con comandos adicionales proporcionados como programas separados, fue otra innovación de Multics popularizada por Unix. El shell de Unix usaba el mismo lenguaje para los comandos interactivos que para las secuencias de comandos ( scripts de shell  : no había un lenguaje de control de trabajos separado como el JCL de IBM ). Dado que el shell y los comandos del sistema operativo eran "simplemente otro programa", el usuario podía elegir (o incluso escribir) su propio shell. Se pueden agregar nuevos comandos sin cambiar el shell en sí. La innovadora sintaxis de línea de comandos de Unix para crear cadenas modulares de procesos de productor-consumidor ( pipelines ) hizo que un poderoso paradigma de programación ( corrutinas ) estuviera ampliamente disponible. Muchos intérpretes de línea de comandos posteriores se han inspirado en el shell de Unix.

Un supuesto fundamental de la simplificación de Unix era su enfoque en la nueva línea - delimitada de texto para casi todos los formatos de archivo. No había editores "binarios" en la versión original de Unix; todo el sistema se configuró utilizando scripts de comandos de shell textuales. El denominador común en el sistema de E / S era el byte, a diferencia de los sistemas de archivos "basados ​​en registros" . El enfoque en el texto para representar casi todo hizo que las tuberías de Unix fueran especialmente útiles y alentó el desarrollo de herramientas generales simples que podrían combinarse fácilmente para realizar tareas ad hoc más complicadas . El enfoque en el texto y los bytes hizo que el sistema fuera mucho más escalable y portátil que otros sistemas. Con el tiempo, las aplicaciones basadas en texto también han demostrado ser populares en áreas de aplicación, como lenguajes de impresión ( PostScript , ODF ) y en la capa de aplicación de los protocolos de Internet , por ejemplo, FTP , SMTP , HTTP , SOAP y SIP .

Unix popularizó una sintaxis para expresiones regulares que encontró un uso generalizado. La interfaz de programación Unix se convirtió en la base de un estándar de interfaz de sistema operativo ampliamente implementado (POSIX, ver más arriba). El lenguaje de programación C pronto se extendió más allá de Unix y ahora es omnipresente en la programación de sistemas y aplicaciones.

Los primeros desarrolladores de Unix fueron importantes al llevar los conceptos de modularidad y reutilización a la práctica de la ingeniería de software , generando un movimiento de "herramientas de software". Con el tiempo, los principales desarrolladores de Unix (y los programas que se ejecutaban en él) establecieron un conjunto de normas culturales para desarrollar software, normas que se volvieron tan importantes e influyentes como la tecnología de Unix misma; esto se ha denominado filosofía Unix .

Los protocolos de red TCP / IP se implementaron rápidamente en las versiones de Unix ampliamente utilizadas en computadoras relativamente económicas, lo que contribuyó a la explosión de Internet de la conectividad en tiempo real en todo el mundo y formó la base para las implementaciones en muchas otras plataformas.

La política de Unix de extensa documentación en línea y (durante muchos años) acceso inmediato a todo el código fuente del sistema aumentó las expectativas de los programadores y contribuyó al lanzamiento del movimiento del software libre en 1983.

Variantes gratuitas de Unix y similares a Unix

Capturas de pantalla de la consola de Debian (arriba, una popular distribución de Linux ) y FreeBSD (abajo, un popular sistema operativo similar a Unix)

En 1983, Richard Stallman anunció el proyecto GNU (abreviatura de "GNU's Not Unix"), un ambicioso esfuerzo para crear un sistema de software libre similar a Unix ; "gratis" en el sentido de que todos los que recibieran una copia serían libres de usarla, estudiarla, modificarla y redistribuirla. El propio proyecto de desarrollo de kernel del proyecto GNU , GNU Hurd , aún no había producido un kernel funcional, pero en 1991 Linus Torvalds lanzó el kernel Linux como software libre bajo la Licencia Pública General GNU . Además de su uso en el sistema operativo GNU , muchos paquetes GNU, como GNU Compiler Collection (y el resto de la cadena de herramientas GNU ), la biblioteca GNU C y las utilidades principales de GNU  , han pasado a desempeñar papeles centrales en otros sistemas Unix gratuitos también.

Las distribuciones de Linux , que consisten en el kernel de Linux y grandes colecciones de software compatible, se han vuelto populares tanto entre los usuarios individuales como en las empresas. Las distribuciones populares incluyen Red Hat Enterprise Linux , Fedora , SUSE Linux Enterprise , openSUSE , Debian , Ubuntu , Linux Mint , Mandriva Linux , Slackware Linux , Arch Linux y Gentoo .

Un derivado libre de BSD Unix, 386BSD , fue lanzado en 1992 y condujo a los proyectos NetBSD y FreeBSD . Con el acuerdo de 1994 de una demanda entablada contra la Universidad de California y Berkeley Software Design Inc. ( USL v. BSDi ) por Unix System Laboratories , se aclaró que Berkeley tenía el derecho de distribuir BSD Unix de forma gratuita si así lo deseaba. Desde entonces, BSD Unix se ha desarrollado en varias ramas de productos diferentes, incluidas OpenBSD y DragonFly BSD .

Linux y BSD satisfacen cada vez más las necesidades del mercado tradicionalmente atendidas por los sistemas operativos propietarios de Unix, además de expandirse a nuevos mercados como el escritorio de consumo y los dispositivos móviles e integrados. Debido al diseño modular del modelo Unix, compartir componentes es relativamente común; en consecuencia, la mayoría o todos los sistemas Unix y similares a Unix incluyen al menos algo de código BSD, y algunos sistemas también incluyen utilidades GNU en sus distribuciones.

En una entrevista de 1999, Dennis Ritchie expresó su opinión de que los sistemas operativos Linux y BSD son una continuación de la base del diseño de Unix y son derivados de Unix:

Creo que el fenómeno de Linux es bastante agradable, porque se basa con tanta fuerza en la base que proporcionó Unix. Linux parece estar entre los más saludables de los derivados directos de Unix, aunque también existen varios sistemas BSD, así como las ofertas más oficiales de los fabricantes de estaciones de trabajo y mainframe.

En la misma entrevista, afirma que ve tanto a Unix como a Linux como "la continuación de las ideas que comenzamos Ken, yo y muchos otros, hace muchos años".

OpenSolaris era la contraparte de software libre de Solaris desarrollado por Sun Microsystems , que incluía un kernel con licencia CDDL y un área de usuario principalmente GNU . Sin embargo, Oracle interrumpió el proyecto tras la adquisición de Sun, lo que llevó a un grupo de ex empleados de Sun y miembros de la comunidad de OpenSolaris a bifurcar OpenSolaris en el kernel de illumos . A partir de 2014, illumos sigue siendo el único derivado activo de System V de código abierto.

ARPANET

En mayo de 1975, RFC 681 describió el desarrollo de Network Unix por el Centro de Computación Avanzada de la Universidad de Illinois Urbana-Champaign . Se dijo que el sistema Unix "presenta varias capacidades interesantes como mini-host de ARPANET ". En ese momento, Unix requería una licencia de Bell Telephone Laboratories que costaba 20.000 dólares para instituciones no universitarias, mientras que las universidades podían obtener una licencia por una tarifa nominal de 150 dólares. Se señaló que Bell estaba "abierto a sugerencias" para una licencia para todo ARPANET.

El RFC menciona específicamente que Unix "ofertas potentes instalaciones de procesamiento locales en términos de programas de usuario, varios compiladores , un editor basado en QED una manera eficiente, un sistema de preparación versátil documento y sistema de archivos que ofrece control de acceso sofisticado, montable y los volúmenes de-montables, y un tratamiento unificado de los periféricos como archivos especiales ". Este último permitió que el Programa de control de red (NCP) se integrara dentro del sistema de archivos de Unix, tratando las conexiones de red como archivos especiales a los que se podía acceder a través de llamadas de E / S estándar de Unix , que incluían el beneficio adicional de cerrar todas las conexiones al salir del programa, en caso de que el usuario no lo haga. El diseño modular de Unix les permitió "minimizar la cantidad de código agregado al kernel básico de Unix ", con gran parte del código NCP en un proceso de usuario intercambiable , ejecutándose solo cuando era necesario.

Marca

Estación de trabajo HP9000 con HP-UX , un sistema operativo Unix certificado

En octubre de 1993, Novell , la compañía que poseía los derechos de la fuente Unix System V en ese momento, transfirió las marcas comerciales de Unix a X / Open Company (ahora The Open Group ), y en 1995 vendió las operaciones comerciales relacionadas a Santa. Operación Cruz (SCO). Si Novell también vendió los derechos de autor del software real fue objeto de una demanda federal en 2006, SCO v. Novell , que ganó Novell. El caso fue apelado, pero el 30 de agosto de 2011, la Corte de Apelaciones del Décimo Circuito de los Estados Unidos ratificó las decisiones del juicio, cerrando el caso. El proveedor de Unix SCO Group Inc. acusó a Novell de difamación del título .

El actual propietario de la marca comercial UNIX es The Open Group, un consorcio de estándares de la industria. Sólo los sistemas totalmente compatibles y certificados con la Especificación Única de UNIX califican como "UNIX" (otros se denominan " similares a Unix ").

Por decreto de The Open Group, el término "UNIX" se refiere más a una clase de sistemas operativos que a una implementación específica de un sistema operativo; aquellos sistemas operativos que cumplan con la Especificación Única de UNIX de The Open Group deberían poder llevar las marcas comerciales UNIX 98 o UNIX 03 hoy, después de que el proveedor del sistema operativo pague una tarifa de certificación sustancial y regalías anuales de marca comercial a The Open Group. Los sistemas con licencia para utilizar la marca comercial UNIX incluyen AIX , EulerOS , HP-UX , Inspur K-UX , IRIX , macOS , Solaris , Tru64 UNIX (anteriormente "Digital UNIX" u OSF / 1 ) yz / OS . En particular, EulerOS e Inspur K-UX son distribuciones de Linux certificadas como compatibles con UNIX 03.

A veces, se utiliza una representación como Un * x , * NIX o * N? X para indicar todos los sistemas operativos similares a Unix. Esto proviene del uso del asterisco ( * ) y los caracteres de signo de interrogación como indicadores comodín en muchas utilidades. Esta notación también se usa para describir otros sistemas similares a Unix que no han cumplido con los requisitos para la marca UNIX del Open Group.

Open Group solicita que UNIX se use siempre como un adjetivo seguido de un término genérico como sistema para ayudar a evitar la creación de una marca comercial genérica .

Unix era el formato original, pero el uso de UNIX sigue siendo generalizado porque una vez se compuso en versalitas ( Unix ). De acuerdo con Dennis Ritchie , al presentar el documento original de Unix para el tercer Simposio de Sistemas Operativos de la American Association for Computing Machinery (ACM), "tuvimos una nueva máquina de componer y troff se acababa de inventar y que estaba intoxicado por ser capaz de producir pequeños tapas". Muchos de los predecesores y contemporáneos del sistema operativo usaban letras en mayúsculas, por lo que muchas personas escribieron el nombre en mayúsculas debido a la fuerza de la costumbre. No es un acrónimo.

Los nombres de marcas comerciales pueden ser registrados por diferentes entidades en diferentes países y las leyes de marcas registradas en algunos países permiten que el mismo nombre de marca sea controlado por dos entidades diferentes si cada entidad usa la marca en categorías fácilmente distinguibles. El resultado es que Unix se ha utilizado como marca para varios productos, incluidos estanterías, bolígrafos de tinta, pegamento embotellado, pañales, secadores de pelo y recipientes para alimentos.

Varias formas plurales de Unix se usan casualmente para referirse a múltiples marcas de Unix y sistemas similares a Unix. El más común es el convencional de Unix , pero Unix , el tratamiento de Unix como América sustantivo de la tercera declinación , también es popular. La forma plural pseudo -anglosajona Unixen no es común, aunque se ve ocasionalmente. Sun Microsystems , desarrollador de la variante de Solaris, ha afirmado que el término Unix es en sí mismo plural, haciendo referencia a sus muchas implementaciones.

Ver también

Referencias

Otras lecturas

General
Libros
Televisión
Negociaciones

enlaces externos