关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。
想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。
7年前关闭。
Improve this question
有人告诉我,Windows NT 最初是为实现微内核架构而设计的,但后来转向了混合内核。
是什么导致了这种变化?我在尝试查找有关此的任何信息时遇到问题。
最佳答案
Windows NT 成为混合内核的主要原因是速度。基于微内核的系统只将最少的系统组件放在内核中,并将其余组件作为用户模式进程(称为服务器)运行。进程间通信 (IPC) 的一种形式,通常是消息传递,用于服务器和内核之间的通信。
基于微内核的系统比其他系统更稳定;如果服务器崩溃,它可以在不影响整个系统的情况下重新启动,如果每个系统组件都是内核的一部分,这是不可能做到的。然而,由于 IPC 和上下文切换带来的开销,微内核比传统内核慢。由于微内核的性能成本,微软决定保留微内核的结构,但在内核空间运行系统组件。从 Windows Vista 开始,一些驱动程序也在用户模式下运行。
关于operating-system - 为什么 Windows NT 远离微内核?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19365184/