Coder's Guild Mailing List

RE:Boot disk

Posted by Adam Moss on 1999-08-12

> Date: Tue, 10 Aug 1999 18:37:46 -0700 (PDT)
> From: Casey Deis <shrap69@xxxxx.xxx>
> Subject: boot disk
> 
> 
> I had a thought cross my mind the other day.
> (scary)  How do you make a boot disk?
>  
> For example, say I don't have a hard drive or
> operating system and say
> I have a program on a floppy disk that I want to
> run.  How do I get my
> system to boot from the floppy drive and run the
> program?

> Shrapnel


Shrapnel,

When you run a program, you are requesting that the
computer toss an executable file's contents into
memory, process a file header, and set the CS register
and IP register to the first byte of the file.  Any
programs running in the background (like an operating
system) have their address pushed onto the stack
segment.  So, if you want to run a program which is
stored as an executable file, you need an operating
system.  Don't forget, that IBM's used to run on CPM,
and CPM programs were NOT executable under DOS.

  When you boot up your computer, execution
automatically begin as a given point.  I think that CS
= 0x0000 and IP = 0xFFFF, but I'm not sure.  At this
point, there's usually a memory check, an option to
enter setup, your computer looks for an operating
system,first on a floppy drive, then the hard drive,
assuming that your computer is setup with default
parameters.

  When hard drives were uncommon, some IBM's ran DOS
off of a floppy drive.  You inserted DOS when the
computer booted, and usually after any program
executed, depending on your memory resources.  Apple
II's did not always use an operating system, and had
an understood executable file format.  However, PC's
have always been Frankenstein's monsters.  They were
designed to be extremely open-ended, both hardware and
software wise.  When the original 0x8086 machines came
out, there were three operating systems available.

  If you're a badass, you can write enough assembly
language routines to handle executable programs. Don't
forget, however that DOS compromises far more than the
Command Prompt.  All throughout the program, OS calls
are made to allocate memory, process input and output,
and maintain a file tree.  There are very, very few
programs that use no OS routines, and you would have
to work very, very hard to get even these programs to
run.  So, if you don't want an OS on your hard drive,
simply insert a DOS disk everytime you boot up your
computer and exit the installation routine.

  How do you make a boot disk?  Format a floppy disk.
Use the /s argument with the format command if you're
doing it from the command prompt, or select the
appropriate checkbox from the windows prompt.  A boot
disk is either a sub-set of an operating system or a
set of default setting in which to run an installed
operating system with.

Does that answer your question?
Adam Moss

_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com