Re: [plug-newbies] Re: Network Operating System

Top Page
Author: Paolo Alexis Falcone
To: Philippine Linux Users' Group Newbie Mailing List
Subject: Re: [plug-newbies] Re: Network Operating System
On 6/13/05, Zak B. Elep <zakame@???> wrote:
> Paolo Alexis Falcone <pfalcone@???> writes:
> > Believe it. It's what's written in many computer science books, has
> > been taught in many operating systems courses around the world (
> > having taught classes myself about this, and having been transmitted
> > this definition like the ones who have been schooled before, during,
> > and after my days in the university ) and there has been no doubt
> > about this definition for three decades already. Unless of course you
> > want to challenge this computer science definition...
> Well, there *is* such a thing as a `transmission beyond the scriptures'.
> Computer science is still quite a youngling discipline, despite what,
> say, 6 decades of development, and has plenty of time to experiment
> defining and redefining and refactoring terms.

I believe it's not redefining - computer science as a practice is more
notorious with the recycling of old ideas in new situations. There's
not much refactoring of terminologies - only recycling and
recombining, and refactoring processes to meet the technological
limitations and capabilities that exist. Some ideas get enhanced,
while some ideas get retired, and some get resurrected in the ebbs and
flows of time and technology.

This is getting OT here on plug-newbies but would be more appropriate
in the compsci lists (where we can get more debates and more debates).

> > Now, a kernel by itself is just useless. This is why an operating
> > system in an IT-centric and commoner's point of view an operating
> > system IMPLIES a full set of tools to do something useful.
> Which is indeed what an operating system is. As a term, `operating
> system' is vague because our use of it is so varied depending on what
> side of the computing fence you're on (or whether you're sitting on said
> fence).

This is what usually happens when there are differences in language
games (as borrowed from a philosophy course).

Common usage has "redefined" terms that computer science has
established - some for the better, some making it more confusing. An
example is the term "swapping" of memory pages from volatile to
non-volatile memory which in computer science parlance is called
"paging", yet people know the term "swapping" better than the term
"paging" (Incidentally Windows refers to it much better, calling
swapfiles "pagefiles").

Same goes with operating systems. The strictest term of an operating
system would fall under its intended usage as an abstraction of
hardware (think what happens when programmers would
have to mind machine-specific routines such as spinning the hard disk
as opposed to what we're so used to do nowadays) and a resource
manager (managing memory, I/O, processes and manipulation of
information given the hardware capabilities - how a kernel should be
architected is yet another story that has matured a long time ago).
Restricting to such would dispel any ambiguity - as there's no one
who'd say that any of those processes aren't required in an operating
system as these roles must be done in ALL operating systems.

On the other hand, a broader approach to the definition of operating
systems opens new cans of worms every time a new innovation takes
place. 10 years ago a web browser isn't an integral part of an
"operating system" like how we'd view it now. In theory you can rip
out the GNU userland from being used as the main utilities by the
Linux kernel (how to do that is another exercise). Maybe in a few
years we won't consider a desktop operating system without
virtualization capabilities (which incidentally IBM has been doing in
their mainframes since the 1980's). Some environments need some
components while some don't (e.g. you would definitely strip down to
the basics what "operating systems" do in embedded environments). Now
how would we define operating systems given that changing definition
in a science that demands an exactness of terminology definitely beats
me. It's like trying to make a theorem with axioms constantly evolving
or changing definitions - you can't.

I for one thing subscribe to both definitions - but that depends on
who I'm talking to. Relative to common users and IT professionals - I
would subscribe to referring an operating system as the sum of all
parts (kernel + userland). OTOH, when I face my computer science
students I would refer to the term like I should as a practitioner of
computer science - referring to the term operating system in the
strictest measure.

That's why it all boils down to point of view. Like axioms - they
devoid of being right or wrong, but mainly serve as definitions to be
subscribed given situations. There's not much "misconception" - only a
difference in context.

Paolo Alexis Falcone
Philippine Linux Users' Group (PLUG) Newbie Mailing List
plug-newbies@??? (#PLUG @
Read the Guidelines:
Searchable Archives: