Slashdot Mirror


What is UNIX, Anyway?

Lieutenant writes "Technology professionals have loosely used the term "UNIX" since the first person had to explain the difference between the Berkeley and AT&T flavors, so it's not surprising to find as many UNIX standards as there are versions of the operating system. Peter Seebach wades through the wellspring of UNIX standards and sorts them out for you, concluding that the rumors of the death of UNIX are (as usual) greatly exaggerated."

14 of 218 comments (clear)

  1. Not a bad article. by Anti-Trend · · Score: 3, Interesting

    This editorial definitely seems to be for marketing purposes, being both hosted by IBM and directly confrontational about Microsoft. Still, interesting enough article; it's always tough to be brief and to the point about such a complicated subject. I especially like the author's point about the liquidity of the Microsoft "standard" API which is so touted as a counterpoint to *nix implementation -- DOS, Win16, OS/2, Win32, WinNT, WinXP, .NET, Vista... versus POSIX. Yeah, he's right, it sounds pretty ridiculous when you put it that way. That being said, the article's pretty light on the details. For those rare individuals interested in reading more than TFA, here's a little more info on UNIX and the POSIX standard.

    --
    Working in a DevOps shop is like playing in a band made up entirely of keytarists.
    1. Re:Not a bad article. by ROOK*CA · · Score: 2, Interesting

      I especially like the author's point about the liquidity of the Microsoft "standard" API which is so touted as a counterpoint to *nix implementation -- DOS, Win16, OS/2, Win32, WinNT, WinXP, .NET, Vista... versus POSIX.

      Good point, I think the most distinguishing factor is marketing, Microsoft has been consistantly been able to map out a clear transition from API to API (as well as inserting a dash of FUD when required), even if customers and/or ISVs knew there was going to be transition pain, Microsoft was there to assure them of backward compatibility and/or easy portability (even if some of those "assurances" were a bit "hyped") . It's a bit harder for the *NIX world to communicate this to customers & ISV's since you have vendors competeing in the same space against each other and trying to differentiate their *NIX based offerings from everybody elses.

      It's funny but I think a lot of customers & ISVs happily accept vendor lock-in in the case of Microsoft, but are hestitant when it comes to *NIX, even though in reality *NIX generally speaking turns out to be the more flexible (portable) platform. No accounting for taste I guess :).

  2. Single Unix Standard, Version 3 by Gopal.V · · Score: 4, Interesting
    As a programmer, that's what I really consider as Unix - sus v3.

    I code for this API and the sources end up being source compatible. But then there are library paths and stuff, which is why even something as homogenous as Linux is forced to create LSB standard. The API standard OTOH, is crystal clear - look at the API tables in terms of availability. And yeah, my project is called Portable.net, so I've put in my time writing portable code for various platforms (even BeOS and SkyOS). Wish the threading models worked the same, that's all :)

    There is just *nix ... just *nix and VMS - everything else is somewhere in between.
    1. Re:Single Unix Standard, Version 3 by Anonymous Coward · · Score: 5, Interesting

      Well, that's certainly a negative way to put it, but what if anything could they do any better? It's not like it would be particularly practical or reasonable for unix vendors at this stage of unix history to break backwards compatibility for the sake of future compatibility.

      So, the unix vendors do the next best thing: they make whatever changes they can to bring their platforms to uniformity without breaking backwards compatibility, and they maintain a common standards document that documents the cross-platform compatible functionality. When they inevitably make mistakes in the documentation process, they remove specifications that they cannot implement complatibly in all unix systems.

      The most important point here is the intent of the unix vendors: They are working towards compatibility wherever they can, and they are striving for accurate documentation of the compatible functionality. There's nothing to disparage in their actions, even if they make the occasional mistake -- at least they are improving all the time.

      Even linux developers are known to deviate from the SUS occasionally, but they too do strive to implement the standard wherever possible. Yes, the Single Unix Specification is incomplete and flawed, but it's the best thing we've got.

  3. First Sale Doctrine by David+Hume · · Score: 5, Interesting
    FTFA:
    A single programmer who wants a copy of the POSIX specification would have to pay US$974 for it. That gets a one-year subscription; you are not licensed to continue referring to the standard thereafter.
    What about the first sale doctrine? Do they really contend that you cannot "refer" to the standard after one year? Do they do a mind wipe? Or is just that your subscription for updates lapses after one year?
  4. The Spirit of UNIX by murdie · · Score: 5, Interesting

    Probably the oldest standard that people still refer to is AT&T's 1985 System V Interface Definition (SVID).

    I routinely use printed Seventh Edition (Bell Labs Research) UNIX manuals, even when writing C for Linux. It also helps one remain blissfully ignorant of the 'cat -v' option and similar excrescences. Also the Tenth Edition UNIX manuals. I have to remember the changes introduced by Standard C and the like, but it's convenient to have the essence of the modern-day manual in printed form. Of course, there are some people out there who delight in using Fifth, Sixth, Seventh etc Editions on PDP-11s etc - see the PDP-11 UNIX Preservation Society, http://minnie.tuhs.org/PUPS/. I wish I had a larger garage! How much would a PDP-11/40 cost me now, anyway?

    Peter Salus' book "A Quarter Century of UNIX", Addison-Wesley, 1994 (corrected 1995), ISBN 0-201-547771-5 is a good informal UNIX history.

    "Those who do not understand UNIX are condemned to reinvent it -- badly."
                                                      -- Henry Spencer

  5. UNIX hater's handbook. by mumblestheclown · · Score: 3, Interesting
    Unix hater's handbook

    it's funny AND true.

    / seriously thinks UNIX like systems need to go the way of VAXen.
    // well, actually not so much the systems themselves, but the assinine UNIX mentality of "harder is better" and "more documentation eliminates the need for good design.", which set back Computer Science departments and academia 15 years behind industry.
    /// fortunately, one of the unintended side-effects of Linux is that the mentality, at least amongst Linux users, is slowly, ever so slowly, fading away.

    1. Re:UNIX hater's handbook. by mumblestheclown · · Score: 2, Interesting
      Let's get specific, shall we? The CLI itself is not the problem - it's the way it was implemented. By the early 1990s, it would have been possible - trivial even - to make a context-sensitive CLI standard that, by prompting and hinting to the user at appropriate points, would have helped the user ensure that he was typing in appropriate things. this would have in no way impacted the speed or overall usefulness of the cli, and in fact undoubtedly would have resulted in fewer operator errors and overall efficiecny improvements. You know, something to the efect that as you typed in command-line arguments to gzip, would pop up english language help right there, helping you get it right the first time.

      However, this was not done in any meaningful way. In other words, while it would have been SIMPLE to add additional usability with NO loss of functionality or speed, it was not done. Why? IDIOT PHILOSOPHY.

      It was not done because UNIX back then (as now) was a combination big dick and competing standards contest fought between people who basically still subscribed to the idea that they were the gatekeepers of information- the intercessory priests to the god of computing. We see an echo of this jackass attitude in one of the responses to my posts - the idea that CLI is for "experts" and KDE is for "newbies." There is, amazingly, no middle ground mentioned because the whole system was explicitly designed by a deranged "elite" so that there would be no middle ground - no hierarchy.

      It's not that the CLI is itself an evil invention - it's not. It's the attitude that surrounded its many, universally poor implementations that was evil, and again, the general belief and universal attitude by those pathetically clinging to their status as "UNIX Gurus" that it was the responsibility of the user to climb UP to the system (by learning various hacks, system-specific things, and so forth) rather than changing the system ONE IOTA to, you know, actually make it easier to use. The history of UNIX-like systems, until quite recently, has largely been the opposite - make MORE incompatible, often contradictory systems so that the user is left with even more rudimentarily simple tools to accomplish ever more complex tasks.

    2. Re:UNIX hater's handbook. by mumblestheclown · · Score: 2, Interesting
      Yes, that's right. Don't let anybody challenge your comfortble, if severely outdated notions. Meanwhile, just ignore the fact that the words "usability" and "user-centered-design" were basically nowhere to be seen in virtually any computer science department until quite recently, and even then, it's as an elective "soft" subject basically irrelevant to the "main theme." The preaviling orthodoxy of how programming is "taught", which is "code before design" and that "user-related stuff is for the visual basic programmers at the community college down across town."

      You think I'm wrong? Consider something like computer vision people in CS departments who arguably should have nothing to do with this discussion. How would they be affected by this cancer? Why, for the simple reason that they were forced by convention to do their research with tools completely inappropriate to the task - low level programming languages where they had to worry about malloc() instead of actually coding computer vision stuff. NLP people who spent more time worrying about LISP parentheses than actual NLP stuff because writing an actual IDE that didnt suck and/or take a "guru" user to use was taboo and "showed weakness." Always was missing was the general idea that there should be a hierarchy of tools to make life easier or the fact that the whole point of a computer was that you can make tools to automate and/or eliminate hard and/our routine tasks. The entire mentality at MIT/CMU/Harvard (those are the places I knew best in my graduate years) was that in order to show that you had the right mettle, you had to go through the agony of learning some pointless shite in order to do something that a PC user wouldnt have to think twice about.

  6. Re:old paradigms by grahamlee · · Score: 3, Interesting

    To take the specific point of MACs, if UNIX was about giving you the least privilege necessary to get your job done, then the concept of setuid (which gives you *all* the privileges available) would never have existed. Tools like sudo, solaris profiles, SEDarwin/SEBSD and the like have come up to try and plug this privilege leak but fundamentally, Unix has a binary privilege model. You either have none, or you have them all. More generally, I think it's hard to fundamentally sum up Unix (without using one of the technical definitions, such as "something which implements SUS"); when it comes down to it it's a C language API and a set of tools which implement that API, running a multiuser multitasking OS. I think a good description would be "an OS that one person can grok"...

  7. Re:Define it by its limitations by rolfwind · · Score: 2, Interesting

    I'll disagree - it's a series of articles by people who worked with Unix (back then) and have other systems to compare it to, I consider many of the articles surpass the atyppical +5 posts here on slashdot^_^

  8. still an amazing OS by yagu · · Score: 3, Interesting

    I've been working with Unix/Solaris/SunOS/Linux/AIX/AUX/BSD/ATT Unix, et. al. now for over twenty years. I mostly love the environment, I'm self-taught, and never have stopped discovering new and cool (and sometimes amazing) things about how Unix works.

    I've pretty much always always been able to sit down and immediately be productive in a Unix environment. Things are stored and arranged in a surprisingly consistent way (not always in the same places, but one of a few organizations (/etc vs. /usr/etc)), and for those hard to find arrangements you need only know "find".

    Considering how many different Unixes there are it's actually impressive how compatible and consistent they are across the Unix universe. It's only my opinion, but I find adapting and adjusting to the Unixes far easier than the various versions of Windows.

  9. Linux vs UNIX by argoff · · Score: 2, Interesting

    In all fairness, it all came from the same tradition - but when AT&T took back the copyright on their original UNIX implementation - that's when it started to seriously fragment into AIX, HPUX, APUX, DGUX, Solaris, and BSD's. Evolution slowed down drastically and left the UNIX community wide open enough for Microsoft to drive a train thru. To compensate, the UNIX community tried to force thru all these standards initiatives (renember CDE?, Motif), but they always failed to stem the tide.

    Then Linux came along, and started to undo the damage that the copyright fragmenting caused to begin with because it was under the GPL, and ever since then it has been the beginning of the end for Microsoft and Linux has taken off in the server space and now it's getting ready to attack the desktop. Moral: free markets are about freedoms and not markets. When you have freedoms the markets will take care of themselves, but when you sacrifice freedoms for markets - you will eventually loose both.

  10. 60's??? WTF??? by IvyKing · · Score: 2, Interesting

    Hard to believe that UNIX came out of Berkeley in 1960's since the first tape from Bell Labs arrived in December 1973. I'm guessing the CS department wanted to have a replacement for Kronos that went away when the CDC-6400 'B' machine got shipped off in January 1973.