Chinaunix

标题: Mac OS X不是微内核 [打印本页]

作者: kde2000    时间: 2011-05-12 06:43
标题: Mac OS X不是微内核
引用 Mac.OS.X.Internals.-.A.Systems.Approach 的一段话:

xnu Is Not a Microkernel

All kernel components reside in a single kernel address space in Mac OS X. Although the kernel is modular and extensible, it is still monolithic. Nevertheless, note that the kernel closely works with a few user-space daemons such as dynamic_pager, kextd, and kuncd.
作者: 蓝色虫    时间: 2011-05-12 15:33
微内核与BSD内核还用比较吗
作者: A.com    时间: 2011-05-18 17:34
windows才是微内核。。。。unix就没有微内核的版本
作者: gvim    时间: 2011-05-18 21:57
可是/mach_kernel是什么呢?
作者: bjruntest    时间: 2011-05-19 15:24
这有什么关系呢?不影响什么啊
作者: yangysm    时间: 2011-08-23 22:22
windows才是微内核。。。。unix就没有微内核的版本
A.com 发表于 2011-05-18 17:34



    MINIX 3。0不就是微内核的吗!!
作者: rtcontrol    时间: 2011-08-24 23:54
还有hurd
作者: zeissoctopus    时间: 2011-08-28 19:20
由一開始,Mac OS X 沒有說它是微內核,只是說它是混種內核
作者: haichang417    时间: 2011-08-29 08:27
第一次听说windows是微内核的
作者: sinoman    时间: 2011-08-31 18:38
mach_kernel 是指疯狂转发消息的那部分,呵呵,核中核
作者: ecloud    时间: 2011-10-15 14:52
mach才是那个叫做“微内核”的东西

xnu是mach穿了一些bsd马甲以后,看上去很像传统unix宏内核的那个东西
作者: maochanglu    时间: 2011-10-20 15:47
混種內核。。还好不是杂种内核。
作者: kukuqi    时间: 2011-10-22 11:35
混合内核 好听些吧
作者: sndbox    时间: 2011-10-25 00:18
windows才是微内核。。。。unix就没有微内核的版本
A.com 发表于 2011-05-18 17:34



    Win是混合内核,Hurd是微内核,但是现在还不成熟,还有个QNX是微内核的UNIX
作者: snow888    时间: 2011-10-28 15:55
现在所谓的微内核和宏内核还有严格的界限区分么?

其实一开始,那个微内核的思想就是一个怪胎。
作者: substr函数    时间: 2011-11-19 02:23
呵呵,第一次听说
作者: ecloud    时间: 2011-11-23 21:28
现在所谓的微内核和宏内核还有严格的界限区分么?

其实一开始,那个微内核的思想就是一个怪胎。
snow888 发表于 2011-10-28 15:55



    宏内核的思想才是怪胎呢
    除了Unix系的,世界上其余的操作系统几乎没有这种大包大揽的内核模式
作者: snow888    时间: 2011-11-23 21:41
宏内核的思想才是怪胎呢
    除了Unix系的,世界上其余的操作系统几乎没有这种大包大揽的内核模 ...
ecloud 发表于 2011-11-23 21:28



    minix 是微内核,linux脱胎于 minix , 一开始也宣称是微内核,微软的 windows 一开始也是微内核,结果如何?现在都已经是混合内核了,一方面不愿意承认微内核的失败,另一方面又不得不向宏内核靠拢。

现在大多把重要的模块放进内核,把另一些驱动通过挂载的方式挂载到内核,从而形成所谓的混合内核,其实说白了,一方面想追求性能、稳定性,另一方面又还是因为面子问题。
作者: ecloud    时间: 2011-11-23 22:32
minix 是微内核,linux脱胎于 minix , 一开始也宣称是微内核,微软的 windows 一开始也是微内核 ...
snow888 发表于 2011-11-23 21:41


对不了解的事情不要妄加评论
另外你对操作系统的了解还是太少,太肤浅了
世界上的操作系统多了,在windows和linux诞生前30多年就存在了
minix也是版本3以后才是微内核
在个人电脑出现之前,世界上存在的各种操作系统,各种不同的模式,包括V7之前的Unix,都不是你所以为的那种内核模式
至于“微内核”这种概念,也只是针对于Unix系统后来的内核情况所提出的一种“针对”概念,非Unix系的,其实人家根本不关心什么微内核宏内核的概念
不过话说回来,传统Unix这种大一体的内核模式,确实是非常恶心的,这也才会有微内核概念的提出,别的系统,人家根本不存在这种问题,所以也不需要什么微内核不微内核的概念
比如说vms,i5OS,zOS,netware,plan9这些系统内核都是什么模式的?你能想象的出来么?
作者: snow888    时间: 2011-11-23 23:02
对不了解的事情不要妄加评论
另外你对操作系统的了解还是太少,太肤浅了
世界上的操作系统多了,在wi ...
ecloud 发表于 2011-11-23 22:32



    不想和你争论这个问题了。

关于微内核和宏内核的问题,建议你还是看看操作系统的发展史。

看看什么时候提出的微内核的概念。

至于最早的系统没有什么微内核和宏内核的概念,这也是当时特定的系统环境决定的,其实在 unix 出现以前,几乎没有通用 os 的概念,何来微内核和宏内核之争?

至于现在,主流的系统有哪些又敢说自己还是微内核的?取而代之的是混合内核的所谓概念。

算了,你赢了,这个帖子俺不再参与讨论。
作者: ecloud    时间: 2011-11-23 23:30
不想和你争论这个问题了。

关于微内核和宏内核的问题,建议你还是看看操作系统的发展史。

...
snow888 发表于 2011-11-23 23:02



    还是那句话,先了解,再评论
    Unix本身严格上讲也不是“通用”操作系统,直到Unix从单指某个操作系统的名字变成OpenGroup的商标
    早年AT&T和BSD的Unix也只是在3-4种平台上可运行:PDP,68k,x86,在被各家公司商业化之前,远谈不上什么通用。而且就算早期的商用化阶段,各个厂家的Unix也是完全不同用的,这才有了后来的POSIX。像OSF阵营,就更直接是用Mach做内核起步的。实际上Unix体系中那些技术领先,思想激进的厂家早就微内核化了,90年前后的OSF/1,NextStep,Hurd,无一不是以Mach作为基础内核,Minix也是在那个时候转向微内核的;而只有那些保守的厂家仍然在坚持传统方式,就像Sun和SCO

至于现在那些宣传宏内核的舆论,完全是linux一派粉丝制造的,指鹿为马,颠倒黑白,混淆是非。其目的就是为了给落后的内核模式辩护。因为当业界领先者们在研究如何应用Mach的时候,Linus还在玩他那个显示A和B的程序呢

记得2000年前后的时候,学术界还是以微内核为主要研究、讨论的方向,风向还是在宣扬微内核的。可短短5-6年过去,舆论风向就完全变了。这就说明话语权已经被一些人给掌握了。其实背后都是商业利益
作者: ecloud    时间: 2011-11-23 23:38
说起历史,Unix这个东西,在早期AT&T时代,其实就是PDP的操作系统,别的平台几乎是没有什么使用。说什么通用有点夸张。最根本的原因不是Unix好,而是PDP没有好的原厂系统
比较来看,到了VAX年代,主要商用的VAX机器还多是跑得VMS,而Unix装机量并不高
Mach的出现也是为了Unix向其它平台移植的考虑
作者: motalelf    时间: 2011-11-25 14:57
说起历史,Unix这个东西,在早期AT&T时代,其实就是PDP的操作系统,别的平台几乎是没有什么使用。说什么通用 ...
ecloud 发表于 2011-11-23 23:38



    大神,今天你DMA了么?
作者: ecloud    时间: 2011-11-25 19:54
大神,今天你DMA了么?
motalelf 发表于 2011-11-25 14:57



    你还是先把实模式是怎么回事搞清楚先吧
作者: motalelf    时间: 2011-11-25 22:37
你还是先把实模式是怎么回事搞清楚先吧
ecloud 发表于 2011-11-25 19:54



    哈哈,好的,我这就去学习




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2