主要的 Unix流派 Unix 有两大流派:那就是 AT&T 的 System V与 BSD (Berkeley Software Distribution)。SVR4 是两大流派融合后的产物。1991年底,与 System V 针锋相对的 Open Software Foundation 推出了 OSF/1。
以下是 System V、BSD、OSF/1 的主要版本以及特色。
AT&T 的 System V,Intel系列的机器多半使用此系列,是移植版本最多的Unix,当然在移植时都会加入一些由 BSD 发展的有用功能,例如 csh、job control、 termcap、curses、vi、symbolic link。
System V的主要版本:
◆ System III (1982):AT&T 第一个拿来卖钱的Unix ˙FIFOs (named pipes)
◆ System V (1983): ˙IPC package (shm,msg,sem)
◆ SVR2 (1984): ˙shell 函数 (sh) ˙SVID (System V Interface Definition)
◆ SVR3 (1986): ˙STREAMS (从 V8 得来的灵感),poll(),TLI (网络软件) ˙RFS ˙共享链接库(shared libs) ˙SVID 2 ˙demand paging (如果硬件有支持的话)
◆ SVR3.2: ˙并入 Xenix (Intel 80386) ˙网络
◆ SVR4 (1988),融合了System V、BSD、SunOS是各种Unix中的主流 ˙取自SVR3者:系统管理,terminal 接口,打印机,RFS,STREAMS,uucp ˙取自BSD者:FFS,TCP/IP,sockets,select(),csh ˙取自 SunOS 者:NFS,OpenLook GUI,X11/NeWS, 具有内存映对档案的虚拟内存子系统(virtual memory subsystem with memory-mapped files),共享链接库 ˙ksh ˙ANSI C ˙国际化(Internationalization) (8-bit clean) ˙ABI (Application Binary Interface - routines instead of traps) ˙POSIX, X/Open, SVID3
◆ SVR4.1 ˙异步 I/O (from SunOS?)
◆ SVR4.2 (based on SVR4.1ES) ˙Veritas FS, ACLs
Berkeley Software Distribution (BSD)。VAX、RISC、各式工作站多用之。比起System V来BSD 的变动比较快而且学术研究的味道比较浓一点。Unix 之所以能够流行,BSD居功阙伟。许多对 Unix的加强改进都是由BSD先做出来的。
BSD的主要版本:
◆ 2.xBSD (1978)给PDP-11用的 ˙csh
◆ 3BSD (1978): ˙虚拟内存
◆ 4.0BSD (1980): ˙termcap, curses ˙vi
◆ 4.1BSD:后来AT&T CRG版本皆以此为本 ˙job 控制 ˙automatic kernel config ˙vfork()
◆ 4.2BSD (1983): ˙TCP/IP, sockets, ethernet ˙UFS: 长档名, symbolic links ˙新的 reliable signals (SVR3 采用了 4.1 的 reliable signals) ˙select()
◆ 4.3BSD (1986)
◆ 4.3 Tahoe (1988):4.3BSD附加对Tahoe(一款32位的超级迷你计算机) 的支持及一些新东西 ˙Fat FFS ˙新的 TCP 算法
◆ 4.3 Reno (1990) for VAX, Tahoe, HP 9000/300: ˙大部份的 P1003.1 ˙NFS (from Sun) ˙MFS (内存档案系统) ˙OSI:TP4,CLNP,ISODE's FTAM,VT and X.500; SLIP ˙Kerberos
◆ Net1与Net2 (June 1991) ˙4.4BSD (alpha June 1992) for HP 9000/300, Sparc, 386, DEC
Open Software Foundation(OSF) 于 1991 年底推出了 OSF/1。OSF/1 需要 SVR2 授权。符合 SVID 2、 SVID 3、 POSIX、 X/Open 等标准。 Apollo,Dec,HP,IBM等大厂商都是 OSF 的成员。 ◆ OSF/1 (1991): ▓ 以Mach 2.5 的核心为基础 ▓ 对称式多重处理 ▓ 处理绪(thread) ▓ 逻辑式容量(logical volumes), 磁盘镜射(disk mirroring),UFS (原生的),S5 FS,NFS ▓ 系统安全之加强(B1加一些B2,B3或C2),4.3BSD的系统管理 ▓ STREAMS,TLI/XTI,sockets ▓ 共享链接库,动态程序加载器 (包括核心) ▓ Motif GUI
◆ Release 1.3 (Jun 1994) ▓ 以 MACH 3.0 的微核心为基础 ▓ 符合规格1170草案的标准 ▓ Data Capture I/F,Common Data Link I/F ▓ 支援ISO 10646 与 64-bit ▓ 以 Mach 3.0 为基础的 OSF/1 MK (mircokernel)
Unix有关的标准: ◆ IEEE: ▓ 802.x (LAN) standards (LLC,ethernet,token ring,token bus) ▓ POSIX (ISO 9945?):Portable Operating System I/F (Unix,VMS and OS/2) ˙1003.1: 函数库(大部分是 system call) - 除了signals与terminal界面外,多取自于V7。 ˙1003.2: shell 与公用程序 ˙1003.3: 测试方法与合格标准 ˙1003.4: real-time:binary semaphores,process memory locking, memory-mapped files,shared memory,priority scheduling,real-time signals, clocks and timers,IPC message passing,synchronized I/O,asynchronous I/O, real-time files ˙1003.5: Ada language bindings ˙1003.6: 系统安全 ˙1003.7: 系统管理(包括印表) ˙1003.8: 透通式档案存取(transparent file access) ˙1003.9: FORTRAN language bindings ˙1003.10:高速计算(super computing) ˙1003.12:与协议种类无关的接口(protocol-independent I/Fs) ˙1003.13: 实时外观(real-time profiles) ˙1003.15: 高速计算批处理界面(supercomputing batch I/Fs) ˙1003.16: C-language bindings ˙1003.17: directory services ˙1003.18: POSIX standardized profile ˙1003.19: FORTRAN 90 language bindings
◆ X/Open ▓ X/Open Portability Guides (XPGn): ˙XPG2 (1987):命令与公用程序,系统呼叫与函数库,terminal 界面(curses,termio),IPC (SV),国际化,程序语言 (C, COBOL),数据管理(ISAM,SQL) ˙XPG3 (1989) ˙XPG4 (1992) ▓ XOM 系列的接口: ˙XOM (X/Open Object Management)需遵循的通用接口机制(generic I/F mechanisms for following) ˙XDS (X/Open Directory Service) ˙XMH (X/Open Mail ) ˙XMP (X/Open Management Protocols)
◆ AT&T ▓ System V Interface Definition (SVID) ▓ SVID1 (1985,SVR2) ˙Vol 1:系统呼叫与函数库(类似XPG2.1) ▓ SVID2 (1986,SVR3) ˙Vol 1:系统呼叫与函数库(基础,核心延伸) ˙Vol 2:指令与公用程序 (基础,进阶,管理,软件开发 ),终端机接口 ˙Vol 3:终端机接口,STREAMS and TLI,RFS ▓ SVID3 ▓ APIs ▓ Transport Library Interface (TLI) ▓ ACSE/Presentation Library Interface (APLI)
◆ COSE (Common Open Software Environment) [IBM,HP,SunSoft,others]: 目的在使不同的 Unix 平台可以更紧密的结合。可划分为底下几个项目: ▓ 桌面环境 ▓ 应用程序的 API (也就是 Spec 1170 - 一个统一的程序接口)的成就。消弥了 SCO, AIX,Solaris,HP-UX,UnixWare间的差异。 ▓ 分布式计算环境 (OSF的 DCE 与 SunSoft的 ONC) ▓ 对象技术 (OMG的CORBA) ▓ 绘图 ▓ 多媒体 ▓ 系统管理
◆ PowerOpen Environment (POE)由 PowerOpen Association(POA) 所推动。是个在 PowerPC这颗 chip上用的 Unix-like OS 的标准。其重要的特色为: ▓ 建构于PowerPC上 ▓ 与硬件总线无关 ▓ 从膝上型计算机到超级计算机都可以用的系统 ▓ 必须是个多人多任务的操作系统 ▓ 支持网络 ▓ Xwindows的扩充, Motif ▓ 是否符合标准由一个独立的机构(POA)来测试与认定
(责任编辑:admin) |