|
|
我知道进入smm后,cpu从SMBASE+8000h处执行handler,但是BIOS中有很多handler,如何执行某一具体的handler?8 P1 M4 t3 g0 }) K/ R( U9 q% k) U' l
看资料说是通过SW SMI进入SMM前,要配置相关的寄存器,这样就可以执行指定的handler。请问:2 z1 D* O& Q% A
& ~! p! }* w( @, \1 ?( v1.通过SW SMI进入SMM前如何配置寄存器以便执行指定的handler?有什么资料可参考吗?(看了intel手册但没有相关介绍,似乎和BIOS相关?)
' \; W9 c% i1 x3 u) O 比如Intel平台,outpd( 0xb2, 0xDE )触发SMM,0xDE如何与bios中的某一handler进行关联?写入的数据(0xDE)代表什么呢?
1 a3 S3 X7 g( {5 |, ?
& ~8 s R! _* o( g3 K1 C5 e. l2.是否BIOS中只有一个SMI handler对应write AMPC产生的smi(即SW SMI)?
; c- |6 p: w6 x+ c7 @2 v( F# b( y1 I" i" s) Z
# z. Y9 b" S( z4 u1 m# h: {0 D多谢! |
|