|
|
我知道进入smm后,cpu从SMBASE+8000h处执行handler,但是BIOS中有很多handler,如何执行某一具体的handler?/ |8 N% D% L& O
看资料说是通过SW SMI进入SMM前,要配置相关的寄存器,这样就可以执行指定的handler。请问:
& R0 p; J3 z1 W# p6 f" d6 u% X: M% k- s/ N
1.通过SW SMI进入SMM前如何配置寄存器以便执行指定的handler?有什么资料可参考吗?(看了intel手册但没有相关介绍,似乎和BIOS相关?)9 O9 t+ g" E- Q2 c
比如Intel平台,outpd( 0xb2, 0xDE )触发SMM,0xDE如何与bios中的某一handler进行关联?写入的数据(0xDE)代表什么呢?
% l- c8 e- T% G% g6 o! c* M% W3 v. O: C, y6 q" _5 Q
2.是否BIOS中只有一个SMI handler对应write AMPC产生的smi(即SW SMI)?
+ T; Y9 M7 v- n3 B( Q2 T
/ Y/ i7 }: s" @8 L$ S& o" D! u& p6 D) m; I1 B% g. T1 [- O+ B
多谢! |
|