|
发表于 2005-5-9 18:06:47
|
显示全部楼层
Post by arbor
Linux和Windows在设计上就存在哲学性的区别。Windows操作系统倾向于将更多的功能集成到操作系统内部,并将程序与内核相结合;而Linux不同于Windows,它的内核空间与用户空间有明显的界限。根据设计架构的不同,两者都可以使操作系统更加安全。
这个是微内核与非内核有关吧。Windows内核不是一个完全的微内核结构,Linux是非内核结构,所以在windows下很多驱动及一定要用的程序如explorer都是放进内核里实现的。
内核空间与用户空间,在CPU里(x86)已经分开了吧。Intel的CPU运行级别设计为四级权限,低权限的不能访问高权限的地址空间。 Windows好像是用了其他中的三级。最低级当然是用户进程了。然后windows操作系统一些重要的服务在最高级,驱动等有中级那级, 不记得是那一级了.
LINUX用了四级中的两级, 对内存空间级别控制与intel本来设计意图不同.为了兼容性。intel本来意图是通过cpu里的一个MMU里的一个寄存器的几位来控制的方问权限的,LINUX内核改在其他地方.
说得不准确,建议你参考浙大的 LINUX内核源代码情景分析 |
|