From: discar@nosc.mil (Joe Discar)
Subject: Re: Windows 3.1 an "operating system"?
Organization: Naval Ocean Systems Center, San Diego
Date: Wed, 18 Nov 1992 18:46:02 GMT

In article <1992Nov18.105730.27496@donau.et.tudelft.nl> linstee@dutecaj.et.tudelft.nl (Erik van Linstee) writes:
>discar@nosc.mil (Joe Discar) writes:
>>>
>>>>The thought of "being a part of" only sounds silly if you idiotically try
>>>>to "partition" a particular piece of software instead of viewing the 
>>>>entire system.  My business makes use of computer distributors... this does
>>>>not mean my business if a part of a particular computer distributor
>>>>(or vice versa) but that both agencies are PART of the SAME DISTRIBUTION
>>>>SYSTEM.
>>>
>>>>Likewise, although a BIOS can be written, developed, and tested by one
>>>>agency--and the OS software is written, developed, marketed, etc. by another
>>>>agency--when the OS is running on top of the BIOS, they are part of the
>>>>same operating SYSTEM.  Likewise the hardware/operating system/application
>>>>are all part of the Computer SYSTEM.  If dBASE III Plus decides to bypass
>>>>DOS to make a video call--it doesn't mean that dBASE III Plus is not
>>>>a DOS application.
>>>
>>>>Like always, you and I are arguing semantics.
>>>
>>>No, like always, you are making up your own definitions and then
>>>insisting they they are the 'right' ones.  They aren't.
>
>>Gee, stop your idiotic blabbing--you are very quick to say that I make up
>>my own definitions, yet you never post what yours are.  OK, Mr. Wizard,
>>what is an Operating System?  What is a Computer System? What is
>>a System?  Answer or shut up (I'm tired of these uneducated, closed-minded
>>posts).  BTW.  Before you even try to blast me about what I mean by
>>"operating SYSTEM" <--- same emphasis as my previous post...
>
>>System  (sis-tem), n.  1.  An assemblage or combination of things or parts
>>forming a complex or unitary whole.
>
>>		       Random House College Dictionary.
>
>>Okay, Spassky, your move.
>
>Well, I'm not Spassky, but I'll move anyway. If you were to change the
>phrase "operating system" into "computer system" you're right. Cause

No, actually if you consider that no matter which textbook you reference--an
operating system is *software* that accomplishes x,y,z functions--then an
OS, being a "system" can be thought of as an assemblage of *software* that
forms a "complex or unitary whole" (implied: to perform the functions of
an OS).  Therefore an "operating system" only includes software (the drivers,
the APIs, etc.) whereas a "computer system" includes both hardware and 
software.

As I said, for DOS, the BIOS is definitely part of the "operating system."
Is it a part of OS/2?  Only to boot--unless it is used for something else,
such as a DOS VM window (which I am not certain it is).  Is the BIOS software?
As I stated before, lots of people argue if firmware is hardware or software.
If it is hardware, then the BIOS is NOT part of the operating system (but
part of the "computer system")--if it's software, then the BIOS can be 
considered part of DOS.  I, being more a code slinger than a solder
shooter, consider the BIOS software, and therefore part of the OS.

>that's what you appear to be referencing here. You seem to argue that
>the components that make the system work are part of that system. Well,
>that depends on what system you're considering. You say that the operating
>system is the collection of parts that let the apps use the hardware.

I say that an operating SYSTEM is a collection of *software* parts that let
the apps use the hardware (I am not trying to change the textbook definition
of an OS, all of which agree that an OS is software)....

>If so, you would have to include the hardware in that. Dos uses the
>BIOS and that makes it part of DOS you say, now I ask you, where does
>the D in DOS stand for? 

... so therefore I cannot include "hardware" in that--since THAT would
change the definition of an operating system.


>Or, early IBM machines had the Basic interpreter
>included in the BIOS, does that make Basic part of DOS? If it does,
>I have a deficient DOS cause I never had Basic on it. And what about

And if you were using those DOS utilities (BASIC and BASICA), yes you would
have a deficient DOS.  Now, of course, DOS doesn't depend on the BASIC
ROMs, so therefore the BASIC ROMs are no longer a part of DOS... as it's
running.

>the BIOS on the video card, or the harddisk controler? Are they all
>part of DOS. Clearly not. DOS uses them because they are there, as

Are drivers a part of OS/2?  The BIOS on a video card functions identically
to a software driver loaded from disk.

>it uses the microcode on the CPU. The Operating System nucleus is the
>first layer above the architecture it is built on (generally the hardware)

And again, we reach a semantical issue: is the BIOS software or hardware?

>and the architecture DOS was built on is the IBM PC, a machine
>consisting of a 8086 CPU, several parts for the interrupt mechanism,
>an io controler, a data bus and a BIOS to provide an interface to the
>hardware then available.
>That is the architecture.

Then why does DOS work on AT&T BIOSless machines?  But the DOS applications that
rely on techniques taught in the Waite Group's Programming MS-DOS book
break on such systems?

>DOS is a piece of software to be loaded from disk to provide an
>abstraction from the hardware so users can load applications, manipulate
>files and use the harware to their avail.
>That is the operating system called DOS.

Correct.  A good OS should insulate the programmer from the lower software 
layers.  But is it not still valid to design an OS that doesn't perform
such insulation--in other words, to make the BIOS API an inherent part of
DOS?

>To seperate pieces, combined together being a useful computer system.

Or the software parts into an Operating System.  Semantics:  Is the BIOS
software or hardware?

>
>To say it once again, the BIOS is not part of DOS, is not part of OS2,
>is not part of Xenix, is not part of Linux, is not part of BSD386,
>is not part of ...

This is only true, again, if you do not consider the BIOS a piece of software.
There is the echo of another argument: several people have installed
OS/2 on various machines--and could not boot because of BIOS problems (yet,
may I point out that such "BIOS" problems do not exist on other operating
systems such as Windows+DOS or DOS).  There are two schools of thought:
(1)  The hardware is non-compliant (this is what most OS/2 advocates
assert).  or (2)  OS/2 still needs ironing out (this is what the trade rags
basically say).  Which is right?  Are incompatibility problems an issue with
the hardware or with the software?

>It is part of the PC architecture.
>
>

So is DOS, so is OS/2, so is Windows.  I believe (as I said before in a 
previous post) that the issue of the BIOS being a part of OS/2 is not
quite clear since OS/2 "uses" the BIOS only to boot (and I am uncertain if
OS/2 depends on the BIOS to perform DOS windows).  But the BIOS is 
definitely part of the DOS architecture--which is why DOS software breaks
if the BIOS is not very close to 100% PC compliant.


>>>
>>>>>
>>>>>So, which has the 'better' BIOS; DOS or OS/2.  They are identical, but
>>>>>one of them is better if you go by the way Joe measures 'better'.
>>>
>>>>The BIOS is the same no matter what.  The foundation design for two
>>>>homes can be identical too (same concrete, same thickness, same layout), but
>>>>the homes that sit on top of them could be vastly different.  If you think
>>>>that having the same foundation (regardless of how that foundation is used)
>>>>makes two software packages identical, then you are even more silly than
>>>>this entire thread.  :)
>>>
>>>Yes, the BIOS *IS* the same, but by your definitions, one of DOS and
>>>OS/2 must be 'better' because you can make more money with it.
>>>Therefore, using your 'bent' definitions of 'best', the one you can
>>>make the most money with must have the 'best' BIOS, even though they
>>>are in fact identical.
>
>>I have never said that one BIOS is better than another (gawd, do you need to
>>take reading lessons too? :)  I simply said that they are a foundation (or
>>at least in use by) standard PC operating systems; DOS uses the BIOS
>>extensively, OS/2 uses it to boot.  The argument hasn't been which OS has the
>>"best" BIOS--but rather, whether the BIOS can be thought of as part of an
>>operating system.  You must be thinking of another thread (or not thinking
>>at all)...  :-)
>
>I think you are getting confused by this BIOS thing.
>Every computer system needs some mechanism to start it. In general
>a computer system is build of the CPU, ROM, RAM and IO. The ROM
>contains the code to allow the system to load an operating system.
>On Disk Operating Systems, like MSDOS is, this generally means, a
>piece of code to access a disk which might contain further code
>to initialise the hardware and load the system. This is a very small
>piece of code.
>On the PC architecture this piece of code is pointed to by a pointer
>at FFFF:FFFC which, obviously, resides in ROM. Also the PC architecture
>provides a means of accessing the hardware through a Basic Input
>Output System, also in ROM. Now guess what, both of these pieces
>of software are in ROM, the same ROM in fact. On piece being the
>bootstrap loader, the other being the BIOS. Two seperate issues
>but since the bootstrap loader is only a small piece of code it
>is not mentioned and those one or two ROMs are just refered to as
>the BIOS, while it actully is the BIOS and the bootstrap loader.

Right.  But as I said, since OS/2 only uses the BIOS to boot, the 
classification isn't clear.  However, if it depends on the BIOS after it
boots, then the BIOS is part of OS/2.  There is a simple test for this,
of course, simply disable the select line on the BIOS ROM after OS/2
has booted--and if it still runs without fail, and OS/2 applications
don't break, then the BIOS is NOT part of OS/2.


>
>Now why this effort to illustrate the architecture and point out
>such a minor generalisation? Well, when an operating system
>provides all the code necessary to access the hardware thereby
>replacing the BIOS code, it doesn't need the BIOS at all, not

But DOS doesn't replace the BIOS code... in fact, DOS programmers RELY on
the fact that the BIOS is there (since it is assumed it must be since they're
running DOS).  The issue is not quite as clear for OS/2.

>even to bootstrap, even though the bootstrap loader is in the same
>package as the BIOS is so you can't just take *the* BIOS out.
>What you can do is copy the bootstrap code into another ROM, leave
>it empty otherwise and stick that in. The operating system will
>function just as merily, not even knowing the BIOS is gone or there
>even was such a thing.
>
>
>Erik van Linstee
>Delft University of Technology
>Department of Computer Architecture
>(I don't normally include this, but just to prevent people
>from following up saying, well what do you know. So now you know)
>
>
>-- 
>Erik van Linstee   |   Delft University of Technology   |   I'll be back ... 
>----
>   We are god, 'cause only we can create the idea of his existence
>   in our holy brains...  (Yello)


Newsgroups: comp.os.os2.advocacy,comp.os.os2.misc