类Unix系统(英语:Unix-like;经常被称为UN*X或*nix)指各种Unix的派生系统,比如FreeBSD、OpenBSD、SUN的Solaris,以及各种与传统Unix类似的系统,例如Minix、Linux、QNX等。它们虽然有的是自由软件,有的是私有软件,但都相当程度地继承了原始UNIX的特性,有许多相似处,并且都在一定程度上遵守POSIX规范。[1][2]
UNIX的商标权由国际开放标准组织所拥有,只有符合单一UNIX规范的UNIX系统才能使用UNIX这个名称,否则只能称为类UNIX(UNIX-like)。
历史
类Unix系统于20世纪七十年代末八十年代初出现。许多旨在为商业用户提供学术用户可用的功能的闭源Unix在此时出现,如Idris(1978)、UNOS(1982)、Conherent(1983)以及UniFlex(1985)。
当AT&T于1979年允许以相对便宜的价格对Unix进行商业二进制分许可时,出现了许多基于此的闭源系统,包括AIX、HP-UX、IRIX、SunOS、Tru64、Ultrix以及Xenix。这些系统在很大程度上取代了私有副本。这些系统间日益增长的不兼容性导致了包括POSIX和单一Unix标准在内的互操作性标准出现
20世纪80-90年代出现了各种自由、低成本和不受限的Unix替代品,包括4.4BSD、Linux以及MINIX。其中一些有成为商业"类Unix"系统的基础,如BSD与MacOS。在Intel Mac上运行的多个(Mac) OS X / Mac OS已通过单一Unix标准的认证。BSD是由加州大学伯克利分校使用贝尔实验室的Unix源码开发的Unix后代,然而BSD代码从那时起经过演变已经取代了所有AT&T代码。由于BSD变体没有被证明符合单一Unix标准[3][4][5][6][7][8][9],因此这些变体被成为"类Unix"而不是"Unix"。[10][11]
-
数种“类UNIX操作系统”的相互关系图
-
Simplified history of Unix-like operating systems
分类和例子
- Agnix(教育用)
- 386BSD及其子类(BSD系统):
- FreeBSD及其子类:
- ClosedBSD
- Apple Darwin
- DragonFly BSD
- GNU/kFreeBSD
- PC-BSD
- NetBSD及其子类:
- GNU/kNetBSD
- OpenBSD及其子类:
- ekkoBSD
- MicroBSD
- MirOS BSD
- FreeBSD及其子类:
- GNU
- GNU Hurd
- GNU/kFreeBSD
- GNU/kNetBSD
- GNU/OpenSolaris
- Linux(又称GNU/Linux)
- LUnix
- MINIX及其子类:
- Minix-vmd
- MINIX 3
- OpenSolaris - 建基于System V
- Phoenix-RTOS
- 九号计划:Unix的后继者,采用UNIX设计与哲学,但更一致地套用至整个分布式系统,功能上并不完全相同。
- Syllable:99% POSIX依从
- VSTa:大致POSIX依从
- Maemo:诺基亚的开源系统
- IBM AIX* - 建基于System V Release 3
- HP HP-UX*
- SGI IRIX*
- Apple macOS - 建基于Apple Darwin (自 10.5 开始符合单一UNIX规范)
- Apple iOS - 建基于Apple Darwin
- LynxOS RTOS
- QNX - 全部重写,没有UNIX相关的代码
- SkyOS - 大致POSIX依从
- Sun
- Compaq Tru64* - 建基于OSF/1
- Microsoft Xenix
- VxWorks
- Google Android [为何?]
- * UNIX® branded systems
参考文献
参见
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.