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.