驱动程序在 Windows 上以哪个权限级别运行?

问题描述

直到今天,我才明白 Windows 仅适用于环 0 和环 3(为了兼容性,它保持环 1 和 2 级别)。但是,今天我听说驱动程序工作在级别 1 和 2,而内核在级别 0。

请给我解释一下好吗?

解决方法

我能想到的几乎所有操作系统(除了 OS/2)都使用 ring 0 或 ring 3 作为驱动程序。原因是因为环1和环2只隐藏了一些环0指令,这意味着不能停止CPU或任何东西。但是他们可以写入内核内存,这意味着他们在安全方面做得很少。如果您想要安全的驱动程序,那么它们必须在环 3 中。