From: pdunlap@cs.utexas.edu (Peter Dunlap)
Newsgroups: comp.os.os2.advocacy
Subject: Re: Windows 3.1 an "operating system"?
Date: 18 Nov 1992 16:30:38 -0600
Organization: CS Dept, University of Texas at Austin
NNTP-Posting-Host: ar-rimal.cs.utexas.edu

In article <1992Nov18.184602.13761@nosc.mil> discar@nosc.mil (Joe Discar) writes:

[Several levels of old comments deleted]
>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)....
>


I think you would be hard pressed to quote a textbook which said
that any software used by the OS is automatically part of it.

>>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.
>


Uh, so is what you're saying that if you're *using* BASIC then it's part of
the OS?  BASIC is indeed now part of DOS, rather than the BIOS (although for
a while it was in both places, but only the DOS version could use the disk)
but this just means they have added BASIC to DOS and removed it from the 
BIOS.  It certainly does not mean that the BIOS is part of DOS.

I really doubt that DOS ever depended on the BASIC ROMs.  Therefore, they are
certainly not part of DOS.  

[stuff deleted]
>>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
I can't believe you said that... DOS can work on machines without BIOS because
DOS does not *need* the BIOS.  BIOS is not part of DOS.  Any program that does
not use DOS calls exclusively will not work on such a machine, whether it is
using the BIOS or accessing the hardware directly.

>rely on techniques taught in ****whoops..basically he said "a DOS programming
>book" here* 
>break on such systems?
>
OK, since I messed up his questions, basically here it is again:
"Why do techniques taught in DOS programming manuals not work on systems 
without BIOS.

This is because DOS has very limited functionallity, and to do some things
that every program needs to do it is necessary to either access the
hardware directly or use BIOS calls.  Since the BIOS is standardized,
naturally the books suggest using it.  

>>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?
>

I would say that it is not valid, since that very statement implies that 
the BIOS pre-existed DOS.

["is BIOS hardware or software" statement deleted, since it is getting
  awfully repetitive]

>>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?
>

That fact that OS/2 does not work with some BIOSs (just what is the plural of
BIOS?) implies that BIOS is part of the computer architecture. No one ever said
that OS/2  could not load on a machine because it had a DOS conflict because
DOS is an operating system, and OS/2 replaces it.


[referring to BIOS]
>>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.
>
>

>>>>>DOS<<<<<< is part of the PC architecture????? And OS/2 and Windows??
Blech!

I think maybe you should read Hennesey and Patterson for a definition of
computer architecture.

You will probably find that the definition does not include every operating
system available for the computer.


Doesn't it seem more logical that if you replace one operating system (DOS)
with another (OS/2, UNIX, anything) that the parts of the computer which
remain constant (video hardware, CPU, diskdrive, *BIOS*) are not part of
the operating system?

It seems to me that your idea that BIOS is part of the operating system
leads to a number of inconsistancies.



Peter Dunlap            |  CS Department
pdunlap@cs.utexas.edu   |  University of Texas at Austin
------
It's not like I never make mistakes...I bought a PS/2