Jim Shearer's review of "The UNIX Time-Sharing System"

From: Shearer, James E (james.e.shearer_at_boeing.com)
Date: Thu Jan 08 2004 - 09:52:31 PST

  • Next message: Raz Mathias: "The Unix Time-Sharing System"

    A review of "The UNIX Time-Sharing System"

     

    The UNIX Time Sharing System (Ritchie and Thompson, 1974) describes the
    third version of the now-ubiquitous OS. People familiar with
    GUI-centric operating systems might be surprised to see UNIX described
    in terms of "simplicity, elegance, and ease of use", but compared to
    what came before; it is definitely all of these. Perhaps UNIX's single
    greatest contribution to the world of computing is the abstraction of
    the concept of "file" as described in this paper. While previous (and
    some subsequent) systems differentiate between different types of files
    and manage them differently, UNIX represents all data of any kind as
    just a binary file, abstracting user data and applications away from the
    realm of the operating system. Further, by treating directories and I/O
    interfaces as files (including std-in, std-out, and std-err) UNIX is
    phenomenally expandable and flexible. The directing and piping
    capability that derives from this file abstraction gives UNIX its
    simplicity and elegance. My enthusiasm for this approach stems to a
    large degree from my own personal experience using an IBM-370 running
    Job Control Language (JCL). It is not uncommon for a user to need to
    know about 2000 JCL commands to use the system effectively. In
    comparision, a small number of shell commands used in conjunction with
    UNIX's directing and piping capability allow even a novice user the
    ability to route and filter data in surprising ways.

     

    The paper also provides an excellent description of the magic i-list
    that makes this file abstraction possible, but here it is clear that
    event the authors had no idea of the power of the idea they created.
    The paper talks about small and large files and notes the implied limit
    of 1 MB for a large file. There is no indication the authors imagined
    that these fields of the i-table could be used to chain to yet more
    i-table parameters, including vastly larger file sizes, as is standard
    practice in current UNIX variants.

     

    I found the process discussion (section 5 of the paper) to be
    interesting but not as revolutionary as the file abstraction discussion.
    This may be because I am not as familiar with the alternatives and so do
    not fully appreciate the significance of the design.

     

     

    James E. Shearer

     


  • Next message: Raz Mathias: "The Unix Time-Sharing System"

    This archive was generated by hypermail 2.1.6 : Thu Jan 08 2004 - 09:55:49 PST