[comp.sys.ibm.pc] HIMEM.SYS loading device drivers past 1Meg.

rogers@orion.SRC.Honeywell.COM (Brynn Rogers) (08/01/89)

   I am under the impression that HIMEM.SYS can be loaded to use
first 64K past 1Meg as real memory (on 286's only).

   How do I get it to work? I have a good 50K of device drivers that
suck up my memory.  I have tried it (HIMEM.SYS) in the past but it didn't
seem to make a difference, but before I go experimenting with it 
again I would like to hear from someone who has it working right.
(You need to have 1 Meg of memory to do this trick)

   The trick that you can use on a 286 to get 640K +64K-16 Bytes of 
real mode memory is this:
on a 286 the segment FFFF:0000 to FFFF:FFFF is real memory located
from 0FFFF0 to 10FFEF; but on a 8086 it wraps around from 0FFFF0 to 00FFEF.
so 100000 to 10FFEF are available to be used ( FFFF0 to FFFFF is ROM,
in fact, every 80x86 starts executing at FFFF0)
 Brynn Rogers    Honeywell S&RC        rogers@src.honeywell.com
       612-782-7737                use this address if your reply bounces

psfales@cbnewsc.ATT.COM (Peter Fales) (08/01/89)

In article <26663@srcsip.UUCP>, rogers@orion.SRC.Honeywell.COM (Brynn Rogers) writes:
> 
>    I am under the impression that HIMEM.SYS can be loaded to use
> first 64K past 1Meg as real memory (on 286's only).
> 
>    How do I get it to work? I have a good 50K of device drivers that
> suck up my memory.  I have tried it (HIMEM.SYS) in the past but it didn't
> seem to make a difference, but before I go experimenting with it 
> again I would like to hear from someone who has it working right.


HIMEM.SYS does work, but only with applications and drivers that are
written to take advantage of it.  Microsoft has written a document on how to 
use it, and it is included on their "programmer's library" CD-ROM.  I
believe they may also distribute it for free to interested parties.
The purpose of this document is to come up with a standard method for
allocation of the memory above 1 Meg, both the 64K that HIMEM uses and
the remaining memory that RAMdisks, caches, etc. need to share.

The only thing I personally have used that knows how to take advantage
of HIMEM.SYS is Microsoft Windows/286, but it works fine there.  Windows
suddenly finds about 50-60K more memory when HIMEM.SYS is installed.

To repeat:  Normal DOS programs, TSRs, and even COMMAND.COM do not
normally take advantage of HIMEM.SYS.  (At least up to DOS 3.3)
If your applications don't use it, it probably even makes things worse.  I 
believe there is a small part of HIMEM.SYS that stays around in low memory.
-- 
Peter Fales			AT&T, Room 5B-420
				2000 N. Naperville Rd.
UUCP:	...att!peter.fales	Naperville, IL 60566
Domain: peter.fales@att.com	work:	(312) 979-8031

djo7613@blake.acs.washington.edu (Dick O'Connor) (08/01/89)

Speaking of the Microsoft programmer's library CD-ROM package...

Has anyone tried it out?  How fast is access?  Is it worth the $950?
Do you actually use any of the online docs and code samples?

Inquiring (pre-purchase) minds want to know!!

"Moby" Dick O'Connor                            ** DISCLAIMER: It would
Washington Department of Fisheries              ** surprise me if the
Olympia, Washington  98504                      ** rest of the Department
Internet Mail: djo7613@blake.acs.washington.edu ** agreed with any of this!

dennis@se-sd.NCR.COM (Dennis Foster ) (08/03/89)

In article <3045@blake.acs.washington.edu> djo7613@blake.acs.washington.edu (Dick O'Connor) writes:
>Speaking of the Microsoft programmer's library CD-ROM package...
>
>Has anyone tried it out?

We use it here at NCR for 2 different MS-Windows development projects.
We have 8 - 10 users running 386 workstations accessing a 386 file
server.  Our network software is Novell 2.15.  We are using an ArcNET LAN.
On the LAN, we have a CD-ROM server that all users on the net have access
to.  By using 386MAX and 386LOAD, we have been able to configure our
systems to have about 525K free memory AFTER all LAN and CD-ROM software
has been loaded.  This includes the Programmers Library in TSR mode.  All
in all, our configuration makes for a quite usable system.

>How fast is access?

It's by no means a speed burner, but the performance we see is quite
acceptable.  To do a search of the MS-Windows Programmers Reference
for all occurances of CreateWindow takes about 3 seconds.  When considering
all the overhead of accessing the CD-ROM through the LAN, that's not too bad.

>Is it worth the $950?

Now that we have the thing setup and everybody configured to use it, it
is quite useful and IMHO, well worth the money.  I don't think our
configuration was $950, but more on the order of $1500 (including the
multi-user license, ...).  The biggest problem was getting our workstations
configured so that we could have the programmers library software
loaded and still have enough memory to do useful work.  Using 386MAX
and 386LOAD really helped in that area.

The users that seem to benefit most from the CD-ROM are the less
experienced in the group.  It has turned out to be a great learning
tool for developers new to MS-Windows.

>Do you actually use any of the online docs and code samples?

More so the docs than the sample programs.  We tend to use the Programming
Windows book by Charles Petzold as a training guide here and having access
to the source for examples in the book is quite useful.  Once you are up to
speed, however, you tend not to get much use out of the coding samples.

>
>"Moby" Dick O'Connor                            ** DISCLAIMER: It would
>Washington Department of Fisheries              ** surprise me if the
>Olympia, Washington  98504                      ** rest of the Department
>Internet Mail: djo7613@blake.acs.washington.edu ** agreed with any of this!

Dennis Foster
NCR SE-SD
San Diego, California

Howard.Spindel@p8.f14.n105.z1.FIDONET.ORG (Howard Spindel) (08/05/89)

> From: rogers@orion.SRC.Honeywell.COM (Brynn Rogers)
> Date: 31 Jul 89 19:53:21 GMT
> Organization: Honeywell Systems & Research Center, Camden,
> MN
> Message-ID: <26663@srcsip.UUCP>
> Newsgroups: comp.sys.ibm.pc
> 
> 
> I am under the impression that HIMEM.SYS can be loaded to
> use
> first 64K past 1Meg as real memory (on 286's only).
> 
> How do I get it to work? I have a good 50K of device
> drivers that
> suck up my memory.  I have tried it (HIMEM.SYS) in the past
> but it didn't
> seem to make a difference, but before I go experimenting
> with it
> again I would like to hear from someone who has it working
> right.
> (You need to have 1 Meg of memory to do this trick)
> 
> The trick that you can use on a 286 to get 640K +64K-16
> Bytes of
> real mode memory is this:
> on a 286 the segment FFFF:0000 to FFFF:FFFF is real memory
> located
> from 0FFFF0 to 10FFEF; but on a 8086 it wraps around from
> 0FFFF0 to 00FFEF.
> so 100000 to 10FFEF are available to be used ( FFFF0 to
> FFFFF is ROM,
> in fact, every 80x86 starts executing at FFFF0)
> Brynn Rogers    Honeywell S&RC        rogers@src.honeywell.
> com
> 612-782-7737                use this address if your
> reply bounces
> 
HIMEM.SYS allows a structured method of accessing 64KB of memory past the one megabyte limit.  It does not automatically tell an application program or device driver that more memory is available - the program or device driver must be coded specifically to use the new memory.  So unless your device driver has a specific configurable option to tell it to use high memory you won't see any affect by installing HIMEM.SYS.


--  
Howard Spindel - via FidoNet node 1:105/14
	    UUCP: ...!{uunet!oresoft, tektronix!reed}!busker!14.8!Howard.Spindel
	    ARPA: Howard.Spindel@p8.f14.n105.z1.FIDONET.ORG