Re: Why complicated directory structure in Linux
- From: "Lew Pitcher" <lpitcher@xxxxxxxxxxxx>
- Date: 22 Sep 2006 12:27:53 -0700
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Chris F Clark wrote:
mydejamail@xxxxxxxxxxx writes:
I did not slag it, I simply wanted to understand the rationale for
having 3 bin, usr, lib, etc directories. You also forget that Windows
originated in the main as a single user system and a lot of the design
considerations applying to Unix never got to bear on it.
Just some minor corrections.
Just some minor corrections on your minor corrections.
1) DOS is a descendent, at least indirectly, from Unix. The original
DOS was written to be like CP/M which was written to be like Unix.
There are some bizarrenesses, like why they chose the opposite
slash character for directory separators, but in many ways DOS
looks a lot like a quick-and-dirty Unix knock-off.
DOS had other progentiors also. I think the 3 character file
suffixes (extensions) are a "VMSism" in the sense that DEC OSes of
the time tended to use 3 character file extensions rather than
single letter ones.
It appears that you've got your history scrambled quite a bit
First of MSDOS v1.0 was a repackaged QDOS from Seattle Computer
Products
QDOS was a "knock off" of CP/M, written for the 8086
The CP/M command structure and file naming conventions were modeled
after (IIRC) RSTS/E, which was a DEC operating system that predated VMS
(and Unix) by a fair bit.
It was from these roots that MSDOS inherited the 8.3 filename
convention, and some of the commandline tools.
MSDOS 2.0 added some extensions (such as file paths and certain
utilities) that appear to be borrowed in concept from Unix.
However, MSDOS (in any form) inherited nothing from VMS. Both MSDOS and
VMS "inherited" from common roots in earlier DEC operating systems
(RSTS/E, RSX-11M, TOPS-10, etc.)
Windows is, of course, a MAC knock-off, where MACs now use a
Unix-style kernel in OS-X.
Windows (1.0 to 3.1) were "knock offs" of varying degree of the CDE
("Common Desktop Environment") and progenitors (OpenLook, etc.)
designed for early X systems. Of course, Windows "borrowed" a lot of
concepts from the Mac, which in turn had borrowed from Xerox (Alan
Kay's Dynabook project) and Project Athena at MIT (X, xlib, and all
that followed). Later Windows environments (95, 98, ME) enhanced this
gui.
Windows NT and it's progeny (2K, XP) borrowed heavily from VMS, both in
structure and in implementation. That's no surprise, as the principle
architect for VMS left DEC and was hired by Microsoft to build the
first NT implementations. Early NT used the same GUI base as Windows
did, leaning (as it were) on CDE and the other X environments. Of
course, there was a fair amount of cross-pollination between Windows/NT
and Windows/MSDOS, so the GUIs kept up to each other and some tools
were forwardported and backported.
2) Unix was also originally single something, as in the quote "Unix is
one of what Multics is many of".
Yes, if you ignore the rest of the story, you can believe that.
Multics started off as "the time sharing system to end all time sharing
systems". When it grew too large for AT&T's liking, they got out of the
project. However, a small group of AT&T employees at Bell Labs wanted
to continue the research that Multics started, so they built a
mini-Multics. It was supposed to be "one of what Multics is many of" in
the sense that it wasn't supposed to be nearly as big nor nearly as
complex as Multics, but do a smaller subset of what Multics did.
However, right from the start, Unix was designed to be a simultaneous
multi-user, mult-programming environment, just like Multics was.
Time-sharing is time-sharing, no matter what the scale :-)
And, of course, since hard drives were expensive and small, the
designers of Unix had to arrange for a "staged" approach to file
availability. The system would start off with one hard drive running
(root, and just the directories needed to get things going), and add
("mount") more hard drives as required.
Thus, the directory structure of /bin and /sbin (needed utilities for
startup), and /usr/bin & /usr/sbin (needed tools as things got going),
and /usr/local/bin & /usr/local/sbin (stuff you wrote yourself for the
local system) and the like.
For a good, brief history of Unix, you might want to read "The Creation
of the UNIX* Operating System" at
http://www.bell-labs.com/history/unix/
HTH
- - --
Lew Pitcher
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (MingW32) - WinPT 0.11.12
iD8DBQFFFDk1agVFX4UWr64RAme7AJ4qaCwuUtcpufa3qf9zWH+Xzc9LJQCg69H1
8RIrXxv8WQugrlqifjl3QCQ=
=XmLR
-----END PGP SIGNATURE-----
.
- Follow-Ups:
- Re: Why complicated directory structure in Linux
- From: Jean-David Beyer
- Re: Why complicated directory structure in Linux
- References:
- Why complicated directory structure in Linux
- From: mydejamail
- Re: Why complicated directory structure in Linux
- From: Dave Uhring
- Re: Why complicated directory structure in Linux
- From: mydejamail
- Re: Why complicated directory structure in Linux
- From: Dave Uhring
- Re: Why complicated directory structure in Linux
- From: mydejamail
- Re: Why complicated directory structure in Linux
- From: Chris F Clark
- Why complicated directory structure in Linux
- Prev by Date: Re: Why complicated directory structure in Linux
- Next by Date: Re: Why complicated directory structure in Linux
- Previous by thread: Re: Why complicated directory structure in Linux
- Next by thread: Re: Why complicated directory structure in Linux
- Index(es):
Relevant Pages
|