ALEGSA.com.ar

Definición de Unix

Significado de Unix: Unix es un Sistema operativo multiplataforma, multitarea y multiusuario desarrollado originalmente por empleados de Bell de AT&T. Actualmente UNIX puede ...
01-08-2023

 


Definición de Unix

 

Unix es un Sistema operativo multiplataforma, multitarea y multiusuario desarrollado originalmente por empleados de Bell de AT&T.

Actualmente UNIX puede referirse a:

* Familia UNIX: grupo genérico de sistemas operativos que comparten determinados criterios en su diseño y por lo tanto son llamados de la familia (o tipo) UNIX. Son más de 100 sistemas operativos que se consideran de su familia.

* Sistema operativo UNIX: subfamilia de sistemas operativos que descienden de la primera versión creada por Bell. Esto significa que comparten códigos y propiedad intelectual.

* Marca UNIX: Unix como marca es propiedad de "The Open Group", organización de estandarización que permite el uso de dicha marca a cualquier sistema operativo que cumpla con sus estándares. Esto es independiente de si el sistema operativo en cuestión es de la familia UNIX o descendiente del original.


Introducción



Unix (oficialmente registrado como UNIX®) es un sistema operativo informático concebido y desarrollado originalmente por un grupo de investigadores como un proyecto no oficial mientras trabajaban en los Laboratorios Bell de AT&T. Uno de los aspectos más notables de Unix es el hecho de que, debido a un decreto de consentimiento del gobierno de los Estados Unidos, el sistema operativo no podía ser oficialmente un producto desarrollado y vendido por AT&T debido a su condición de "monopolio gestionado".

El éxito y la popularidad de Unix son el resultado de varios factores, incluyendo la apertura de su desarrollo y el hecho de que se permitió su estudio en las universidades por parte de estudiantes y profesores por igual. Unix y su código fuente se copiaron y estudiaron en las universidades libremente, y en ese momento su desarrollo fue bastante abierto en comparación con otros sistemas operativos comerciales de la época. Esto contrasta con el modelo de desarrollo común en la década de 1970, en el que el software propietario desarrollado por las empresas estaba estrechamente vigilado, y no se había arraigado nada parecido al movimiento de código abierto.

La implementación de Unix ha influido en el diseño posterior tanto de los muchos sistemas operativos que le siguieron como de muchos estudiantes universitarios que lo han estudiado. El deseo de mayor portabilidad en los sistemas operativos inspirados por Unix también llevó al co-desarrollo por parte de Dennis Ritchie del omnipresente lenguaje de programación C. Unix fue portado del lenguaje de máquina de bajo nivel PDP-7 (un sistema informático popular en los años 60) al C para facilitar la portabilidad a diferentes arquitecturas de hardware. Si se creaba un compilador de C en otra plataforma de hardware, la compilación de Unix en esa plataforma sería más fácil porque Unix estaría escrito en C.

La "naturaleza abierta" del desarrollo de Unix tuvo un profundo impacto en Unix y sus descendientes, especialmente en los últimos años, cuando AT&T decidió intentar hacerse cargo de él. Muchos desarrolladores se asustaron por los procedimientos legales que AT&T inició y se embarcaron en otros sistemas operativos que no estaban comprometidos, en particular el proyecto GNU y Linux. Estas cuestiones legales se han resuelto desde entonces, y hoy en día hay muchas versiones populares de los descendientes de Unix, entre las que destacan Solaris 10 de Sun Microsystem (que recientemente se ha convertido en código abierto) y las variantes de BSD.


Similitudes comunes de Unix



Entre la diversa gama de diferentes variaciones de Unix, hay similitudes generales que uno puede esperar ver consistentemente entre las diferentes versiones. Aquí se enumeran varios de los "rasgos comunes" de Unix en general.


La filosofía de Unix



Aunque hay una gran variedad entre los sistemas Unix, un tema común son las llamadas "pequeñas herramientas que hacen muy bien su trabajo". Es decir, un sistema Unix tiene muchos programas, cada uno de los cuales se especializa en una pequeña tarea. El usuario puede combinar estas herramientas (a través de scripts o tuberías) para lograr objetivos de mayor nivel. Aunque esto puede hacer que algunas tareas sean más difíciles que las interfaces gráficas de usuario comunes, permite al usuario realizar tareas complicadas que no fueron explícitamente permitidas por el diseñador de la interfaz.

Por ejemplo, supongamos que el usuario quisiera crear un archivo de todos los archivos que hacen referencia a sus vacaciones creados entre dos y tres meses atrás. En el caso de Unix, esto podría realizarse como una combinación de tar (la aplicación de archivo), find (una aplicación de búsqueda de archivos) y grep (una aplicación de coincidencia de patrones de archivos). En un solo comando:

tar czf vacation.tar.gz `find . -ctime +60 -ctime -90 -exec grep -il vacation {} \;`

Por el contrario, un usuario en una típica interfaz gráfica de usuario necesitaría utilizar la aplicación de búsqueda para encontrar tales archivos, esperar a que la búsqueda se complete, y luego utilizar una aplicación de archivo para crear el archivo.

El comando 'pipe' toma el retorno de un comando y lo entrega a otro.


ps aux | grep "firefox"

ejecutará el comando 'ps' y ejecutará la respuesta a través del comando 'grep' buscando cualquier línea que coincida con la búsqueda "firefox".


Todo es un archivo



En Unix todo lo relacionado con el sistema se representa como un archivo. Se utilizan "archivos de dispositivos de caracteres" especiales para representar todo, desde la memoria, a los dispositivos conectados como ratones y teclados, hasta el "cubo de bits". Incluso los datos aleatorios necesarios para el cifrado pueden extraerse de /dev/aleatorio o /dev/aleatorio (archivos cuyo propósito es simplemente producir datos aleatorios). También las estadísticas del sistema se representan en un sistema de archivos virtual especial llamado /proc. Por ejemplo, al mostrar el contenido (utilizando el comando 'cat') de /dev/ratón se generaría una entrada en la pantalla al mover el ratón, y los datos específicos del procesador en uso pueden encontrarse en el archivo /proc/cpuinfo. Esta filosofía de diseño fue llevada a otro nivel por otro sistema operativo implementado por los diseñadores de Unix, el Plan 9. En el Plan 9, cada máquina en la red está representada por archivos, y son accesibles remotamente.


Estructura de los archivos



Uno de los aspectos más influyentes de los sistemas UNIX y similares es su estructura jerárquica de archivos. Los archivos se organizan en directorios, cada uno de los cuales contiene más directorios y archivos en una estructura de ramificación, con el carácter de barra oblicua "/" utilizado para marcar los nodos de directorio. Cada directorio y fichero en UNIX también posee una cadena de permisos, con nueve interruptores que pueden configurarse para permitir los permisos (r)ead, (w)rite y e(x)ecute para (u)ser, (g)roup y (otros). Un comando de lista (ls -l) podría, por ejemplo, devolver la cadena

drwxr-xr-x 6 jsmith jsmith 204 Nov 4 11:12 nombre de director que indica que el nodo es un directorio, marcado para permiso de lectura, escritura y ejecución para su usuario, y lectura y ejecución sólo para el grupo de su usuario, y otros.

Esta combinación de estructura jerárquica y ajustes de permisos permite una estructura de permisos flexible, que también se ha incluido en la familia POSIX de estándares Unix.

Los grupos de usuarios pueden configurarse para permitir diferentes niveles de acceso a través de una rama, o de todo el árbol, con una dificultad mínima. El superusuario conocido como "root" en UNIX tiene acceso automáticamente a todos los archivos y directorios.

La integración de las listas de control de acceso, que representan una evolución en los permisos del sistema de archivos y permiten un control más granular de los permisos, se implementó por primera vez en el sistema operativo Solaris de Sun. También se están llevando a cabo proyectos en varias variaciones de Unix, como Linux y FreeBSD.


POSIX



POSIX es una Interfaz de Programación de Aplicaciones (o API) estándar definida por el IEEE. POSIX se considera hoy en día como un "punto de referencia de Unix". Los productos que apuntan a la conformidad con Unix pueden obtener la certificación POSIX si cumplen los requisitos del estándar POSIX.


Cultura de Unix



Como muchos de los mejores programadores e ingenieros han trabajado en Unix y el software que se ejecuta en él, gran parte del sistema operativo contiene un sabor o cultura distintiva que refleja a aquellos que utilizan y han ayudado a construir Unix - tanto dentro de AT&T, dentro de los vendedores comerciales, en las universidades y departamentos de investigación y ahora en Internet y a través del software de código abierto. También ha trascendido paradigmas: funciona con todo lo que se utilizaba en las computadoras centrales de la era de los años sesenta, sistemas de tiempo compartido, minicomputadoras, microcomputadoras, computadoras personales, computadoras portátiles e incluso dispositivos incorporados como teléfonos celulares, decodificadores y enrutadores. El libro de Eric S. Raymond The Art of Unix Programming (El arte de la programación en Unix) enumera los siguientes elementos como los fundamentos de la filosofía de Unix (inspirándose en los escritos de Doug McIlroy, Rob Pike, Ken Thompson):

- Regla de Modularidad: "Escribir partes simples conectadas por interfaces limpias".
- Regla de claridad: "La claridad es mejor que la inteligencia".
- Regla de composición: "Diseñar programas para ser conectados con otros programas".
- Regla de separación: "Separar la política del mecanismo; separar las interfaces de los motores".
- Regla de Simplicidad: "Diseña para la simplicidad; añade complejidad sólo donde debas hacerlo".
- Regla de Parsimonia: "Escribir un gran programa sólo cuando esté claro por demostración que nada más servirá."
- Regla de Transparencia: "Diseñe para la visibilidad para hacer la inspección y la depuración más fácil."
- Regla de Robustez: "La robustez es hija de la transparencia y la simplicidad".
- Regla de la representación: "Doblar el conocimiento en datos, para que la lógica del programa pueda ser estúpida y robusta".
- Regla de la mínima sorpresa: "En el diseño de la interfaz, haz siempre la cosa menos sorprendente".
- Regla del silencio: "Cuando un programa no tiene nada sorprendente que decir, no debe decir nada".
- Regla de reparación: "Repara lo que puedas, pero cuando debas fallar, hazlo ruidosamente y lo antes posible".
- Regla de Economía: "El tiempo del programador es caro; consérvalo en lugar del tiempo de la máquina".
- Regla de la generación: "Evita el hackeo de manos; escribe programas para escribir programas cuando puedas."
- Regla de Optimización: "Prototipo antes de pulir. Hazlo funcionar antes de optimizarlo".
- Regla de la Diversidad: "Desconfía de todas las afirmaciones de un camino verdadero".
- Regla de Extensibilidad: "Diseña para el futuro, porque estará aquí antes de lo que piensas".


Unix hoy



Hoy en día, Unix tiene un fondo diverso y variado, y varios sistemas se dividen en ramas de desarrollo, modificadas a lo largo del tiempo por AT&T, así como por varios vendedores comerciales y organizaciones sin fines de lucro (algunos de ellos se inspiran e influyen lo suficiente en Unix como para que se les denomine "tipo Unix").

A continuación se presenta una lista rápida de los sistemas operativos modernos mantenidos que tienen un patrimonio Unix o están certificados como Unix (en orden alfabético):

- Los BSD: FreeBSD / OpenBSD / NetBSD / Dragonfly BSD
- Linux
- Mac OS X



Propietario de los derechos de autor



El actual propietario de la marca UNIX® es The Open Group, un consorcio de estándares industriales. Sólo los sistemas totalmente conformes y certificados con la especificación única UNIX (SUS) se califican como "UNIX®" (los demás se denominan "sistema similar a Unix" o "similar a Unix"). Del mismo modo, POSIX define un conjunto estándar de llamadas de sistema, utilidades y funciones de biblioteca estándar para sistemas de tipo Unix.

El desarrollo de Unix comenzó en los laboratorios Bell de AT&T a finales de los años 60. El equipo de desarrolladores originalmente trabajaba en un sistema operativo llamado Multics, pero decidieron crear uno nuevo debido a las limitaciones del Multics. El objetivo era construir un sistema operativo que fuera eficiente y flexible, y que pudiera ejecutarse en diferentes tipos de hardware.


Características distintivas de Unix



Una de las características distintivas de Unix es su diseño modular, que permite que diferentes componentes del sistema operativo sean desarrollados e implementados de forma independiente. Esto ha facilitado la portabilidad del sistema a diferentes arquitecturas de hardware y ha permitido a los usuarios adaptar el sistema a sus necesidades específicas.

A medida que Unix fue evolucionando, se crearon diferentes versiones del sistema operativo. Algunas de las variantes más conocidas son FreeBSD, OpenBSD, NetBSD y Dragonfly BSD, que forman parte de la familia de sistemas operativos BSD. Otra variante popular es Linux, que es un sistema operativo de código abierto basado en Unix.

Unix ha tenido una gran influencia en el desarrollo de otros sistemas operativos. Por ejemplo, el sistema operativo Mac OS X de Apple se basa en una versión modificada de Unix llamada Darwin. Además, muchas de las características y técnicas de programación utilizadas en Unix también se han aplicado en otros sistemas operativos, como Windows.

En conclusión, Unix es un sistema operativo multiplataforma, multitarea y multiusuario que fue desarrollado por empleados de Bell de AT&T. Ha tenido una enorme influencia en el desarrollo de otros sistemas operativos y ha sido adaptado para funcionar en una amplia variedad de hardware. Aunque existen muchas variantes de Unix, todas comparten una filosofía de diseño modular y una serie de características comunes, como la representación de todo como un archivo y la estructura jerárquica de archivos.


Resumen: Unix



Unix es un sistema operativo multiplataforma, multitarea y multiusuario desarrollado originalmente por empleados de Bell de AT&T. Existen diferentes sistemas operativos que pertenecen a la familia Unix y comparten su diseño. Unix también es una marca registrada propiedad de The Open Group, que certifica cualquier sistema operativo que cumpla con sus estándares como "Unix". Unix se caracteriza por su filosofía de tener herramientas pequeñas y especializadas que pueden combinarse para lograr tareas más complejas. Además, Unix trata todo como un archivo y tiene una estructura jerárquica de archivos. Unix ha influido en muchos sistemas operativos posteriores y sigue siendo utilizado en sistemas como BSD, Linux y Mac OS X. The Open Group es el propietario actual de los derechos de autor de Unix.




¿Qué significa que Unix sea un sistema operativo multiplataforma?



Unix es considerado multiplataforma porque puede funcionar en diferentes tipos de hardware, como computadoras personales, servidores y sistemas embebidos. Esto significa que un programa escrito para Unix puede ejecutarse en diferentes dispositivos sin necesidad de modificaciones adicionales.


¿Cuáles son las ventajas de un sistema multitarea como Unix?



Una de las ventajas clave de Unix como sistema multitarea es su capacidad para ejecutar múltiples procesos simultáneamente. Esto permite que varios usuarios realicen diferentes tareas al mismo tiempo sin afectar el rendimiento del sistema. Además, Unix también es conocido por su estabilidad y confiabilidad en el manejo de múltiples tareas.


¿Qué implica que Unix sea un sistema multiusuario?



Unix permite a múltiples usuarios acceder y utilizar el sistema al mismo tiempo. Cada usuario tiene su propia cuenta y privilegios de acceso, lo que garantiza la seguridad y la privacidad de los datos. Esto es especialmente beneficioso en entornos empresariales y compartidos, donde múltiples personas necesitan acceder a los recursos del sistema al mismo tiempo.


¿Cómo se originó Unix y quiénes fueron los creadores?



Unix fue originalmente desarrollado por empleados de Bell Labs de AT&T en la década de 1970. Ken Thompson y Dennis Ritchie son ampliamente reconocidos como los creadores de Unix. Su objetivo era desarrollar un sistema operativo simple pero poderoso que pudiera ejecutarse en diferentes tipos de hardware.


¿Qué compañía es responsable del desarrollo y mantenimiento de Unix en la actualidad?



Originalmente, AT&T era responsable del desarrollo y mantenimiento de Unix. Sin embargo, después de una serie de escisiones y adquisiciones, actualmente Unix es desarrollado y mantenido principalmente por The Open Group, una organización internacional de estándares de computación.


¿Cuáles son algunas distribuciones populares de Unix?



Hay varias distribuciones populares de Unix disponibles, siendo las más conocidas FreeBSD, OpenBSD, NetBSD, Solaris, HP-UX y AIX. Cada distribución tiene sus propias características y enfoques, pero todas se basan en el diseño y los principios fundamentales de Unix.





Autor: Leandro Alegsa
Actualizado: 01-08-2023

¿Cómo citar este artículo?

Alegsa, Leandro. (2023). Definición de Unix. Recuperado de https://www.alegsa.com.ar/Dic/unix.php

Diccionario informático



 


articulos
Asistente IA
Escribe tu consulta sobre informática y tecnologías al asistente de Inteligencia Artificial
¡te responderá en segundos!




* ACLARACIÓN: el asistente ha sido entrenado para responder tus dudas con muy buenos resultados, pero puede equivocarse, esta tecnología aún está en desarrollo. Te sugiero dejar tu email para que te contactemos para corregir la respuesta de la IA: leemos todas las consultas y respuestas.


Comentarios relacionados

  • Opciones del comando date en Unix y Linux: ejemplos de su uso

    El comando `date` se utiliza en sistemas operativos Unix y Linux para mostrar y establecer la fecha y hora del sistema. A continuación se presentan algunas opciones comunes para el comando `date` ...

    Continúe leyendo la respuesta aquí: Opciones del comando date en Unix y Linux: ejemplos de su uso
  • ¿Cuál es la razón principal por la que UNIX no tiene una interfaz gráfica de usuario predeterminada?

    La razón principal por la que Unix no tiene una interfaz gráfica de usuario (GUI) predeterminada es porque Unix fue diseñado originalmente como un sistema operativo basado en texto, orientado a la línea de comandos. En su inicio, Unix se utilizaba principalmente en entornos de servidores y mainframes, donde una GUI no era esencial.

    A diferencia de sistemas operativos como Windows o Mac OS, que se desarrollaron con una GUI desde el principio, Unix se centró en la eficiencia, la flexibilidad y la capacidad de personalización a través de comandos de texto. Esto permitió a los usuarios trabajar en entornos más técnicos y realizar tareas avanzadas de programación y administración del sistema.

    Sin embargo, a lo largo del tiempo, se han desarrollado interfaces gráficas para Unix, como X Window System y entornos de escritorio como GNOME y KDE, que proporcionan una experiencia similar a la de otros sistemas operativos modernos. Aunque estas opciones gráficas están disponibles para los usuarios de Unix, no están preinstaladas en todas las distribuciones y deben ser instaladas por separado si se desea utilizar una GUI.
Usa nuestro buscador para definiciones, informática y tecnologías