System Management Mode: Difference between revisions

m
Reverted edits by Atie (talk) to last revision by Superleaf1995
[unchecked revision][unchecked revision]
m (Reverted edits by Atie (talk) to last revision by Superleaf1995)
 
(4 intermediate revisions by 4 users not shown)
Line 1:
[[System Management Mode]] (SMM) is an operating mode on x86 and x86-64 processors, intended for use by firmwareFirmware/BIOS to perform low-level system management operations while an OS is running.
 
== The role of SMM ==
Line 9:
SMM is triggered through a System Management Interrupt (SMI), a signal sent from the [[chipset]] to the CPU. During platform initialization, the firmware configures the chipset to cause a System Management Interrupt for various events that the firmware developer would like the firmware to be made aware of. The firmware also designates the region of RAM that should be used as SMRAM and specifies where the CPU should jump when an SMI occurs. During operation, the chipset detects the configured events and signals an SMI, triggering the CPU to enter SMM by jumping to the SMM entry point. The OS has no way of knowing when the chipset might signal an SMI and cannot "catch" System Management Interrupts like other interrupts. SMIs are not routed through the [[IVT]]/[[IDT]].
 
An OS ''can'' ask the chipset to signal an SMI, although the handling of the SMI will still be transparent. This is performed by writing to a particular [[Port IO|port]] (determined via [[ACPI]]). If the OS asks the chipset to signal an SMI and there is no reason for an SMI to be triggered at that particular moment, the firmware will not have much to do and the OS will regain control almost immediately.
 
== SMM and ACPI ==
Line 27:
 
[[Category:X86]] [[Category:Operating Modes]]
[[de:System_Management_Mode]]
Anonymous user