From Exile to X11: A Journey Through Time
Subject:   "window into the true operating system"---indeed!
Date:   2003-03-17 16:19:29
From:   halliday
Dan Benjamin states:
Interestingly, many people think of Terminal as "an application that lets you type commands." In a way, this is true, but it's useful to think of Terminal as a window into the true operating system itself. In fact, it is the GUI you're used to seeing (windows, mouse, graphics) that is the application, and the white text on a black background that is truly the interface.

Unfortunately, this is a blatant misunderstanding of the nature of Unix-like systems. Even in the bad-old-days of character terminals, even the shells---the command interpreters ("sh", "csh", etc.) that took (take) your command line input and did (do) useful things like listing the contents of a directory, or running a program---were (are) simply programs than ran (run) atop the operating system just like any other program. This was always intentional, and fundamental to the design of UNIX and it's layered, "shell" like structure (hence the reason the command interpreters were [are] called shells).

While it is true, and useful, to recognize that the GUI is simply an application, running on the underlying operating system, it is blatantly false to suppose that the shells are in any way "truly the interface"---they are likewise simply applications, running on the underlying operating system. (Shells are just simpler applications, than the GUI application, that need fewer specialized resources from the OS.)

Just a friendly correction. :-) (I write this publicly, not to chastise Dan, but in the hope of helping educate anyone who reads this article.)

Main Topics Oldest First

Showing messages 1 through 2 of 2.

  • "window into the true operating system"---indeed!
    2003-04-22 05:27:35  anonymous2 [View]

    I think your definition of an "operating system" may differ from the definition used by others such as myself.

    UNIX was designed from the very beginning to be a "toolkit". When you installed a base UNIX system you got a bevy of small, powerful utilities that could be strung together into applications using shell scripts. It is at this level -- the "toolkit" level -- that I place the term "operating system".

    Based on your description of an operating system, I can only guess that you're refering to the UNIX kernel as the operating system (i.e. the kernel is at the center, then the "shell" wraps around it, then there are apps and utilities that run in the shell, etc. I consider the operating system to be at the "shell" level).

    If my definition of an operating system were to be used, the terminal actually would be a "window into the true operating system" as that would be the only way to gain access to the scriptable command line tools that make up the UNIX "toolkit".

    Just my 2 shares of VA Linux stock...
  • "window into the true operating system"---indeed!
    2003-03-18 03:53:52  danbenjamin [View]

    I'm amazed at the feedback this sentence is generating :-)

    Actually, I'm glad the level of readership contains people at the technical level to provide this explanation. You're right, of course, but I was trying to present a simple analogy for those uninterested in the deeper technical details. Many readers aren't this technical, but I agree that things should be accurately represented.

    Thanks for pointing this out.

    Perhaps I should have written something more like "In fact, the GUI you're used to seeing (windows, mouse, graphics) is just one way of manipulating your machine. Terminal is another, somtimes more direct route."

    Thanks to all for the feedback!