|
|
我知道进入smm后,cpu从SMBASE+8000h处执行handler,但是BIOS中有很多handler,如何执行某一具体的handler?
9 v0 d+ e/ d! N* j x' l! q. W% W看资料说是通过SW SMI进入SMM前,要配置相关的寄存器,这样就可以执行指定的handler。请问:4 f. R8 d& C/ l5 R- D
2 I$ c% B- o5 T1.通过SW SMI进入SMM前如何配置寄存器以便执行指定的handler?有什么资料可参考吗?(看了intel手册但没有相关介绍,似乎和BIOS相关?)
2 |3 `5 D6 B; X* t# N9 r8 C3 C4 v7 {6 v 比如Intel平台,outpd( 0xb2, 0xDE )触发SMM,0xDE如何与bios中的某一handler进行关联?写入的数据(0xDE)代表什么呢?- c! y2 W4 _ ~4 R* K8 i1 X
- R4 V* U/ H, U% w
2.是否BIOS中只有一个SMI handler对应write AMPC产生的smi(即SW SMI)?
; }' W- i4 K, [4 b6 u/ g3 W* ]2 b% @! T- ~
% c& q4 D8 w0 `( H/ A) l多谢! |
|