[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Linux page sizes (memory)
On Fri, 16 Apr 1999 20:27:34 +0200 (IST), "Peter L. Peres" <plp@actcom.co.il>
wrote:
>
>Hi,
>
> I've just peeked at the kernel source, and everything moves in PAGE_SIZE
>increments. The PAGE_SIZE if defined to 0x400 in the 2.0.27 source I
>happen to have here. 0x400 = 1k. So I was wrong about the number ;)
The kernel source code #define's can say whatever they like. That's can't
really change the fact that the x86 HARDWARE use 4K pages, so Peter, your
memory was right...
> I seem to remember 4k pages set at kernel boot time to save space or
>something like that.
You are right.
There *is*, however, a newer mode (available in pentium's and up) that use
either 2M or 4M page size, which can reduce the page size table, and is
probably the only way to get 64GB on intel Xeon chips (Does Pentium II also
supports 64GB physical memory? I think so)..
The interesting story is that this mode was documented in the infamous
"Appendix H" of the Pentium Reference manual, which was only available after
you sign an NDA (Non-Disclusure Agreement) with Intel (probably signed with a
drop of your blood inside a pentagram).
This irritated a lot of people because intel would not publically releease the
details. These includes the Pentium machine specific registers and other
technical details.
The interesting story that I know of the 2M/4M page size is that it was
discovered by other people without Appendix H, because AFAIK (never bothered
to verify this!), the x86 MMU influenced the design of the Intel 860 MMU,
which had this mode. so when people have tried the same bit combinations on
the Pentium, they found out the other mode also worked on the Pentium!
Someone please correct me if the story above is wrong.
>Peter
Udi