La interfaz del sistema operativo portátil (POSIX) es un estándar IEEE que ayuda a la compatibilidad y la portabilidad entre los sistemas operativos. Teóricamente, el código fuente compatible con Posix debe ser sin problemas portátil. En el mundo real, la transición de la aplicación a menudo se ejecuta en problemas específicos del sistema. Pero el cumplimiento de Posix hace que sea más simple para las aplicaciones portuarias que pueden dar lugar a un ahorro de tiempo. Por lo tanto, los desarrolladores deben familiarizarse con los fundamentos de este estándar ampliamente utilizado.
Historia de Posix
Los primeros programadores tuvieron que reescribir sus aplicaciones desde cero para cada nuevo modelo de computadora. Pero el sistema IBM/360 cambió eso. En 1964, introdujo el sistema operativo OS/360. IBM comenzó a usar la misma arquitectura de hardware para permitir que los nuevos modelos reutilicen el mismo sistema operativo. La presencia de un sistema operativo común en múltiples máquinas establece la primera etapa para la portabilidad de la aplicación.
A fines de la década de 1960, la llegada de Unix abrió nuevas posibilidades. Bell Labs de AT&T fue responsable del desarrollo inicial de este nuevo sistema operativo. Podría correr a través de máquinas de múltiples proveedores. Pero Unix comenzó a desembolsar en varios sabores. Además del Sistema V de AT&T, había Berkeley Software Distribution (BSD), Xenix y más. No fue fácil portar a través de estos sabores. La promesa de la portabilidad de la aplicación llegó a un golpe de carretera. En las próximas décadas, la introducción de nuevos sistemas operativos solo haría que sea más complejo de aplicaciones portuarias en hardware, sistemas operativos y proveedores.
Posix Standard se desarrolló en la década de 1980 para resolver el problema de portabilidad. El estándar se definió en función del sistema V y BSD Unix. POSIX no define el sistema operativo, solo define la interfaz entre una aplicación y un sistema operativo. Los programadores tienen la libertad de escribir su sistema operativo y su aplicación de todos modos, de todos modos, siempre que se honre la interfaz entre los dos. Debido a que Posix es independiente del hardware, el sistema operativo o el proveedor, es más fácil lograr la portabilidad de la aplicación.
El primer estándar Posix fue lanzado en 1988. Formalmente, se llamaba IEEE Standard 1003.1-1988 Interfaz del sistema operativo portátil para entornos informáticos ”. En 1990, se lanzó una versión internacional del mismo estándar con ligeras variaciones como ISO/IEC 9945-1: 1990 Tecnología de la información - Interfaz del sistema operativo portátil (POSIX) - Parte 1: Interfaz del programa de aplicaciones del sistema (API).
Inicialmente, Posix se dividió en múltiples estándares:
Posix.1: Servicios principales
Posix.1b: Extensiones en tiempo real
Posix.1C: Extensiones de hilos
Posix.2: Shell and Utities
Después de 1997, el grupo Austin trajo todo el estándar bajo un solo paraguas. Desde entonces, las versiones Posix.1-2001 (también conocido como IEEE STD 1003.1-2001), Posix.1-2004 (también conocido como IEEE STD 1003.1-2004) y Posix.1-2008 (también conocido como IEEE STD 1003.1-2008) han sido lanzados.
Ejemplos de algunos sistemas compatibles con POSIX son AIX, HP-UX, Solaris y MacOS (desde 10.5 Leopardo). Por otro lado, Android, FreeBSD, Distribuciones de Linux, OpenBSD, VMware, etc., Siga la mayor parte del estándar POSIX, pero no están certificados.
Conceptos básicos de Posix
Posix.1-2008 se trata de cuatro áreas principales:
El estándar no cubre interfaces gráficas, interfaces de bases de datos, portabilidad de objeto/código binario, configuraciones del sistema, consideraciones de E/S o disponibilidad de recursos.
Algunos de los principios rectores detrás de Posix Design son:
Desarrollo de aplicaciones POSIX
El propósito de Posix era mejorar la portabilidad. Cuando su código fuente sigue el estándar, puede compilar y ejecutar el código en una máquina diferente fácilmente. Sin embargo, si POSIX se define como un requisito general para una aplicación, puede causar confusión. El estándar POSIX completo es de más de 4000 páginas con más de 1350 interfaces. No tiene sentido implementar todo. Por lo tanto, cada proyecto debe definir los aspectos de POSIX que cumplirán con requisitos particulares.
Hay conceptos erróneos en la comunidad de desarrollo de que Posix Standard es antiguo e irrelevante. No es cierto. Posix es un documento vivo que está siendo actualizado regularmente por el grupo Austin. Cualquiera puede unirse al grupo y participar en la mejora del estándar. El estándar se usa activamente en los servidores, estaciones de trabajo, enrutadores, dispositivos móviles, sistemas de integración y más. Se usa para máquinas UNIX y Linux.
Sin embargo, los desarrolladores deben ser conscientes de que Posix Standard tiene problemas. Puede informar cualquier error que descubra al grupo Austin y se analizará para la próxima revisión.
Conclusión
Posix puede parecer desalentador al principio. Aún así, los desarrolladores de aplicaciones deben familiarizarse con los conceptos básicos, ya que aparecerá como un requisito de vez en cuando. Debido al gran alcance del estándar, no es posible convertirse en un experto en el documento completo. Los desarrolladores pueden comunicarse con las comunidades de Unix y Linux para aprender más. Las comunidades pueden responder a sus preguntas y darle una mejor idea de qué parte del estándar será relevante para su proyecto.
Estudio adicional: