阅读:1539回复:5
请问什么是ring3 ring0?
我知道ring0 ring3两个名词很长时间了,但是我不知道他们具体是什么含义?
他们和驱动有没有关系?如果有,有什么关系? 我找了一篇ring3-->ring0转换代码,半天竟没看懂讲了什么东西。 |
|
|
沙发#
发布于:2005-01-20 07:52
这得从CPU指令系统(用于控制CPU完成各种功能的命令)的特权级别说起。在CPU的所有指令中,有一些指令是非常危险的,如果错用,将导致整个系统崩溃。比如:清内存、设置时钟等。如果所有的程序都能使用这些指令,那么你的系统一天死机n回就不足为奇了。所以,CPU将指令分为特权指令和非特权指令,对于那些危险的指令,只允许操作系统及其相关模块使用,普通的应用程序只能使用那些不会造成灾难的指令。形象地说,特权指令就是那些儿童不宜的东东,而非特权指令则是老少皆宜。 |
|
板凳#
发布于:2005-01-20 07:55
简明
|
|
地板#
发布于:2005-01-20 10:01
学习 学习.
Ring0 Ring3跟irql的关系是什么? 想请教 |
|
|
地下室#
发布于:2005-01-20 10:17
中断请求级与ring0,ring3没有本质的关系,不过运行在ring0的代码通常能够获得更高的irql,得到优先执行。运行在ring3的APP只能在passive_level上运行,运行在ring0的驱动以及其他模块可以在passive_level及其以上的irql运行。
去冬使用的中断级一般只能到DIRQL,再往上就是windows保留的irql了。 大虾们帮助指正阿:) haha,dregs!!!!!!!!!!!!!!!! 两点多还在,加班了?? |
|
5楼#
发布于:2005-01-20 10:46
[quote]这得从CPU指令系统(用于控制CPU完成各种功能的命令)的特权级别说起。在CPU的所有指令中,有一些指令是非常危险的,如果错用,将导致整个系统崩溃。比如:清内存、设置时钟等。如果所有的程序都能使用这些指令,那么你的系统一天死机n回就不足为奇了。所以,CPU将指令分为特权指令和非特权指令,对于那些危险的指令,只允许操作系统及其相关模块使用,普通的应用程序只能使用那些不会造成灾难的指令。形象地说,特权指令就是那些儿童不宜的东东,而非特权指令则是老少皆宜。[/quote] 其实98死机是为了兼容性考虑,留的后门造成的,并非漏洞 |
|
|