¿Cuáles son las diferencias entre POSIX, la especificación UNIX única y las especificaciones de base de grupo abierto ? Creo que su propósito es determinar si un sistema operativo es Unix?
¿Cuáles son las diferencias entre POSIX, la especificación UNIX única y las especificaciones de base de grupo abierto ? Creo que su propósito es determinar si un sistema operativo es Unix?
Respuestas:
Una "diferencia" importante es el grupo de opciones XSI (XOPEN), que especifica una serie de interfaces Unix tradicionales que es poco probable que sean aplicables a un nuevo sistema operativo que no sea "Unix". A menudo, las personas usarán "SUS" para referirse al estándar completo, incluida la opción XSI, y "POSIX" para referirse al estándar base y posiblemente a los grupos de opciones no centrados en Unix.
Las versiones sucesivas de SUS parecen estar desaprobando gradualmente partes de la opción XSI que no fueron realmente útiles para escribir aplicaciones portátiles y que, en cambio, solo reflejaron implementaciones heredadas y movieron algunas de las partes más útiles al estándar base.
unistd.h
lecturas: "El encabezado <unistd.h> definirá la siguiente constante simbólica solo si la implementación admite la opción XSI; consulte Conformidad XSI. Si se define, su valor será adecuado para su uso en #if directivas de preprocesamiento. _XOPEN_VERSION "
Hoy, POSIX y SUS son básicamente lo mismo; SUS abarca un poco más .
Citando aquí :
A partir de 1998, un grupo de trabajo conjunto conocido como Austin Group comenzó a desarrollar el estándar combinado que se conocería como Single UNIX Specification Version 3 y POSIX: 2001 (formalmente: IEEE Std 1003.1-2001). Fue lanzado el 30 de enero de 2002.
y
En diciembre de 2008, el Grupo Austin publicó una nueva revisión importante, conocida como POSIX: 2008 (formalmente: IEEE Std 1003.1-2008). Este es el núcleo de la especificación Single UNIX, Versión 4
Mirando la parte superior de las Especificaciones de base de grupo abierto , verá el identificador estándar IEEE Std 1003.1-2008. IEEE Std 1003.1 es lo que se conoce como POSIX.1, siendo 2008 la última encarnación. Al mirar POSIX en Wikipedia, verá que el estándar contiene tres partes que incluyen:
Básicamente, POSIX es solo el nombre del estándar desarrollado por IEEE con la versión inicial realizada en 1988. POSIX no es UNIX ™ oficialmente simplemente porque IEEE no posee la marca registrada, sino que es el entorno del sistema operativo y la interfaz que se encuentra en UNIX ™ sistemas. Más tarde, The Open Group, que controla la marca registrada UNIX ™, se involucró en la creación de un estándar basado en POSIX llamado Single UNIX Specification versión 2 o SUSv2. Ahora estas dos especificaciones se desarrollan conjuntamente como The Austin Group. La última versión es SUSv4. Así que para resumir:
POSIX: 2008 = IEEE Std. 1003.1-2008 = SUSv4 = El problema de especificación de grupo abierto 7.
Además, lea mi respuesta a ¿Qué es exactamente POSIX?