Home

posix

The POSIX(Portable Operating System Interface) standard  defines interfaces for a Unix-like operating system. Unix was the first operating system written by programmers for programmers, and POSIX enables developers to write portable applications that run on different Unix operating system variants and instruction set architectures.

The primary use case for Unix was to multiplex storage (the filesystem) and provide an interactive environment for humans (the shell)

As we move towards the post Moore’s Law era of computing, system designers are starting to leverage devices such as fast programmable NICs, special-purpose hardware accelerators, and non-volatile main memory to address the stringent latency constraints of applications.

space-1.jpg

Today, the speed balance between I/O and compute is shifting in favor of I/O, which is partly why coprocessors and special-purpose accelerators are becoming more mainstream. Therefore, we argue that the POSIX era is over, and future designs need to transcend POSIX and re-think the abstractions and interfaces at a higher level. We also argue that the operating system interface has to change to support these higher level abstractions.

Reference: https://www.usenix.org/publications/loginonline/transcending-posix-end-era