Kernel address space consequences of the /3GB switch
One of the adverse consequences of the /3GB switch is that
it forces the kernel to operate inside a much smaller space.
One of the biggest casualties of the limited address space is
the video driver. To manage the memory on the video card, the
driver needs to be able to address it, and the apertures required
are typically quite large.
When the video driver requests a 256MB aperture, the call
is likely to fail
since there simply isn't that much address space available to spare.
All of kernel's bookkeeping needs to fit inside that one gigabyte.
Page tables, page directories, bitmaps, video driver apertures.
It's a very tight squeeze, but if you're willing to cut back
(for example by not requiring such a large video aperture),
you can barely squeak it through.
(A later entry will discuss another casualty of the reduced address space.)
It's like trying to change your clothes inside a small closet.
You can do it, but it's a real struggle, you're going to have
to make sacrifices, and the results aren't always very pretty.