POV-Ray : Newsgroups : povray.off-topic : Re: Radiosity Status: Giving Up... : Re: Radiosity Status: Giving Up... Server Time
6 Sep 2024 19:19:07 EDT (-0400)
  Re: Radiosity Status: Giving Up...  
From: Darren New
Date: 3 Jan 2009 18:16:34
Message: <495ff1d2@news.povray.org>
Warp wrote:
>   I remember we having this same conversation years ago. 

Nice dodge!  With the number of statements you've made disclaiming any need 
to actually answer the question, you could have answered the question. That 
said, I'm going to keep going, because I feel like it. You don't have to 
believe that anything in this post is addressing you or anything you've 
said. Feel free to also get annoyed if you think I'm lying about the 
immediately preceding sentence also.



There's a logical falacy wherein you use argument ad absurdum, where one 
says "If X, then Y, and Y is clearly not acceptable, so not X." Except for 
that to work, one actually needs that logical implication there. It doesn't 
work to say "If it were raining, then everyone would want to be dead, which 
is clearly untrue, so it must not be raining."  This flaw is usually pretty 
obvious in religious arguments, as well, along the lines of "If there were 
no God, then nobody would have a reason to be good or even want to live, so 
obviously there must be a God." It does of course work in some places, like 
the proof that every lossless compressor must increase the size of some 
inputs. It also seems to work in some cases but fails due to implicit 
assumptions, like Aristotle's proof that the universe is infinite, when what 
he actually proved was that the universe is unbounded.



Getting back to operating systems, after thinking about it a bit (because 
what else am I going to do while stairmastering?), I think the determinant 
is whether the "OS" manages resources between different applications (either 
concurrently or consecutively).

If there's only one possible application, and it runs without maintaining 
any state between runs, then whatever it's on top of isn't an OS, but just a 
library (or BIOS, which is a special case). Disregarding the built-in wall 
clock, my microwave oven is back to the same state it shipped from the 
factory every time it finishes cooking something. There's nothing carrying 
over from "run" to "run", so it has one application, and that application 
never interacts with anything else, including later executions of itself.

In this sense, neither GRUB nor a BIOS is an operating system. Every time 
you run GRUB, it starts from scratch without regard for what happened 
before, and it interacts with nothing except its own data (the OS it's 
loading). The BIOS also doesn't share resources between applications - it 
runs one application at a time (such as Windows or MS-DOS or Linux) and it 
gives that OS complete control over the hardware without providing any 
mechanisms for (for example) reserving space on a floppy for one boot and 
not the other.

The partition tables on a HD are the very first step of turning a boot 
loader into a "operating system". However, again, there's nothing "managed". 
The BIOS doesn't use the partition table, nor does it create or enforce it. 
The boot record stored on the hard disk uses the partition table, and the 
operating systems by convention respect it, but those aren't part of the BIOS.

I also think it doesn't make sense to talk about an operating system 
"managing resources for an application" if it's not around while the 
application is running. Hence, things like GRUB, which are overwritten as 
part of the boot process and are gone until you reset the machine, don't 
count as operating systems.

If the "OS" is linked into every application, which is loaded into memory 
and then overwritten when the next application is run, that may or may not 
be an "operating system" depending on what it does, IMO. That is, of course, 
more open to interpretation. I don't think FORTH counts as an operating 
system, as there's no "application" outside the FORTH system that manages 
the sharing of any resources - instead, there are conventions where one 
manually notes which blocks of disk space belong to which files, for 
example. This is about as close to an "operating system" as you can get 
without actually being one, I think.

MS-DOS (and Classic Mac, Amiga OS, MS Xenix, CP/M, TRS-DOS, etc) would all 
be operating systems because they manage the disk space for applications (if 
nothing else). Two independent applications can have the space they used 
managed without interference, even if they can't run at the same time.

Given that people are calling things "operating systems" in 1956 in the IBM 
704, long before a computer was even capable of running two programs at 
once, I think it's pretty obvious that most of the world (including those 
who invented the term) think that "operating system" doesn't require 
concurrent execution, preemptive scheduling, or support of multiple users. 
Otherwise, we wouldn't have the more specialized terms "batch processing 
OS", "multi-user OS", "timeshare OS", or "preemptive multitasking OS".

-- 
   Darren New, San Diego CA, USA (PST)
   Why is there a chainsaw in DOOM?
   There aren't any trees on Mars.


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.