3

Intel's documentation of MONITOR says:

The MONITOR instruction arms address monitoring hardware using an address specified in EAX (the address range that the monitoring hardware checks for store operations can be determined by using CPUID). A store to an address within the specified address range triggers the monitoring hardware. The state of monitor hardware is used by MWAIT.

So does anyone know exactly what value of EAX should i supply to CPUID to get "the address range that the monitoring hardware checks for store operations can be determined by using CPUID".

Or is the MONITOR address range just size of a cache line?

zviadm
  • 1,045
  • 9
  • 12

1 Answers1

4

I have found answer myself. This documentation contains it: www.intel.com/Assets/PDF/appnote/241618.pdf

MONITOR / MWAIT Parameters (Function 05h), i.e. EAX should be 5.

zviadm
  • 1,045
  • 9
  • 12
  • Could you please elaborate a bit more on this, i.e. where exactly in function 05 out put do you see the address range? All I see there is "smallest monitor line" and "largest monitor line size" - how can one get the monitored address range from these? – Igor R. Feb 09 '14 at 15:20
  • ...or can this range begin at an arbitrary address, and CPUID only gives the length of the monitored range? – Igor R. Feb 09 '14 at 15:46