Page 1 of 1
How BIOS configure caches...
Posted: Thu Oct 14, 2010 3:09 pm
by AmA
I know about modifing caching trough CRXs and MSRs. Is BIOS doing something more than using this registers when dealing with CPU caches at boot/resume time? What exactly people means when saying: "BIOS configure and enable caches"?
Re: How BIOS configure caches...
Posted: Thu Oct 14, 2010 3:18 pm
by Combuster
What it means is that the bios configures all the caching mechanism to the best allowable settings - i.e. all RAM is fully cacheable, while I/O mostly isn't unless the device says it's safe.
In other words: ignore cache settings unless you have a very good reason to modify them.
Re: How BIOS configure caches...
Posted: Thu Oct 14, 2010 3:41 pm
by AmA
Combuster wrote:What it means is that the bios configures all the caching mechanism to the best allowable settings - i.e. all RAM is fully cacheable, while I/O mostly isn't unless the device says it's safe.
I was thinking initially that "BIOS enable caches" means that if BIOS do not do that, the OS would not be able to benefit from caches, in other words there would be not caches in the computer for the session. I guess that all times people(specs) write "Bios configure and enable caches" should write "BIOS configure and enable caching" instead.
Combuster wrote:In other words: ignore cache settings unless you have a very good reason to modify them.
Currently I am in an early development stage. I parse the E820 output to create a paging structure that makes possible the access of all the possibly needed memory. Marking al pages just cache enabled. Really basic configuration at this moment. I guess that BIOS uses MTRRs to configure caching policies where needed, so, latter I could modify my page allocation function to read MTRRs and map and configure the page structure regard BIOS polices.
Re: How BIOS configure caches...
Posted: Fri Oct 15, 2010 5:34 am
by jal
AmA wrote:Combuster wrote:I guess that all times people(specs) write "Bios configure and enable caches" should write "BIOS configure and enable caching"
Aren't these functionally synonymous? To enable caching, you must enable caches...
JAL