3 ms·
Man, this gave me flashbacks to trying to put 3.5-4GB of RAM into motherboards in 2003. After a bunch of iterations of telling the motherboard manufacturers wh
by uranium 8y ago
Man, this gave me flashbacks to trying to put 3.5-4GB of RAM into motherboards in 2003. After a bunch of iterations of telling the motherboard manufacturers what we wanted, and having them hack the BIOS to work for exactly one DIMM configuration, then fail on anything else, I eventually gave up expecting most of the BIOS to work at all. I added code to the Linux startup sequence that ignored everything the BIOS said about memory maps, queried what physical DIMMS were there, and rebuilt my maps by hand.
It's been so long that I can't tell an e820 map from an MTRR, but this was still a fun read.
- JoshTriplett 8y ago> I added code to the Linux startup sequence that ignored everything the BIOS said about memory maps, queried what physical DIMMS were there, and rebuilt my maps by hand. I'd love to see this code; doing memory management entirely in the OS and ignoring the BIOS sounds like fun (modulo working around BIOS-specific memory reservations so the OS doesn't get its memory stomped on by the BIOS).
- ianai 8y agoPost-UEFI I wish this were more of a viable option.
- josephg 8y agoI agree. I spent some time last year running various scripts to get an NVIDIA GPU working over thunderbolt in windows on a macbook pro. The problem is the DSDT table in many macbooks doesn't allocate enough space for pci-e devices. The NVIDIA driver in windows tries to allocate memory via that table to talk to the eGPU and it fails. For some reason it works fine under MacOS - either macos ignores the DSDT table completely, or it allocates memory a bit differently than windows. In any case, the answer is to use obscure tools to download and patch the DSDT tables to allocate more RAM toward PCI-e. Doing this through UEFI feels very magic. I don't know why so much of this stuff is up to the hardware vendor. Maybe there's a good reason, but I would expect the windows memory manager could do a much better job if it didn't have a bunch of memory range sizes hardcoded by apple.
- amiga-workbench 8y agoMy Toshiba Libretto has similar issues where the BIOS will lie about the capacity of the hard drive, its so bad that when reinstalling Windows I've got to format the drive in another computer.
- onion2k 8y agoI spent many, many hours tweaking autoexec.bat and config.sys on DOS to get 3Mb of free memory so Doom would run. Kids today...
- dougg3 8y agoThat's awesome! I'm not sure how I could have gotten Windows to work in that situation. :-) Glad you enjoyed the post.