Ale*_*x D 3 stack multithreading kernel windows-nt
Microsoft Press 的《Windows Internals》第 6 版指出,在 Windows NT 中,每个线程都有2 个堆栈:一个在用户模式下运行时使用,一个在内核模式下使用。
为什么会这样呢?看来用户模式堆栈也可以在系统调用中使用。这种设计有什么优点吗?
100*_*tes 5
主要原因是内核态不能信任用户态。如果内核使用用户模式堆栈,则其他一些用户模式线程可以观察该堆栈上的值并随意修改它们。恶意软件想要完全控制系统是微不足道的。
归档时间:
11 年,5 月 前
查看次数:
738 次
最近记录: