TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Peter Hansen
from: Lynn Nash
date: 1994-07-09 22:55:00
subject: Mem above 16mb

PH>In a message on 07-02-94, Thomas Meyer said to Stacy Smith:

SS> I have 16 as well (don't want to go higher or I'm afraid I'll lose
SS> the bus-mastering ability of my Adaptec SCSI HA on my ISA bus),
PH>  :
TM>Bus-mastering will work, but the memory above 16 MB is only used for
TM>swapping by OS/2, not as "real" memory.
PH>  :
PH>You make this sound like an absolute.  Is it?  I have a basic ISA
PH>machine (with a couple of VESA slots, but they don't count) with 20MB
PH>installed and seem to get full use of all my memory.  OS2MEMU from the

It is an absolute because the general drivers do not double buffer.
ISA Video cards are restricted from wide arpeture mode operations for
the same reason.  They must use the old EGA 64k window.  The ISA bus
only provides enough address lines for 16 meg (24 lines) and there are
no empty pins on the bus connectors.  ISA is therefore frozen in time
with no expansion possible and still be called ISA.  Here is a pretty
definitive note from Russ Burkoff in BOCA from over a year ago.

 OS2HW CFORUM appended at 23:43:03 on 93/06/14 GMT (by RUSSB at BCRVMPC1)
Subject: SCSI adapter recommendation
Ref:     Append at 18:20:23 on 93/06/14 GMT (by LNK2180 at HONE83)

As you state, the handling of ISA bus-master adapters that are not
capable of directly accessing addresses >16MB is a up to the writer of
the ADD driver.

The ADD driver can indicate it will/(will not) support >16MB addressing.
If ANY ADD driver indicates it does not support >16MB addresses, then
OS/2 will restrict the usage of >16MB memory to act as a swapper cache.

It is easy to say, that ALL drivers should support >16MB addressing,
regardless of the capabilities of the underlying hardware.
Unfortunately, it is much more difficult to implement such a driver.

The INT13 driver was relatively easy to implement, since it only
operates one device at a time with no overlap. Potentially in a
SCSI system up 56 devices PER HOST ADAPTER could be operating
at the same time!

Issues of how many below 16MB memory buffers are RESERVED for the driver
and the editing of Scatter/Gather lists (to remove >16MB pages)
become important. The net is that there is a 2x-3x complexity increase
to implement a SCSI driver to support >16MB addressing when the
underlying hardware does not support it.

The other (IMPORTANT!) piece of information to keep in mind is that
regardless of whether the ADD driver supports >16MB addressing,
IF the underlying hardware does not support >16MB addressing, then
SOMEONE is going to need to move data across the 16MB line. Whether
this is the page manager (as it manages the swapper cache) or the
device driver makes little difference from a system performance
perspective.

Russ Berkoff
OS/2 Device Drivers
************* End Quote ********

Realizing that this seems off topic and to bring it back to programming;
notice the message says any ADD driver.  That means not just bus
masters!  There is a bit which must be set to indicate that >16MB
operation is allowed.  This tidbit apparently caught some of the VESA
driver writers initially and it was brought out at the time of the above
thread.  I think that there is now an obscure reference in the DDK.

 * SLMR 2.1a * Nothing really obnoxious ever totally disappears.

--- DB 1.39/004485

* Origin: The Diamond Bar BBS - 909-923-1031 - Ontario, CA (1:218/101)
SEEN-BY: 12/2442 54/54 620/243 624/102 632/348 640/820 690/660 711/409 413
SEEN-BY: 711/430 807 808 809 934 942 712/353 623 713/888 800/1
@PATH: 218/101 3615/50 229/2 12/2442 711/409 54/54 711/808 809 934

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.