|
|
我知道进入smm后,cpu从SMBASE+8000h处执行handler,但是BIOS中有很多handler,如何执行某一具体的handler?" H" c0 C# p0 Q; l$ j/ ]# G
看资料说是通过SW SMI进入SMM前,要配置相关的寄存器,这样就可以执行指定的handler。请问:( f4 E' G; @( x* G
$ \' x# {2 @( o5 P, K& Q8 ?
1.通过SW SMI进入SMM前如何配置寄存器以便执行指定的handler?有什么资料可参考吗?(看了intel手册但没有相关介绍,似乎和BIOS相关?)$ E9 P8 U$ o5 a1 f2 L6 W7 X
比如Intel平台,outpd( 0xb2, 0xDE )触发SMM,0xDE如何与bios中的某一handler进行关联?写入的数据(0xDE)代表什么呢?
6 S" {" s5 Q3 `! i# R# P+ s# A& X
3 n- S% g/ T i+ b- @- z2.是否BIOS中只有一个SMI handler对应write AMPC产生的smi(即SW SMI)?4 `/ @! x2 P4 f q
1 c- v j* }$ V" {$ {- c2 J+ ?
# ^9 O/ f* c! N% C! I4 P多谢! |
|