LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1890|回复: 6

linux为什么不采用微内核?

[复制链接]
发表于 2005-5-23 05:40:37 | 显示全部楼层 |阅读模式
微内核比现在的单内核有点多多了
为什么不用微内核呢?
发表于 2005-5-23 08:11:16 | 显示全部楼层
欢迎你先code出来一个原型,再去论坛甚至lkml上去yy
回复 支持 反对

使用道具 举报

发表于 2005-5-23 08:49:16 | 显示全部楼层
各有各的好处.....
回复 支持 反对

使用道具 举报

发表于 2005-5-23 12:24:27 | 显示全部楼层
Post by magic1136
微内核比现在的单内核有点多多了
为什么不用微内核呢?

linus说, 单内核更简洁,而且效率也高,所以他没有按照minix的微内核去做. 如此而已
当然,现在的L4,号称效率很高,但这已经是后话了, 你也可以使用微内核啊, L4 提供了L4Linux, 号称可将发行版无缝移植到L4
回复 支持 反对

使用道具 举报

发表于 2005-5-23 13:08:32 | 显示全部楼层
现在LKM都方便成这样了,不觉得跟微内核很相近吗?
回复 支持 反对

使用道具 举报

发表于 2005-5-24 02:18:52 | 显示全部楼层
Post by chendy
现在LKM都方便成这样了,不觉得跟微内核很相近吗?

区别还是有的
LKM只是可以动态的加载进/卸载自内核空间,归根结底还是一个进程
微内核的架构中每一个server(MM, process management...)都是一个独立进程,微内核本身也是一个进程,彼此之间通过IPC交流
Linux内核,本身作为一个大进程,其内部的函数调用,肯定要比进程间通信要快

另外虽然号称第二代微内核的L4比Mach速度快,可是通过它来实现的OS,仍然要慢过monolithic kernel,
因为极端的情况下:就是把本来要分开的分工不同的server合并成一个,也就是L4Linux,在L4基础上运行的Linux,比纯Linux都要慢
所以如果分开,就更慢了

微内核当然也有好处,这个好处还得提Linux, LKM是要加载到内核地址空间里的,拥有和内核一样的权限,如果LKM写的有问题,内核就有可能oops乃至panic,从而必须重起
而在以微内核为基础实现的OS中,一个server出了问题,可以停掉,修改错误,然后再开这个server,只要不是微内核本身出问题,整个系统基本不必重起。
回复 支持 反对

使用道具 举报

发表于 2005-5-24 02:22:47 | 显示全部楼层
有关L4Linux的表现,想查证的话
可以去找一篇名为《The performance of u-kernel-based systems》的论文
其中u为希腊字母miu
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表