Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 15 Dec 1996 13:47:16 -0700 (MST)
From:      Terry Lambert <terry@lambert.org>
To:        eivind@dimaga.com (Eivind Eklund)
Cc:        tony@dell.com, hackers@freebsd.org
Subject:   Re: MAXMEM was: Re: 2.1.6 on Compaq Prosignia 500 (2.1.5
Message-ID:  <199612152047.NAA23869@phaeton.artisoft.com>
In-Reply-To: <3.0.32.19961215044615.00925dd0@dimaga.com> from "Eivind Eklund" at Dec 15, 96 04:46:16 am

next in thread | previous in thread | raw e-mail | index | archive | help
> The problem is that these BIOS calls are (to my knowledge; I'm no BIOS/PC
> hardware guru) only are guaranteed available on EISA computers, and only
> work from protected mode.  To do this "properly" requires both a check to
> see if the computer has an EISA bus (which is in no way guaranteed - EISA
> seems to be dying), a switch to protected mode, and a fetch of the value.
> Few operating systems seems to do this "correctly".  As examples, both
> Novell and SCO need this to be specified as an option.

You forgot to mention that the EISA standard does not specify a
mechanism for determining the per slot memory which the particular
machine has, except from a real mode only BIOS call.

The real soloution is to make VM86() work, and make the BIOS calls
from protected mode by creating a VM, loading code, running the
VM to make real mode BIOS calls, fetching out the results, and
destroying the VM (unless you have a disk driver or something
using it).

Note that in order to do this, you have to read the CMOS values (up to
16M) to know a minimal amount of memory you have to work with.

However the point remains valid: the place to fix this is in the
kernel support for virtual machines, not in the boot blocks themselves.

Consider: the PC is an inept design.  Almost all other systems have
standardized ROM interfaces for protected mode.  Even PS/2 machines
(ABIOS).


					Terry Lambert
					terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199612152047.NAA23869>