|
|
我知道进入smm后,cpu从SMBASE+8000h处执行handler,但是BIOS中有很多handler,如何执行某一具体的handler?6 N" s, X7 b5 k6 r) ^1 y, p
看资料说是通过SW SMI进入SMM前,要配置相关的寄存器,这样就可以执行指定的handler。请问:1 c# J" O$ }6 Z
C% p1 p |" `! |! S8 M1.通过SW SMI进入SMM前如何配置寄存器以便执行指定的handler?有什么资料可参考吗?(看了intel手册但没有相关介绍,似乎和BIOS相关?)4 P7 e: z* H0 r4 W7 F: ^8 ]6 O
比如Intel平台,outpd( 0xb2, 0xDE )触发SMM,0xDE如何与bios中的某一handler进行关联?写入的数据(0xDE)代表什么呢?
% S9 f1 w( q( J& L- r3 _* R5 ~2 u8 R- f6 D# Z
2.是否BIOS中只有一个SMI handler对应write AMPC产生的smi(即SW SMI)?+ ~8 e; A+ R/ b0 J
' J' z% f8 O2 b1 }* y9 f
( ?- O2 _8 Z( H6 t多谢! |
|