首页
社区
课程
招聘
[求助]关于禁用内存保护时开关中断的问题
发表于: 2009-6-13 14:54 4278

[求助]关于禁用内存保护时开关中断的问题

2009-6-13 14:54
4278
对内核数据进行修改时需要禁用内存保护
可以通过修改cr0 寄存器来实现
看了论坛一些高手的代码
比如
_asm
    {
        push eax;
        mov eax, cr0;
        mov uAttr, eax;
        and eax, 0FFFEFFFFh; // CR0 16 BIT = 0
        mov cr0, eax;
        pop eax;
        cli
        
    };
我又一个疑惑,不知道为什么要在最后加上cli 来把中断屏蔽?
我感觉如果要屏蔽中断也应该在 开头 push eax这句的上面来屏蔽中断啊?

恳请大家赐教!

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 403
活跃值: (330)
能力值: ( LV12,RANK:230 )
在线值:
发帖
回帖
粉丝
2
咋么人理我呢~
2009-6-13 20:27
0
雪    币: 952
活跃值: (1821)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
一般禁用保证是修改代码
cli 是防止修改过程中被打断
2009-6-13 20:38
0
游客
登录 | 注册 方可回帖
返回
//