|
|
我知道进入smm后,cpu从SMBASE+8000h处执行handler,但是BIOS中有很多handler,如何执行某一具体的handler?& d1 ^5 F* R5 T3 N
看资料说是通过SW SMI进入SMM前,要配置相关的寄存器,这样就可以执行指定的handler。请问:* l4 j& s F7 v9 }4 v
1 @- B5 ~6 ?* }* M1.通过SW SMI进入SMM前如何配置寄存器以便执行指定的handler?有什么资料可参考吗?(看了intel手册但没有相关介绍,似乎和BIOS相关?)
1 l2 T; Q+ I R( j7 X' q9 A 比如Intel平台,outpd( 0xb2, 0xDE )触发SMM,0xDE如何与bios中的某一handler进行关联?写入的数据(0xDE)代表什么呢?; Y% X V+ m+ q5 w
Z0 r( ^* c6 B( o# V3 k2 t, z
2.是否BIOS中只有一个SMI handler对应write AMPC产生的smi(即SW SMI)?6 c& e$ @! J) z& ]* ]3 P8 g
# H( Y5 d0 P) U7 h9 A3 y9 k
( A" A# R$ M( c$ }9 P5 R: b多谢! |
|