阅读:3782回复:12
大侠们说说啥叫微内核和宏内核吧。
有个网友和我说 linux和windows的区别就在于这个 然后他就消失了。。。。。。。。。。。。。。。。。。。。。
|
|
1楼#
发布于:2006-07-20 16:06
想起一个笑话来:是关于一个人晚上回家晚,丢鞋子吵到楼下的人睡觉,后来给楼下投诉;第二天他一下没记住,回来又丢了一个,然后想起楼下的投诉,第二个就轻轻放下了;第二天又给人家投诉,说第一个鞋子把楼下吵醒后,眼巴巴的盼着他丢第二个,盼到天光都没盼到,又一晚上没睡好。
下次看到他先给他两个巴掌,然后再讨论这个问题。不能把话说一半就不管了。 |
|
|
2楼#
发布于:2006-07-20 16:06
没错,还不如不说
|
|
3楼#
发布于:2006-07-20 16:06
Hurd是自由软件基金用来取代LINUX内核的内核,是微内核(microkernel).微软的NT也是微内核.LINUX是单内核(宏内核Macrokernel),很多人说这是软件工程的退化.微内核是今后的发展趋势.LINUX我认为在不久的将来是要被淘汰的.
|
|
4楼#
发布于:2006-07-20 16:06
用户被禁言,该主题自动屏蔽! |
|
5楼#
发布于:2006-07-20 16:06
我是指LINUX这个kernel现在的设计思想和开发维护方式.
|
|
6楼#
发布于:2006-07-20 16:06
樓主的朋友說錯了!
![]() linux和windows的区别就在于:自由和壟斷 |
|
|
7楼#
发布于:2006-07-20 16:06
意思是垄断会阻止创新?自由激发创造?
那么我马上反对欧盟,美帝也要解体,yeyeyeyeyye 化整为零 |
|
|
8楼#
发布于:2006-07-20 16:06
|
|
9楼#
发布于:2006-07-20 16:06
我记的HURD不是为了什么取带LX而诞生的,只是GNU的内核,为了开发自由的OS,但是一直就没开发完成过
http://zh.wikipedia.org/wiki/%E5%86%85%E6%A0%B8 WIKI上又说是单内核 单内核结构的例子: * 传统的UNIX内核,例如伯克利大学发行的版本 * Linux内核 微内核结构的例子: * AIX * BeOS * L4微内核系列 * Mach, 用于GNU Hurd和Mac OS X * Minix * MorphOS * QNX * RadiOS * VSTa 混合内核的例子: * BeOS 内核 * DragonFly BSD * ReactOS 内核 * Windows NT、Windows 2000、Windows XP、Windows Server 2003以及Windows Vista等基于NT技术的操作系统 * XNU 单内核与微内核的比较 单内核结构是非常有吸引力的一种设计,由于在同一个地址空间上实现所有低级操作的系统控制代码的复杂性的效率会比在不同地址空间上实现更高些。 20世纪90年代初,单内核结构被认为是过时的。把Linux设计成为单内核结构而不是微内核引起了无数的争议(参见:节选:Linus Torvalds和Andrew Tanenbaum之间一场著名的争辩)。 现在,单核结构正趋向于容易被正确设计,所以它的发展会比微内核结构更迅速些。两个阵营中都有成功的案例。微核经常被用于机器人和医疗器械的嵌入式设计中,因为它的系统的关键部分都处在相互分开的,被保护的存储空间中。这对于单核设计来说是不可能的,就算它采用了运行时加载模块的方式。 尽管Mach是众所周知的多用途的微内核,人们还是开发了除此之外的几个微内核。L3是一个演示性的内核,只是为了证明微内核设计并不总是低运行速度。它的后续版本L4甚至可以将Linux内核在单独的地址空间作为它的一个进程来运行。 QNX是一个从20世纪80年代就开始设计的微内核系统。它比Mach更接近微内核的理念。它被用于一些特殊的领域,在这些情况下由于软件错误导致系统失效是不允许的。例如航天飞机上的机械手,还有研磨望远镜镜片的机器,一点点失误就会导致上千美元的损失。 很多人相信,由于Mach不能够解决一些提出微内核理论时针对的问题,所以微内核技术毫无用处。Mach的爱好者表明这是非常狭隘的观点,遗憾的是似乎所有人都开始接受这种观点。 |
|
10楼#
发布于:2006-07-20 16:06
Microkernel (微内核) 是指只提供最基本的系统功能,比如 address space management,thread management,inter-process communication 等。而其他功能如各类硬件支持,网络服务等都由 server 程式提供。而 macrokernel (宏内核) 则集成其他功能。就目前来说 windows/linux 都属于 macrokernel。
Macrokernel 比较方便,而 microkernel 则较据弹性,一个用户满意的平衡点应该比哪个极端都更可行。 |
|
|
11楼#
发布于:2006-07-20 16:06
|
|
|
12楼#
发布于:2006-07-20 16:06
明白点了 谢谢啊
到底那个好啊 是不是各有所长。 |
|