|
我知道进入smm后,cpu从SMBASE+8000h处执行handler,但是BIOS中有很多handler,如何执行某一具体的handler?5 }! |- `# e2 H2 \0 T8 R; w" I
看资料说是通过SW SMI进入SMM前,要配置相关的寄存器,这样就可以执行指定的handler。请问:# a' X$ i- u' ?8 b9 s
" ?1 c9 j$ q, I$ i: p" V2 m1.通过SW SMI进入SMM前如何配置寄存器以便执行指定的handler?有什么资料可参考吗?(看了intel手册但没有相关介绍,似乎和BIOS相关?)% i! k& l& r# x
比如Intel平台,outpd( 0xb2, 0xDE )触发SMM,0xDE如何与bios中的某一handler进行关联?写入的数据(0xDE)代表什么呢?
- u c* Y( }$ ?5 D5 B5 i! C$ s0 }5 q1 ^$ ]* |& g1 ]
2.是否BIOS中只有一个SMI handler对应write AMPC产生的smi(即SW SMI)?
& F2 s- W$ Z- R+ R y- s; O4 Y) s2 Z+ V! ^
) R$ \# y# g" [; `6 A6 c多谢! |
|