From: linstee@dutecaj.et.tudelft.nl (Erik van Linstee)
Subject: Re: Windows 3.1 an "operating system"?
Organization: Delft University of Technology, Dept. of Electrical Engineering
Date: Wed, 18 Nov 1992 10:57:30 GMT

discar@nosc.mil (Joe Discar) writes:

>In article <1992Nov16.171921.25497@mksol.dseg.ti.com> mccall@mksol.dseg.ti.com (fred j mccall 575-3539) writes:
>>>Likewise, if *I* were writing DOS from scratch, I would say "Well, the
>>>console I/O is pretty much covered (cough,cough) by the BIOS--but what
>>>I really need is I/O that makes sense from a filesystem point of view
>>>(aka, CON:)."  Likewise, graphics is pretty much covered (albeit poorly)
>>>by the BIOS... an OS doesn't *need* to duplicate the functionality--if
>>>it *assumes* that the functionality will be there at a lower level (bad
>>>assumption).  In this case, I stand by what I said... on *my* system, at
>>>least, the BIOS is as much a part of DOS as the bootstrap loader, IBMIO.SYS,
>>>etc...
>>
>>>Again, Fred, you seem to like to argue semantics.  
>>
>>You think this is just a question of SEMANTICS?  Bwwawaaaahahahahaha.

>Yes, I would rather it be a question of semantics than believe that your are
>a blithering idiot. :)  I've referenced at least two DOS programming books
>(not BIOS programming books, mind you) that implicitly shows doing graphics
>and mode changes via INT 10.  Where are your references?

>Yes, semantics.  I believe that a SYSTEM is made of its parts.  You believe
>a SYSTEM can stand alone (semantically) without its underlying layers.  I
>believe that it's valid for a DOS programmer to rely on the fact that a
>"BIOS" is a callable layer for his application (although this is bad
>programming practice for portability, it's still valid)--and I believe that
>it's valid for an OS designer to say "hey, why should I write an API for
>function X when the app programmer can always call the BIOS?" (again, poor
>design practice, but valid nonetheless).

>>
>>>If you don't think
>>>the the BIOS is part of DOS, boot up DOS, and pull out your BIOS and try
>>>to get *any* DOS utility to work.  Can't do it, can you?
>>
>>What an irrelevant and stupid example, Joe.  Gee, you don't think that
>>DOS is part of WordPerfect?  Remove DOS and try to get any WordPerfect
>>software to run.  Can't do it, can you?  Gee, you don't think the
>>computer is part of DOS?  Remove the computer and try to get DOS to
>>run.  Can't do it, can you?  You don't think the FUSE IN THE FRIGGING
>>WALL is part of DOS?  Remove it.  Can't get DOS to run, can you?

>Which is why Wordperfect is a *DOS* (and not a C64) application.  The other
>examples are heresay: a fuse is hardware, the computer is hardware--the
>BIOS (as I said before, but you're too busy looking for volatile material
>to throw into a flamewar) is "somewhere between hardware and software."  
>Better people than you and I are arguing whether or not firmware is hardware
>or software: I prefer to think that the BIOS is more software than hardware.
>Again, semantics.

>>
>>>>
>>>>Let's see what we can prove here with this.  Ok, if it is a given that
>>>>the BIOS is part of DOS (because it uses it), then it follows that the
>>>>BIOS is part of OS/2 (because it will use it if it doesn't find a
>>>>specialized hardware driver for a piece of hardware).  That makes DOS
>>>>and OS/2 the same thing (via the reasoning that things made of the
>>>>same bits are the same things).  Yes, very silly and violates some
>>>>logical rules.  So does the contention that the BIOS is part of DOS
>>>>and your attempt now to 'deny' what you said.
>>
>>>No.  DNA is part of *me*, DNA is also a part of you.  It doesn't mean that
>>>you and I are the same--because all the other layers above make us
>>>different (at least I would hope so, God forbid if I'm anything like you! :)
>>>For OS/2, at least, the relationship is less clear--because it only uses
>>>the BIOS to boot from (does it need a BIOS to run a DOS window?). 
>>
>>>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
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.
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? 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
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
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 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.
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.
To seperate pieces, combined together being a useful computer system.

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 ...
It is part of the PC architecture.


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

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