Re: Does linux first allocate under 64MB?

Bradley M Keryan (keryan@andrew.cmu.edu)
Tue, 20 Oct 1998 14:44:40 -0400 (EDT)


On 18 Oct 1998, Marc MERLIN wrote:

>
> The reason I ask is that as you know, many motherboards still have those
> braindead intel chipsets that can only cache 64MB of ram.
>
> If you put more memory in one of those machines, will linux first use the
> lower 64MB, and then the rest? Is there any way to prioritize memory like
> you can prioritize swap, and tell the kernel that memory between 64M and 96M
> for instance, is only to be used the rest of the memory is full, and if
> possible with data that is not as crucial (like disk cache)?
>
> I can also find other examples, where you'd mix slower and faster memory in
> the same PC (like 60ns EDO and old 70ns FPM). But then, I don't know if the
> bios itself will actually handle each pair of memory banks at its optimal
> speed, or if it will just take the lowest common denominator...
>

No, Linux doesn't prioritize memory access in such a way. I have a patch
that will allocate all the memory over 64MB (or whatever size you want)
and make it available as a block device, so you can swap to it or use it
as a ramdisk.

It's called slram, and it's at

http://www.andrew.cmu.edu/~keryan/slram/

The 2.0.x version is out of sync with the 2.1.x version (the 2.1.x
version's documentation is accurate and it uses a registered major number,
while the 2.0.x version doesn't), so I'd recommend trying the latest 2.1.x
patch on that web page. It should apply cleanly to
2.1.whatever-we're-up-to-now, but I have been so swamped with schoolwork
that I haven't had time to compile a kernel since september :)

As for mixing different speeds of memory, I don't think any existing
chipsets can guarantee data integrity without resorting to the lowest
common denominator, since there don't seem to be any chipsets that let you
specify the speed by bank.

Brad

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/