|
|
我知道进入smm后,cpu从SMBASE+8000h处执行handler,但是BIOS中有很多handler,如何执行某一具体的handler?
+ Z: I; ]2 Y* i, U4 v( O, \看资料说是通过SW SMI进入SMM前,要配置相关的寄存器,这样就可以执行指定的handler。请问:8 W/ r' c2 Q! B. g5 Q$ u/ |
6 d- w6 g. l3 q5 m1.通过SW SMI进入SMM前如何配置寄存器以便执行指定的handler?有什么资料可参考吗?(看了intel手册但没有相关介绍,似乎和BIOS相关?)
T- _8 g) d; ^% c( K 比如Intel平台,outpd( 0xb2, 0xDE )触发SMM,0xDE如何与bios中的某一handler进行关联?写入的数据(0xDE)代表什么呢?4 W0 M2 n7 ]1 C: d
' B! C. l+ R: R7 z9 `% L
2.是否BIOS中只有一个SMI handler对应write AMPC产生的smi(即SW SMI)?" H+ t( W7 p% x1 R4 S& s
; e0 t7 _" e& l7 q; |# i ?. ~! K: L, z* Y! h
多谢! |
|