|
我知道进入smm后,cpu从SMBASE+8000h处执行handler,但是BIOS中有很多handler,如何执行某一具体的handler?- M5 K! u3 p0 O3 s2 i/ F
看资料说是通过SW SMI进入SMM前,要配置相关的寄存器,这样就可以执行指定的handler。请问:" s; I3 n' ^9 M) s
7 n7 I7 U m. |6 T# e
1.通过SW SMI进入SMM前如何配置寄存器以便执行指定的handler?有什么资料可参考吗?(看了intel手册但没有相关介绍,似乎和BIOS相关?)3 g+ G0 y# g0 m3 r* [) P' A3 r m. k
比如Intel平台,outpd( 0xb2, 0xDE )触发SMM,0xDE如何与bios中的某一handler进行关联?写入的数据(0xDE)代表什么呢?
5 b7 I& _- U7 h+ L- k. u$ S& L: d+ }) C& s, g! Q3 O
2.是否BIOS中只有一个SMI handler对应write AMPC产生的smi(即SW SMI)?0 Q' j& ^. C1 N$ }
& ?. p" p+ H0 I e7 O6 x* [. j+ f
多谢! |
|