[comp.sys.ibm.pc.misc] DOS extenders...

luis@ys2.uucp (Luis Chanu) (06/13/91)

Howdy Gang,
    I have heard people talk about DOS extenders, and usually naming PharLap.
What exactly is a DOS extender?  Is it to get more memory?  Are there
other things which it does?  Any info appreciated...

                                 Luis...

-------------------------------------------------------------------------------
Luis Chanu  /  Awesome Possum         "Live every day as if it were your last,
                                         because one day you will be right."
UUCP: ...sun!ys2!luis
 or                                    "The nice thing about standards is that
UUCP: ...mips!grinch!luis                 there are so many to choose from."

              Disk-Claimer: That's not your disk, that's my disk.
-------------------------------------------------------------------------------
-- 
-------------------------------------------------------------------------------
Luis Chanu  /  Awesome Possum         "Live every day as if it were your last,
                                         because one day you will be right."
UUCP: ...sun!ys2!luis

pshuang@ATHENA.MIT.EDU (06/18/91)

In article <1991Jun13.011836.8175@ys2.uucp> luis@ys2.uucp (Luis Chanu) writes:

 > What exactly is a DOS extender?  Is it to get more memory?  Are there
 > other things which it does?  Any info appreciated...

DOS extenders are available from many different companies.  They share a
common purpose: to permit programmers to take advantage of new Intel
processor chips without having to change their programs very much, or
change their way of thinking how to program.  DOS extenders are usually
supplied to work with certain compilers, and are incorporated into the
applications which are shipped to you, the end user.

Some horizontal market applications which use DOS extenders include
Lotus 1-2-3 version 3.x, AutoCAD 386, and Paradox 386.  The foremost
does not come in a ordinary DOS version, but the latter two do; the
versions running under DOS extenders are considerably faster than the
versions that don't primarily because of the easy access to more memory.

DOS extenders permit the programmer to use the 80286 and i386/i486 chips
in protected mode; the advantages include being able to address directly
all the extended memory which is in your machine for data and code
storage, relaxation of the need to maintain data in 64Kb segments, and
possibly inter-segment memory protection (I'm not positive on this last
one -- not sure if the commercially available DOS extenders provide this
service).  You can think of them as being somewhat similar to Windows
(indeed, Windows can be utilized as a limited DOS extender... see some
of the recent PC Magazine Lab articles) in that they sit between the
application and DOS/hardware and act as the go-between; DOS extenders do
not provide as many services as the Windows environment does, but then
they are not as restrictive as Windows is (i.e. well-behaved Windows
programs must be written to output to graphics windows and co-exist with
other programs in an event-driven user interface).

DOS extenders take care of switching back and forth between protected
mode, where the application can run, and real mode, where DOS and the
BIOS of the machine can run and supply the application with the usual
services, i.e. file input and output, keyboard input and screen output,
hardware access, etc.  A programmer can write an application to work
with a DOS extender in pretty much the same way that he would write the
application to work under pure MS-DOS, with very few exceptions and
restrictions to what he is allowed to do.  He doesn't have to master new
programming paradigms, he just gets more elbow room to work with.

If you start using software that incorporate DOS extenders, you may run
into the terms VCPI and DPMI, which stand for Virtual Control Program
Interface and DOS Protected Mode Interface, respectively.  You do not
have to know more than the fact that they provide a standard by which
multiple programs which want to take advantage of the capabilities of
more powerful Intel chips can stay out of each other's way.  VCPI is the
more mature standard and is best known in connection with Quarterdeck
and Desqview.  DMPI is a relatively new standard (only version 0.9
implementations exist) which came out with Microsoft Windows 3.0 and may
well supplant VCPI.  Be sure that whatever you get is compliant with at
least one of these standards, preferably DMPI.