单核操作系统与微核操作系统有啥区别?各有什么优缺点?

如题所述

操作系统的两种设计思想--单核与微核

单核操作系统
  泛指带有单核处理器的操作系统,运用在早期的电脑和手机等电子产品中。在近年来多核心处理器逐步普及之后,单核操作系统逐步被双核乃至多核的高速处理能力所取代。   单核处理器向多核处理器的发展,是处理器历史上一次重大的变革
所谓“微核”,就是说操作系统只有很小的一部分是运行在最高优先级的,其他的功能都是以

若用人类社会来比喻的话,CPU代表执行力,是一个抽象的概念;而操作系统则是各级政府,操作系统的内核则是最高决策者,以前是皇帝及宰相(现在是国家主席)以及围绕他们为核心的一个班子。
远古时期的CPU是没有特权级别的,(这儿只分析x86系列,最初的8086/8088只有实模式一种,没有特权级别)就像远古的尧舜禹时代:传说即使是大禹也要亲自干体力活,由于每天泥里来水里去,以至于小腿上都不长汗毛。
后来聪明人发现这种体系存在效率问题,韩非的文章中有一段描写,《历山之农者侵畔》,上面说,在舜种田的地方:历山,历山耕地的人越出田界侵占别人的耕地,舜便去那里耕种,一年之后,田界不再被破坏侵占。(历山之农者侵畔,舜往耕焉,期年甽亩正。),再后来河里打渔的人也发生纠纷,舜便去那里打渔,一年之后,都让年长的人占最有利的水域。东夷制陶器的人制的陶器粗劣不结实,舜便去那里制陶器,一年之后,陶器制得很牢固。这样一出现民事纠纷,舜就跑去以身作则来矫正民俗,韩非对此提出了看法,认为舜无法以有限的生命来纠正天底下无限的错误,这时就必须通过特权来达到目的:即使贤明不如舜的君主,也可以很轻松地贯彻执行力。
CPU也是如此,到了80286,就出现了保护模式,保护模式真正开始实用,是伴随着80386出现的,并且一直沿用至今。在保护模式设计下,CPU出现了特权阶层,就是我们所说的Ring0级别,在Ring0级别执行的都是特权指令;我们通常的程序,都是跑在Ring3级别的(Ring1、Ring2俩级别没有使用),也叫用户模式,这样,操作系统的代码跑在Ring0级别(以及一些病毒),通用程序跑在Ring3级别,通用程序可以调用操作系统的功能,就像我们可以去政府申冤啦之类,由政府的各级行政民政部门负责办理,但办理过程一般对我们是不透明的,因为那是跑在Ring0级别的,我们因为权限低,无法看到,只能等待执行结果。
有了保护模式之后,就出现了操作系统的两种设计思想:单核模式和微内核模式。
单内核的思想是大量政府部门都工作在特权级别,这样的好处是政府内部效率比较高,像我们用的windows系列,从win95到vista都是如此,当然,windows也说了,他们已经把大量操作系统服务归入了用户级别,或者让用户根据自己的情况来决定是否加载:我们可以通过控制面板来配置很多服务,比如SNMP(简单网络管理协议),还有微软自带的防火墙等。Unix/linux也是单内核系统,不过由于一发明就是根红苗正的32位科研性操作系统,(不像windows从可怜兮兮的DOS一朝暴富)所以人家连普通用户最常使用的图形界面也都不从属于系统内核,而是使用了Xwindows一类的程序,而且也不见得就比windows的效率差,因为SGI等图形工作站使用的就是unix。

微内核的思想是只在特权级别保留最基本的操作系统功能模块,操作系统提供的大量服务都跑在用户模式,原则是越精简越好,所以称之为“micro kernal”,现在多用于嵌入式设备。操作系统只提供存储空间管理和进程调度、进程间通讯这类和CPU硬件关联的系统调用。微内核的想法很好,但因为效率问题而被诟病,一直也没有大规模的应用。
简单说,微内核是对占用过多资源的臃肿机构不满,是让利于民,政府小型化思想的产物;而单核系统更强调政府执行效率,但也占用了更多的社会资源。
或者再举个例子:微内核下跑程序有点像吃自助餐,而单内核的机制下操作系统会提供日本式餐饮的体贴服务
哲学家告诉我们,矛盾是辨证统一的。就像RISC与CISC,中西医一样,最终的结果是融合而不是分崩,将来的操作系统必将吸取两者之长,为我们使用计算机,提供更完善的帮助。
有新闻说,汶川大地震的捐款几乎都被纳入了政府财政部,由政府决定如何使用,但大多数民间慈善机构却因为资金问题无法运行,以至于纷纷撤出灾区云。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-08-06
吐血三升……单核微核哪是这意思………………………………无语
单核内核系统简单理解就是单一内核、宏内核,编写难、修改难、效率最高,效率比其他系统高的多。每一个模块又都独立服务于操作,内核代码高度集成,但是——所有模块都在同一内核空间运行,一个很小的bug都会使整个系统崩溃。
常见的比如:UNIX、BSD、LINUX、MSDOS、WIN9X

微核就是把单核改了下,把系统服务的实现和系统的基本操作规则分离开来,这样不至于因为一个小bug而整个系统崩溃,便于维护,但是性能上比单核内核要低一些。
常见的比如:AIX、L4微核系列、Mach、Minix、QNX等

此外还有就是微核系统进一步完善、修改,演变成了混合内核,实质上还是微内核,只不过它让一些微核结构运行在用户空间的代码运行在内核空间,这样让内核的运行效率更高些。这是一种妥协做法,设计者参考了微内核结构的系统运行速度不佳的理论。大多数现代操作系统遵循这种设计范畴,微软视窗就是一个典型的例子。另外还有XNU,运行在苹果Mac OS X上的内核。
常见的有:Windows NT内核、Mac OS X、BeOS、XNU等等。

目前最夸张的内核设计是外内核设计,也被称为纵向结构操作系统,是一种很极端的设计方法。目的是让设计者来决定硬件接口的设计,只负责系统保护和系统资源复用相关的服务,用户可以在其上应用其他任何OS(不同于所谓的虚拟机之类的东东),只提供比较低级的硬件操作,而没有像其他系统一样提供高级的硬件抽象。
相似回答