|
|
我知道进入smm后,cpu从SMBASE+8000h处执行handler,但是BIOS中有很多handler,如何执行某一具体的handler?- y0 P8 A) C2 w, |' R' u7 S+ u& ]
看资料说是通过SW SMI进入SMM前,要配置相关的寄存器,这样就可以执行指定的handler。请问:
* w6 I5 t T2 t- n5 i. H+ i
w' s1 ^2 D. }1 O1.通过SW SMI进入SMM前如何配置寄存器以便执行指定的handler?有什么资料可参考吗?(看了intel手册但没有相关介绍,似乎和BIOS相关?)( m" l9 B- P& ?3 Y+ o8 |# u
比如Intel平台,outpd( 0xb2, 0xDE )触发SMM,0xDE如何与bios中的某一handler进行关联?写入的数据(0xDE)代表什么呢?
# A, E" e) P) S2 {
# h+ o) Q# _: ]9 L1 m. M" W2.是否BIOS中只有一个SMI handler对应write AMPC产生的smi(即SW SMI)?" W( ^! U9 ^5 U& i3 s1 \$ P
& c( {1 S6 c' A% }6 H+ w
# E) F) Z g" q' [+ r. Y2 N# \4 l
多谢! |
|