|
我知道进入smm后,cpu从SMBASE+8000h处执行handler,但是BIOS中有很多handler,如何执行某一具体的handler?
3 R! n) x; ~9 J1 }6 t$ w. w$ Q- [看资料说是通过SW SMI进入SMM前,要配置相关的寄存器,这样就可以执行指定的handler。请问:
q0 V* }3 S) F; T2 }: z$ J. M1 v# T, I% V$ Z
1.通过SW SMI进入SMM前如何配置寄存器以便执行指定的handler?有什么资料可参考吗?(看了intel手册但没有相关介绍,似乎和BIOS相关?)" }% r7 @; u% e: F3 n" v
比如Intel平台,outpd( 0xb2, 0xDE )触发SMM,0xDE如何与bios中的某一handler进行关联?写入的数据(0xDE)代表什么呢?
2 D" I$ q, n$ R# y: g7 z' l
. d( @# r; i* P5 W2.是否BIOS中只有一个SMI handler对应write AMPC产生的smi(即SW SMI)?, _+ L$ M0 h# G/ V! i9 q
3 N" [* r; b2 X& f0 m& k/ h' g8 C( \
多谢! |
|