Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!ucsd!nosc!crash!simpact!kquick From: kquick@dcs.simpact.com (Kevin Quick, Simpact Assoc., Inc.) Newsgroups: comp.unix.programmer Subject: Re: Why use U* over VMS Message-ID: <1815.272d8292@dcs.simpact.com> Date: 30 Oct 90 21:39:29 GMT References: <1990Oct25.160937.28144@edm.uucp> <1809.272c3135@dcs.simpact.com> <12234@medusa.cs.purdue.edu> Organization: Simpact Associates, San Diego CA Lines: 46 In article <12234@medusa.cs.purdue.edu>, smb@cs.purdue.EDU (Scott M. Ballew) writes: > In article <1809.272c3135@dcs.simpact.com> kquick@dcs.simpact.com (Kevin Quick, Simpact Assoc., Inc.) writes: > >>4. The VMS synchronization is much more specific and explicit, and in >> some cases much better than Unix synchronization, but that is partially >> because VMS is specific to Digital machines, whereas Unix is forced >> to be much more general. > > Actually, since Unix was originally designed for DEC machines, this is > not a valid statement. The difference really lies in the philosophy > underlying the systems' designs. See Bach's book on the design of > Unix for a discussion. > > Scott Ballew > Cypress Network Operations Center > Purdue University Department of Computer Sciences I would agree with the position of Mr. Ballew's statement with regards to the origins of the Unix OS, but later developments in computer hardware have caused a divergence between Unix and VMS; Unix, while initially developed in a DEC environment, attempts to maintain a portability focus as much as possible, and therefore the synchronization mechanisms are limited to that subset that exists most broadly throughout the many architectures that today support the Unix environment. VMS, on the other hand, has been free to use and "feature" all of the hardware developments available in the DEC environment because it is not required to be portable outside that environment. VMS implements 32 discrete interrupt priority levels with OS tasks being specifically performed at the various levels; the recent addition of multiple CPUs in the SMP environment overlay a ranked spinlock structure onto this interrupt scheme to provide inter-cpu synchronization as well as intra-cpu syncronization. Unix provides 8 interrupt levels, accessed via standard spl routines which may or may not provide that many discrete interrupt lockout levels as determined by the underlying hardware. There are various spinlock additions to support SMP environments, although my limited experience with these indicates that they are not as complex (well developed?) as the VMS counterparts. Anyhow, I digress in defense of my original statement, and perhaps this topic is becoming more apropo to the comp.unix.internals newsgroup. -- -- Kevin Quick, Simpact Associates, Inc., San Diego, CA. Internet: simpact!kquick@crash.cts.com