Linux is Obsolete and follow up postings
[Prev][Next][Index][Thread]
Linux is Obsolete and follow up postings
-
Subject: Linux is Obsolete and follow up postings
-
From: dmiller@acg.uucp (David Miller)
-
Date: 3 Feb 92 01:03:46 GMT
-
Distribution: all
-
Newsgroups: comp.os.minix
-
Organization: AppliedComputerGroup
As an observer interested in operating system design, I couldn't resist this
thread. Please realize that I am not really experienced with minux
or linux: I have been into unix for many years. First, a few observations:
Minix was written to be an educational tool for ASTs' classes, not a commercial
operating system. It was never a design parameter to have it run freely
available source code for unix systems. I think it was also a statement of
how operating systems should be designed, with a micro kernel and seperate
processes covering as much of the required functionality as possible.
Linux was written mostly as a learning exercise on Linus part - how to
program the 386 family. Designing the ultimate operating system was not
an objective. Providing a usable, free platform that would run all sorts
of widely available free software was a consideration, and one that appears
to have been well met.
Criticism from anyone that either of these systems isn't what *they* would
like it to be is misplaced. After all, anybody that has a computer that will
run either system is free to do what Linus and Andrew did: write your own!
I, for one, applaud Linus for his considerable effort in developing Linux
and his decision to make it free to everybody. I applaud AST for his
effort to make minix affordable - I have real trouble relating to complaints
that minix isn't free. If you can afford the time to explore minix, and a
basic computer system, $150 is not much more - and you do get a book to go
with it.
Next, a few questions for the professor:
Is minix supposed to be a "real operating system" or an educational tool ?
As an educational tool it is an excellent work. As a real operating system
it presents some terribly rough edges (why no malloc() ?, just for starters)
My feeling from reading The Book and listening to postings here is that you
wanted a tool to teach your classes, and a lot of others wanted to play with
an affordable operating system. These others have been trying to bolt on
enough features to make it a "real operating system", with less than
outstanding success.
Why split fundemental os functions, such as memory management, into user
processes? As all good *nix gurus know, the means to success is to
divide and conquer, with the goal being to *simplify* the problem into
managable, well defined components. If splitting basic parts of the
operating system into user space processes complicates the function by
introducing additional mechanisms (message passing, complicated signals),
have we met the objective of simplifying the design and implementation?
I agree that *nix has suffered a bad case of feature-itis - especially
sysVr4. Perhaps the features that people want for either functionality
or compatibility could be offered by run-time loadable modules/libraries
that offer these features. The micro-kernel would still be a base-level
resource manager that also routes function requests to the appropriate
module/library. The modules could be threads or user processes. (I think
- os hackers please correct me :-) )
Just my $.04 worth - please feel free to post or email responses.
I have no formal progressive training in computer science, so I am really
asking these questions in ignorance. I suspect a lot of others on the
net have similar questions in their own minds, but I've been wrong before.
--
-- David
David Miller Phone: (207) 873-3317
Applied Computer Group Fax: (207) 872-5018
5 Kimball Street UUCP: uunet!acg!dmiller