posts - 116,  comments - 123,  trackbacks - 0

        如果EFI支持64-bit的话,那么就可以启动Windows 7, 还不是因为MS不好好支持32-bit,这样就不需要CSM module了
        那么如果EFI支持64-bit的话,SMM driver也就变成64-bit了,这个时候SMM就必须从Real mode 转成64-bit protect mode,其实主要的问题就是CPU的mode是IA-32e mode,这是由CPU的一个寄存器来决定的,具体的就是MSR(C0000080h)的bit8,所以在SMI handler中就需要load 64-bit的GDT,然后切成保护模式之前,设置CPU的这个寄存器,使之变成64-bit,其他的和32-bit的一模一样,就可以去执行64-bit的C程序了
        需要强调的是,64-bit汇编code中,eax就用rax了,等等。
        贴一张图吧,说明一下CPU的不同模式:

posted on 2009-11-09 18:26 yuhen 阅读(1147) 评论(1)  编辑 收藏 引用 所属分类: 技术文档个人文档

FeedBack:
# re: 64-bit EFI和SMM
2009-11-11 11:20 | fanke凡客诚品
不错哦  回复  更多评论
  
只有注册用户登录后才能发表评论。
<2024年4月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

Believe in who you are,
you are a shinning star!

常用链接

留言簿(16)

随笔分类(122)

随笔档案(116)

文章分类(2)

文章档案(2)

相册

BLOG

Study

Testing

最新随笔

搜索

  •  

积分与排名

  • 积分 - 120007
  • 排名 - 54

最新随笔

最新评论

阅读排行榜

评论排行榜