案例库 · 软件与 IT · 技术决策 · 1988–2017
这条还没译成中文,下面是英文原文。
POSIX won by standardizing the C interface so one program ran on any Unix
The IEEE/Open Group POSIX.1 standard defined the C API and commands an OS must provide, so apps could be written once and port anywhere.
IEEE · The Open Group · X/Open
那一手
In the 1980s every Unix variant had its own system calls, so porting a program meant rewriting it.
IEEE and The Open Group wrote POSIX.1 (IEEE Std 1003.1) to define one portable operating-system interface.
It specifies the C library, headers, shell and commands a conforming OS must provide, so a program written to it runs on any conforming system.
Because it defines an interface rather than an implementation, it won both by unifying apps and by letting vendors keep their distinct internals.
为什么管用
- The stated goal of POSIX.1 was portability across UNIX environments.
- It standardizes the interface, not the kernel, so vendors are free inside.
- It set a common API for C programs and a common shell and utilities.
- It was jointly published by IEEE and The Open Group, giving it authority.
可以搬走什么
To make software portable, standardize the boundary between app and platform; you gain portability without forcing one internal design.
后来呢
POSIX became IEEE 1003.1, ISO/IEC 9945 and an Open Group Standard, and the single-specification approach shaped Linux, macOS and most modern Unix-like systems.
资料来源
发现哪里写错了?告诉我们。