This article includes answers to:
If you're looking for the answer to, say, question 6.5, and want to skip everything else, you can search ahead for the regular expression "^6.5)". While these are all legitimate questions, they seem to crop up in comp.unix.questions or comp.unix.shell on an annual basis, usually followed by plenty of replies (only some of which are correct) and then a period of griping about how the same questions keep coming up. You may also like to read the monthly article "Answers to Frequently Asked Questions" in the newsgroup "news.announce.newusers", which will tell you what "UNIX" stands for. With the variety of Unix systems in the world, it's hard to guarantee that these answers will work everywhere. Read your local manual pages before trying anything suggested here. If you have suggestions or corrections for any of these answers, please send them to to tmatimar@isgtec.com. ---------------------------------------------------------------------- Subject: Disclaimer, introduction and acknowledgements. >From: "Pierre (P.) Lewis"Date: Mon Jan 11 16:59:14 EST 1995 X-Version: 2.8 6.1) Disclaimer, introduction and acknowledgements. The following is offered with no guarantee as to accuracy or completeness. I have done what I can in the time available, often with conflicting information, and it still is very much work in progress. I hope to keep improving this summary. Comments and corrections welcome: lew@bnr.ca. First a short definition. By Unix we mean an operating system typically written in C, with a hierarchical file system, integration of file and device I/O, whose system call interface includes services such as fork(), pipe(), and whose user interface includes tools such as cc, troff, grep, awk, and a choice of shell. Note that UNIX was a registered trademark of USL (AT&T), now of X/Open, but will be used here in its generic sense. Most Unices (the more common plural form) are derived more or less directly from AT&T (now Novell) code (some code from the first C version is presumably still left in most), but there are also clones (i.e. Unix-compatible systems with no AT&T code). In addition, there are also Unix-like environments (e.g. VOS) sitting on top of other OSs, and OSs inspired from Unix (yes, even DOS!). These are not covered here. Little on real-time Unices yet (although more is planned). Unix comes in an incredible variety of flavors. This is to a large extent due to availability of sources and the ease of porting and modifying Unix. Typically, a vendor of Unix will start with one basic flavor (see below), take ideas/code from the other major flavor, add and change many things, etc. This results in yet another new Unix flavor. Today, there are literally hundreds of Unices available, the closest thing to standard Unix being (by definition) System V. This answer was put together mostly from information on the net and email. Some specific sources are also mentioned in the appropriate sections. Acknowledgements: (in addition to references): pat@bnr.ca, guy@auspex.com, pen@lysator.liu.se, mikes@ingres.com, mjd@saul.cis.upenn.edu, root%candle.uucp@ls.com, ee@atbull.bull.co.at, Aaron_Dailey@stortek.com, ralph@dci.pinetree.org, sbdah@mcshh.hanse.de, macmach@andrew.cmu.edu, jwa@alw.nih.gov [4.4BSD], roeber@axpvms.cern.ch, bob@pta.pyramid.com.au, bad@flatlin.ka.sub.org, m5@vail.tivoli.com, dan@fch.wimsey.bc.ca, jlbrand@uswnvg.com, jpazer@usl.com, ym@satelnet.org, merritt@gendev.slc.paramax.com, quinlan@yggdrasil.com, steve@rudolph.ssd.csd.harris.com, bud@heinous.isca.uiowa.edu, pcu@umich.edu, quinlan@yggdrasil.com, Dan_Menchaca@quickmail.apple.com, D.Lamptey@sheffield.ac.uk, derekn@vw.ece.cmu.edu, gordon@PowerOpen.org, many that I forgot, and all the other folks whose posts I read. Many thanks! ------------------------------ Subject: A very brief look at Unix history. >From: "Pierre (P.) Lewis" Date: Mon May 30 15:44:28 EDT 1994 X-Version: 2.6 6.2) A very brief look at Unix history. Unix history goes back to 1969 and the famous "little-used PDP-7 in a corner" on which Ken Thompson, Dennis Ritchie (the R in K&R) and others started work on what was to become Unix. The name "Unix" was intended as a pun on Multics (and was written "Unics" at first -- UNiplexed Information and Computing System). For the first 10 years, Unix development was essentially confined to Bell Labs. These initial versions were labeled "Version n" or "Nth Edition" (of the manuals), and were for DEC's PDP-11 (16 bits) and later VAXen (32 bits). Some significant versions include: V1 (1971): 1st Unix version, in assembler on a PDP-11/20. Included file system, fork(), roff, ed. Was used as a text processing tool for preparation of patents. Pipe() appeared first in V2! V4 (1973): Rewritten in C, which is probably the most significant event in this OS's history: it means Unix can be ported to a new hardware in months, and changes are easy. The C language was originally designed for the Unix operating system, and hence there is a strong synergy between C and Unix. V6 (1975): First version of Unix widely available outside Bell Labs (esp. in universities). This was also the start of Unix diversity and popularity. 1.xBSD (PDP-11) was derived from this version. J. Lions published "A commentary on the Unix Operating System" based on V6. V7 (1979): For many, this is the "last true Unix", an "improvement over all preceding and following Unices" [Bourne]. It included full K&R C, uucp, Bourne shell. V7 was ported to the VAX as 32V. The V7 kernel was a mere 40 Kbytes! Here (for reference) are the system calls of V7: _exit, access, acct, alarm, brk, chdir, chmod, chown, chroot, close, creat, dup, dup2, exec*, exit, fork, fstat, ftime, getegid, geteuid, getgid, getpid, getuid, gtty, indir, ioctl, kill, link, lock, lseek, mknod, mount, mpxcall, nice, open, pause, phys, pipe, pkoff, pkon, profil, ptrace, read, sbrk, setgid, setuid, signal, stat, stime, stty, sync, tell, time, times, umask, umount, unlink, utime, wait, write. These Vn versions were developed by the Computer Research Group (CRG) of Bell Labs. Another group, the Unix System Group (USG), was responsible for support. A third group at Bell Labs was also involved in Unix development, the Programmer's WorkBench (PWB), to which we owe, for example, sccs, named pipes and other important ideas. Both groups were merged into Unix System Development Lab in 1983. Another variant of Unix was CB Unix (Columbus Unix) from the Columbus branch of Bell Labs, responsible of Operations Support Systems. Its main contribution was parts of SV IPC. Work on Unix continued at Bell Labs in the 1980s. The V series was further developed by the CRG (Stroustrup mentions V10 in the 2nd edition of his book on C++), but we don't seem to hear much about this otherwise. The company now responsible for Unix (System V) is called Unix System Laboratories (USL) and is majority-owned by AT&T. Novell has bought USL (early 93)! Novell has given rights to the "UNIX" trademark to X/Open (late 93). But much happened to Unix outside AT&T, especially at Berkeley (where the other major flavor comes from). Vendors (esp. of workstations) also contributed much (e.g. Sun's NFS). The book "Life with Unix" by Don Libes and Sandy Ressler is fascinating reading for anyone interested in Unix, and covers a lot of the history, interactions, etc.. Much in the present section is summarized from this book. ------------------------------ Subject: Main Unix flavors. >From: "Pierre (P.) Lewis" Date: Mon Jan 9 16:59:14 EST 1995 X-Version: 2.7 6.3) Main Unix flavors. The following is very much an early '90s view. Until recently, there were basically two main flavors of Unix: System V (five) from AT&T, and the Berkeley Software Distribution (BSD). SVR4 is essentially a merge of these two flavors. End '91, OSF/1 from the Open Software Foundation was released (as a direct competitor to System V) and may (future will tell) change this picture. The following lists the main releases and features of System V, BSD and OSF/1. System V from AT&T. Typical of Intel hardware. Most often ported Unix, typically with BSD enhancements (csh, job control, termcap, curses, vi, symbolic links). System V evolution is now overseen by Unix International (UI). UI members include AT&T, Sun, .... Newsgroup: comp.unix.sysv[23]86. Main releases: - System III (1982): first commercial Unix from AT&T - FIFOs (named pipes) (later?) - System V (1983): - IPC package (shm, msg, sem) - SVR2 (1984): - shell functions (sh) - SVID (System V Interface Definition) - SVR3 (1986) for ? platforms: - STREAMS (inspired by V8), poll(), TLI (network software) - RFS - shared libs - SVID 2 - demand paging (if hardware supports) - SVR3.2: - merge with Xenix (Intel 80386) - networking - SVR4 (1988), mainstream of Unix implementations, merge of System V, BSD, and SunOS. - From SVR3: sysadmin, terminal I/F, printer (from BSD?), RFS, STREAMS, uucp - From BSD: FFS, TCP/IP, sockets, select(), csh - From SunOS: NFS, OpenLook GUI, X11/NeWS, virtual memory subsystem with memory-mapped files, shared libraries (!= SVR3 ones?) - ksh - ANSI C - Internationalization (8-bit clean) - ABI (Application Binary Interface -- routines instead of traps) - POSIX, X/Open, SVID3 - SVR4.1 - async I/O (from SunOS?) - SVR4.2 (based on SVR4.1ES) - Veritas FS, ACLs - Dynamically loadable kernel modules - Future: - SVR4 MP (multiprocessor) - Use of Chorus microkernel? Berkeley Software Distribution (BSD). Typical of VAXen, RISCs, many workstations. More dynamic, research versions now than System V. BSD is responsible for much of the popularity of Unix. Most enhancements to Unix started here. The group responsible at UCB (University of California at Berkeley) is the Computer System Research Group (CSRG). They closed down in 1992. Newsgroup: comp.unix.bsd. Main releases: (much reorganized wrt dates and releases, hope it's converging) - 2.xBSD (1978) for PDP-11, still of significance? (2.11BSD was released in 1992!). - csh - 3BSD (1978): - virtual memory - 4.?BSD: - termcap, curses - vi - 4.0BSD (1980): - 4.1BSD (?): base of later AT&T CRG versions - job control - automatic kernel config - vfork() - 4.2BSD (1983): - TCP/IP, sockets, ethernet - UFS: long file names, symbolic links - new reliable signals (4.1 reliable signals now in SVR3) - select() - 4.3BSD (1986) for VAX, ?: - 4.3 Tahoe (1988): 4.3BSD with sources, support for Tahoe (32-bit supermini) - Fat FFS - New TCP algorithms - 4.3 Reno (1990) for VAX, Tahoe, HP 9000/300: - most of P1003.1 - NFS (from Sun) - MFS (memory file system) - OSI: TP4, CLNP, ISODE's FTAM, VT and X.500; SLIP - Kerberos - Net1 (?) and Net2 (June 1991) tapes: that portion of BSD which requires no USL copyright - 4.4BSD (alpha June 1992) for HP 9000/300, Sparc, 386, DEC, others; neither VAX nor Tahoe; two versions, lite (~Net2 contents plus, fixes and new architectures) and encumbered (everything, requires USL license): - new virtual memory system (VMS) based on Mach 2.5 - virtual filesystem interface, log-structured filesystem, size of local filesystem up to 2^63, NFS (freely redistributable, works with Sun's, over UDP or TCP) - ISO/OSI networking support (based on ISODE): TP4/CLNP/802.3 and TP0/CONS/X.25, session and above in user space; FTAM, VT, X.500. - most of POSIX.1 (esp. new terminal driver a la SV), much of POSIX.2, improved job control; ANSI C headers - Kerberos integrated with much of the system (incl. NFS) - TCP/IP enhancements (incl. header prediction, SLIP) - important kernel changes (new system call convention, ...) - other improvements: FIFOs, byte-range file locking Official 4.4BSD release was expected within 6 months of above. The Open Software Foundation (OSF) released its Unix called OSF/1 end of 1991. Still requires an SVR2 license. Compatible/compliant with SVID 2 (and 3 coming), POSIX, X/Open, etc.. OSF members include Apollo, Dec, HP, IBM, .... - OSF/1 (1991): - based on Mach 2.5 kernel - symmetric multiprocessing, parallelized kernel, threads - logical volumes, disk mirroring, UFS (native), S5 FS, NFS - enhanced security (B1 with some B2, B3; or C2), 4.3BSD admin - STREAMS, TLI/XTI, sockets - shared libs, dynamic loader (incl. kernel) - Motif GUI - Release 1.3 (Jun 94) - Based on MACH 3.0 Micro-kernel - Conformant with current draft of Specification 1170 (considered for standardization in X/Open's Fast Track process) - Data Capture I/F, Common Data Link I/F, - ISO 10646 and 64-bit support. - OSF/1 MK (mikrokernel) based on Mach 3.0 This list of major flavors should probably also include Xenix (Microsoft) which has been the basis for many ports. Derived from V7, S III and finally System V, it is similar externally but significantly changed internally (performance-tuned for micros). Two very good books describe the internals of the two main flavors. These are: - System V: "Design of the Unix Operating System", M.J. Bach. - BSD: "Design and Implementation of the 4.3BSD Unix Operating System", Leffler, McKusick, Karels, Quaterman. For a good introduction to OSF/1 (not quite as technical as the previous two), see: "Guide to OSF/1, A Technical Synopsis", published by O'Reilly. On SunOS, "Virtual Memory Architecture in SunOS" and "Shared Libraries in SunOS" in Summer 1989 USENIX Proceedings. A good set of articles on where Unix is going is "Unix Variants" in the Apr 92 issue of Unix Review. Other good sources of information include the bsd-faq file, and many of the newsgroups mentioned in the text. ------------------------------ Subject: Main Players and Unix Standards. >From: "Pierre (P.) Lewis" Date: Mon Jan 21 16:59:14 EST 1995 X-Version: 2.8 6.4) Main Players and Unix Standards. The more important players in the Unix scene currently (early '95) are (corrections most welcome, these are new bytes): - Novell who bought USL (early 93) and now has the source code. - X/Open who has the branding rights to "UNIX" trademark. - OSF, both as developer of OSF/1 and Motif, and as organization overseeing COSE (OSF's new working model). OSF was reorganized in 1994 (and Sun joined), relationship with X/Open has been formalized. - IEEE with POSIX, LAN standards. - PowerOpen [IBM, Apple, Motorola, Bull, others] promoting the PowerPC. Do not confuse with graphical environment of same name. The following briefly describes the more important standards relevant to 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!) (only ? have been finalized at this point) - 1003.1: library procedures (mostly system calls) -- roughly V7 except for signals and terminal I/F (1990) - 1003.2: shell and utilities - 1003.3: test methods and conformance - 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: security - 1003.7: system admin (incl. printing) - 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 (consortium of vendors, founded 1984): - X/Open Portability Guides (XPGn): - XPG2 (1987), strong SV influence Vol 1: commands and utilities Vol 2: system calls and libraries Vol 3: terminal I/F (curses, termio), IPC (SV), internationalization Vol 4: programming languages (C, COBOL!) Vol 5: data management (ISAM, SQL) - XPG3 (1989) adds: X11 API - XPG4 (1992) adds: XTI? 22 components - XOM series of interfaces: - 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) -- not Bull's CM API? - X/Open now has the rights to the "UNIX" trademark (late 93); - "Spec 1170" - This specification is being prepared describing a common API to which vendors wanting to use the name "UNIX" will have to comply (when test suites are available). Merge of SVID, OSF's AES and other stuff. - AT&T (is this still relevant in 1994? Who is now responsible for SVID, TLI, APLI?) - System V Interface Definition (SVID) - SVID1 (1985, SVR2) Vol 1: system calls and libraries (similar to XPG2.1) - SVID2 (1986, SVR3) Vol 1: system calls and libraries (base, kernel extensions) Vol 2: commands and utilities (base, advanced, admin, software development), terminal I/F Vol 3: terminal I/F (again), STREAMS and TLI, RFS - SVID3 (19??, SVR4) adds Vol 4: ?? &c - APIs - Transport Library Interface (TLI) - ACSE/Presentation Library Interface (APLI) - COSE (COmmon Open Software Environment) [IBM, HP, SunSoft, others]: objective is to bring different Unix platforms closer together. Initiatives in the following areas: - desktop environments - application API (aka Spec 1170 -- a single programming i/f) -- probably the more important achievement at this point: eliminates differences between SCO, AIX, Solaris, HP-UX, UnixWare. - distributed computing services (OSF's DCE and SunSoft's ONC) - object technologies (OMG's CORBA) - graphics - multimedia - systems management - PowerOpen Environment (POE) promoted by the PowerOpen association (POA). A standard for Unix-like OSs running on PowerPC chip. Defines: - an API (application programming i/f, derived from AIX, conforms to POSIX, XPG4, Motif, &c) and - an ABI (application binary i/f), a distinguishing factor from other standards such as POSIX, XPG4, &c.. Any POE-compliant system will be able to run all POE software. Key features: - based on the PowerPC architecture - hardware bus independence - system implementations can range from laptops to supercomputers - requires a multi-user, multi-tasking operating system - networking support - X windows extension, Motif - conformance tested and certified by an independent party (POA) AIX 4.1.1 will be PowerOpen compliant. MacOS isn't and won't be. [above adapted from the powerpc-faq from comp.sys.powerpc] IBM is involved in both COSE and POE. How will the two interact? ------------------------------ Subject: Identifying your Unix flavor. >From: "Pierre (P.) Lewis" Date: Mon May 30 15:44:28 EDT 1994 X-Version: 2.6 6.5) Identifying your Unix flavor. This section lists a number of things you can look at in attempting to identify the base flavor of your Unix. Given the significant exchange of code and ideas between the various flavors and the many changes made by vendors, any statement such as "this Unix is an SVR2" is at best a statistical statement (except for some SVRn ports). Also many Unices offer most of both worlds (either mixed as in SunOS or strictly separated as in Apollo?). So this section is perhaps not very useful... The list of features in previous sections can also help. For example, if a system has a poll(2) but no select(2), it is highly probable that it is derived from SVR3. Also the name of the OS can provide a clue, as well as the logon message (e.g. SGI's "IRIX SVR3.3.2") or the output of "uname -a" command. Available commands can also provide hints but this is probably less reliable than kernel features. For example, the type of terminal initialization (inittab or ttys) is a more reliable indicator than the print subsystem. Feature Typical in SVRx Typical in xBSD kernel name /unix /vmunix terminal init /etc/inittab /etc/ttys (only getty to 4.3) boot init /etc/rc.d directories /etc/rc.* files mounted FSs /etc/mnttab /etc/mtab usual shell sh, ksh csh, #! hack native FS S5 (blk: 512-2K) UFS (blk: 4K-8K) file names <= 14 bytes file names < 255 bytes groups need newgrp(1) automatic membership SVR4: multiple groups print subsystem lp, lpstat, cancel lpr, lpq, lprm (lpd daemon) ?? terminal control termio, terminfo, termios (sgtty before 4.3reno) SVR4: termios (POSIX) termcap job control >= SVR4 yes ps command ps -ef ps -aux multiple wait poll select string fcns memset, memcpy bzero, bcopy process mapping /proc (SVR4) As we move to the late '90s, this is probably less and less relevant. ------------------------------ Subject: Brief notes on some well-known (commercial/PD) Unices. >From: "Pierre (P.) Lewis" Date: Mon Jan 11 16:59:14 EST 1995 X-Version: 2.8 6.6) Brief notes on some well-known (commercial/PD) Unices. (I am not at all satisfied with this section, unfortunately I have neither the time nor the documents to make it much better (wrt contents). Should only list Unices known by a reasonably wide audience. Small and non-US Unices welcome, e.g. Eurix. In need of reformatting) This section lists (in alphabetical order) some of the better known Unices along with a brief description of their nature. Unfortunately, it's out-of-date almost by definition... (sorted alpha, ignoring numbers and other chars) AIX: IBM's Unix, based on SVR2 (later up to SVR3.2?) with varying degrees of BSD extensions, for various hardwares. Proprietary system admin (SMIT). Both 850 and Latin-1 CPs. Quite different from most Unices and among themselves. Newsgroup: comp.unix.aix. - 1.x (for 386 PS/2) - 2.x (for PC RTs) - 3.x (for RS/6000), paging kernel, logical volume manager, i18n; 3.2 adds TLI/STREAMS. SV-based with many enhancements. 4.1 is latest (includes support for PowerPC?) - AIX/ESA, runs native on S/370 and S/390 mainframes, based on OSF/1. AIX was to have been base for OSF/1 until Mach was chosen instead. I hope this subsection is converging :-) AOS (IBM): 4.3BSD port to IBM PC RT (for educational institutes). Don't confuse with DG's proprietary OS of same name. Arix: SV A3000UX (Commodore): 68030-based SVR4 Unix (?) for the Amiga. A/UX (Apple): SV with Berkeley enhancements, NFS, Mac GUI. System 6 (later System 7) runs as guest of A/UX (opposite of MachTen). Newsgroup: comp.unix.aux. - 2.0: SVR2 with 4.2BSD, system 6 Mac applications. - 3.0 (1992): SVR2.2 with 4.3BSD and SVR3/4 extensions; X11R4, MacX, TCP/IP, NFS, NIS, RPC/XDR, various shells, UFS or S5FS. System 7 applications. - 4.0 will have/be OSF/1. 3B1 (680x0): SV-based, done by Convergent for AT&T. Newsgroup: comp.sys.3b1. BNR/2: stands for BSD Net/2 Release? Includes NetBSD/1, FreeBSD. BOS for Bull's DPX/2 (680x0) - V1 (1990): SVR3 with BSD extensions (FFS, select, sockets), symmetric MP, X11R3 - V2 (1991): adds job control, disk mirroring, C2 security, DCE extensions - There's also BOS/X, and AIX-compatible Unix for Bull's PPC workstations. How it relates to above two is unknown. 386BSD: Jolitz's port of Net/2 software. Posix, 32-bit, still in alpha (now version 0.1). BSD/386 (80386): from BSDI, with source (augmented Net2 software) Newsgroup: comp.unix.bsd. Chorus/MiXV: Unix SVR3.2 (SVR4) over Chorus nucleus, ABI/BCS. Coherent (80286): Unix clone compatible with V7, some SVR2 (IPC). V4.0 is 32-bit. Newsgroup: comp.os.coherent Consensys: SVR4.2 CTIX: SV-based, from Convergent D-NIX: SV DC/OSx (Pyramid): SVR4. DELL UNIX [DELL Computer Corp.]: SVR4 DomainIX: see DomainOS below. DomainOS (Apollo, now HP): proprietary OS; layered on top is BSD4.3 and SVR3 (a process can use either, neither or both). Development now stopped, some features now in OSF/1 (and NT). Now at SR10.4. Name for SR9.* was DomainIX. Newsgroup: comp.sys.apollo. DVIX (NT's DVS): SVR2 DYNIX (Sequent): 4.2BSD-based DYNIX/PTX: SVR3-based Esix (80386): pure SVR4, X11, OpenLook (NeWS), Xview Eurix (80?86): SVR3.2 (Germany) FreeBSD: 386bsd 0.1 with the patchkit applied, and many updated utilities. FTX: Stratus fault-tolerant OS (68K or i860-i960 hardware) Generics UNIX (80386): SVR4.03 (Germany) GNU Hurd (?): vaporware from the Free Software Foundation (FSF): Unix emulator over Mach 3.0 kernel. Many GNU tools are very popular (emacs) and used in the PD Unices. HELIOS (Perihelion Software): for INMOS transputer and many other platforms. HP-UX (HP): old from S III (SVRx), now SVR2 (4.2BSD?) with SV utilities (they have trouble making up their minds). - 6.5: SVR2 - 7.0: SVR3.2, symlinks - 7.5 - 8.0: BSD based? for HP-9000 CISC (300/400) and RISC (800/700), shared libs - 9.0: includes DCE Interactive SVR3.2 (80x86): pure SVR3. Interactive has been bought by Sun; will their system survive Solaris? Idris: first Unix clone by Whitesmith. A small Unix? For INMOS transputer and others?. IRIX (SGI): Version 4: SVR3.2, much BSD. Version 5.x (current is 5.2) is based on SVR4. Newsgroup: comp.sys.sgi. Linux (386/486/586): Unix under GPL (not from FSF, though). Available with sources. POSIX compliant w/ SysV and BSD extensions. Being ported to Alpha/AXP and PowerPC (ports for 680x0 Amigas and Ataris already exist; a port is also being done to the MIPS/4000). Newsgroup: comp.os.linux.{admin,announce,development,help,misc}. MachTen, Tenon Intersystems: runs as a guest of System 6, no memory protection, 4.3BSD environment with TCP, NFS. MacMach (Mac II): 4.3BSD over Mach 3.0 microkernel, X11, Motif, GNU software, sources, experimental System 7 as Mach task. Complete with all sources (need Unix license). Mach386: from Mt Xinu. Based on Mach 2.5, with 4.3BSD-Tahoe enhancements. Also 2.6 MSD (Mach Source Distribution). Microport (80x86): pure SVR4, X11, OpenLook GUI Minix (80x86, Atari, Amiga, Mac): Unix clone compatible with V7. Sold with sources. Being POSIXified (sp?). For PCs, and surely many others (eg. INMOS transputer). Newsgroup: comp.os.minix. MipsOS: SVish (RISC/OS, now dropped, was BSDish) more/BSD (VAX, HP 9000/300): Mt Xinu's Unix, based on 4.3BSD-Tahoe. Newsgroup: comp.os.xinu? NCR UNIX: SVR4 (4.2?) Net/2 tape (from Berkeley, 1991): BSD Unix, essentially compatible with 4.3BSD, includes only sources free of AT&T code, no low-level code. See 386BSD and BSD/386 above. NetBSD 0.8: is actually 386bsd in a new suit. Ported to [34]86, MIPS, Amiga, Sun, Mac. What is relation to Net/2? NEXTSTEP (Intel Pentium and 86486, Hewlett-Packard PA-RISC, NeXT 68040): BSD4.3 over Mach kernel, own GUI. - 1.x, 2.0, 2.1, 2.2, 3.0, 3.1 (old) - 3.2 (current version, Intel Pentium and 86486, Hewlett-Packard PA-RISC, NeXT 68040) - 3.3 (to be announced shortly, may include Sun SPARC version) - 4.0 (to be announced, will include Sun SPARC version) - NEXTSTEP DEC Alpha version has been announced - NEXTSTEP is OpenStep compliant (see Solaris) NEWS-OS (Sony) - 3.2 OSF/1 (DEC): DEC's port of OSF/1. I think this is now (4/93) available on DEC's latest Alpha AXP (64-bit machine). OSx (Pyramid): Dualport of both SysV.3 and BSD4.3. PC-IX (IBM 8086): SV Plan 9 (AT&T): announced 1992, complete rewrite, not clear how close to Unix it is. Key points: distributed, very small, various hardwares (Sun, Mips, Next, SGI, generic hobbit, 680x0, PCs), C (not C++ as rumors had it), new compiler, "8 1/2" window system (also very small), 16-bit Unicode, CPU/file servers over high speed nets. SCO Xenix (80x86): Versions for XT (not robust!), 286, 386 (with demand paging). Today bulk of code is from System V. Stable product. SCO Unix (80x86): SVR3.2 (stopped taking USL source at this point). Sinix [Siemens]: System V base. Solaris (Sparc, 80386): - 1.0: essentially same as SunOS 4.1.1, with OpenWindows 2.0 and DeskSet utilities. - 1.0.1: SunOS 4.1.2 with multiprocessing (kernel not multithreaded); not for 386 - 2.0: (initially announced as SunOS 5.0 in 1988) based on SVR4 (with symmetric MP?), will include support for 386; with OpenWindows 3.0 (X11R4) and OpenLook, DeskSet, ONC, NIS. Both a.out (BSD) and elf (SVR4) formats. Kerberos support. Compilers unbundled! - Solaris is OpenStep compliant (non-NeXT, but with NEXTSTEP API) with latest (1994?) version. SunOS (680x0, Sparc, i386): based on 4.3BSD, includes much from System V. Main Sun achievements: NFS (1984), SunView (1985), NeWS (1986, postscript imaging, now in OpenWindows), OpenLook GUI standard, OpenWindows (NeWS, X11, SunView!). Newsgroup: comp.sys.sun.*. - 3.x: SV IPC package, FIFOs - 4.0.3: lightweight processes, new virtual mem, shared libs - 4.1: STREAMS & TLI, 8-bit clean?, async I/O, ms-dos file system (continues as Solaris -- see above). UHC (80x86): pure SVR4, X11, Motif Ultrix (DEC): based on 4.2BSD with much of 4.3. Newsgroup: comp.unix.ultrix. - 4.4 is latest UNICOS (Cray): System V base. Newsgroup: comp.unix.cray - 5.x, 6,x, 7.0 UnixWare Release 4.2 [Univel]: SVR4.2; over NetWare. Univel no longer exists. UTEK (Tektronix) - 4.0 VOLVIX (Archipel S.A.): UNIX-based OS built around a communication based, distributed, real-time micro-kernel. SVR3.2 system calls, BSD4.4 file/network system calls (VFS, FFS). Also NFS and X11. Vanilla VOLVIX is for transputers. Xenix (80x86): 1st Unix on Intel hardware, based on SVR2 (previously on S III and even V7). Newsgroup: comp.unix.xenix. ------------------------------ Subject: Real-time Unices. >From: "Pierre (P.) Lewis" Date: Mon Jan 9 16:59:14 EST 1995 X-Version: 2.7 6.7) Real-time Unices. WARNING: this section is badly in need of work. It's full of errors, and it's incomplete. I hope to have time to look at it this winter (was "this fall"). I doubt all of following are Unices -- input is welcome. The list also includes more common Unices with real-time features, and some non-Unix systems with Unix-like APIs. I don't suppose the latter really belong here, but having collected some notes, I'm hesitant to junk them. See also comp.realtime. AIX: AIX/6000 has real-time support. Concurrent OS (Concurrent): real Unix, significantly modifed by Concurrent. CX/UX: a real UNIX significantly modified by Harris to provide real-time capabilities and performance. Compliant with POSIX.4 final version. EP/LX (Control Data): port of LynxOS to R3000. Formerly called TC/IX. LynxOS (Lynx Real-Time Systems, Inc): Berkeley and SV compatibility, ground-up rewrite (proprietary), predates SVR4. Is not UNIX, but supports much of the UNIX I/Fs. Fully preemptive, fixed priorities. MiX: microkernel implementation of SVR4 offered by Chorus. Motorola SVR4 has real-time capabilities. QNX (Quantum Software): unix-compatible real real-time OS. RTU (Concurrent), for 68K boxes Solaris 2 has real-time capabilities? Stellix (Stardent); it's Unix, but is it real-time? Venix/386: Interactive SVR3.2 with real-time extensions. VMEexec (Motorola): not Unix, but also shares some I/Fs with Unix. VxWorks (Wind River Systems): Little in common with Unix, has some I/Fs in common with Unix (but not the file system). Newsgroup: comp.os.vxworks. (know nothing about) Convex RTS REAL/IX (AEG) Sorix (Siemens) System V/86 (Motorola) TC/IX (CCD) Velocity (Ready Systems): ------------------------------ Subject: Unix glossary. >From: "Pierre (P.) Lewis" Date: Mon Jan 11 16:59:14 EST 1995 X-Version: 2.8 6.8) Unix glossary. This section provides short definitions of various concepts and components of (or related to) Unix systems. Chorus: message-passing microkernel, may form basis for a future release of SV. Chorus already have SVR4 running on top (binary-compatible). CORBA (Common Object Request Broker Architecture). COSE (Common Open Software Environment) [Sun, HP, IBM]: common look and feel (Motif -- Sun will let OpenLook fade away), common API. Reaction against Windows NT. See section 6.4 above. DCE (Distributed Computing Environment, from OSF): Includes RPC (Apollo's NCS), directory service (local based on DNS, global on X.500), time, security, and threads services, DFS (distrib. file system), .... OS-independent. DME (Distributed Management Environment, from OSF): future. DO (Distributed Objects [Enterprise]): ???. FFS (Fast File System): from Berkeley, 1983. Equivalent (exact?) of UFS in SunOS. Has notions such as cylinder groups, fragments. Mach: modern kernels from CMU (Carnegie Mellon University) on which many Unices and other OSs are based (e.g. OSF/1, MacMach, ...): - 2.5: monolithic kernel with 4.2BSD - 3.0: microkernel with BSD Unix server in user space (and other OSs, e.g. MS-DOS) Newsgroup: comp.os.mach MFS (Memory File System): NeWS (Network extensible Window System), from Sun?: PostScript-based, networked, toolkits (and even clients) loaded in server. Part of OpenWindows. NFS (Network File System): contributed by Sun to BSD, stateless server ONC (Open Network Computing): from Sun(?), includes RPC, name service (NIS aka YP), NFS, ... (found in many Unices, other OSs). OpenStep [NeXT, Sun]: ??? PowerOpen: both a standard, and an organization promoting PowerPC. Involves IBM, Apple and Motorola; others? See section 6.4 above. PowerPC (PPC): a RISC CPU chip [IBM, Motorola]. RFS (Remote File System): SV, stateful server, incompatible with NFS RPC (Remote Procedure Call): high-level IPC (inter-process communication) mechanism. Two flavors. - ONC: Over TCP or UDP (later OSI), uses XDR to encode data. - DCE: has a different RPC mechanism (based on Apollo's NCS) S5 FS: System V's native file system, blocks 512 to 2K. sockets: BSD interface mechanism to networks (compare TLI). STREAMS: a message-passing kernel mechanism, initially in SVR3, which provides a very good interface for protocol development. TFS (Translucent File System): Sun, COW applied to files. TLI (Transport Library Interface): SV's interface to transport services (TCP, OSI). UI has also defined an APLI (ACSE/Presentation Library Interface) UFS (?): BSD's native file system as seen in SunOS, blocks 4K to 8K, cylinder groups, fragments. XTI (X/Open Transport Interface): TLI with enhancements X11: pixel-oriented window system from MIT. ------------------------------