课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
其实大家也都明白,如果一个编程软件与另一个软件一样的话就不存在所谓的特殊和创新了,今天我们就通过案例分析来了解一下macOS内核与Linux内核的历史特性与区别。希望通过对本文的阅读,大家对于linux有更多的了解和认识。
macOS内核的历史
我们将从macOS内核的历史开始。1985年,由于与席执行官JohnSculley和董事会不和,史蒂夫·乔布斯SteveJobs离开了苹果公司。然后,他成立了一家名为NeXT的新电脑公司。乔布斯希望将一款(带有新操作系统的)新计算机快速推向市场。为了节省时间,NeXT团队使用了卡耐基梅隆大学的Mach内核和部分BSD代码库来创建NeXTSTEP操作系统。
NeXT从来没有取得过财务上的成功,部分归因于乔布斯花钱的习惯,就像他还在苹果公司一样。与此同时,苹果公司曾多次试图更新其操作系统,甚至与IBM合作,但从未成功。1997年,苹果公司以4.29亿美元收购了NeXT。作为交易的一部分,史蒂夫·乔布斯回到了苹果公司,同时NeXTSTEP成为了macOS和iOS的基础。
Linux内核的历史
与macOS内核不同,Linux的创建并非源于商业尝试。相反,它是由芬兰计算机科学专业学生林纳斯·托瓦兹LinusTorvalds于1991年创建的。初,内核是按照林纳斯自己的计算机的规格编写的,因为他想利用其新的80386处理器(的特性)。林纳斯于1991年8月在Usenet上发布了他的新内核代码。很快,他就收到了来自世界各地的代码和功能建议。次年,OrestZborowski将XWindow系统移植到Linux,使其能够支持图形用户界面。
在过去的27年中,Linux已经慢慢成长并增加了不少功能。这不再是一个学生的小型项目。现在它运行在世界上大多数的计算设备和超级计算机上。不错!
macOS内核的特性
macOS内核被官方称为XNU。这个字母缩写词代表“XNUisNotUnix”。根据苹果公司的Github页面,XNU是“将卡耐基梅隆大学开发的Mach内核和FreeBSD组件整合而成的混合内核,加上用于编写驱动程序的C++API”。代码的BSD子系统部分“在微内核系统中通常实现为用户空间的服务”。Mach部分负责底层工作,例如多任务、内存保护、虚拟内存管理、内核调试支持和控制台I/O。
Linux内核的特性
虽然macOS内核结合了微内核(Mach)和宏内核(BSD)的特性,但Linux只是一个宏内核。宏内核负责管理CPU、内存、进程间通信、设备驱动程序、文件系统和系统服务调用(LCTT译注:原文为systemservercalls,但结合Linux内核的构成,译者认为这里翻译成系统服务调用更合适,即systemservicecalls)。
用一句话总结Linux和Mac的区别
macOS内核(XNU)比Linux历史更悠久,并且基于两个更古老一些的代码库的结合;另一方面,Linux新一些,是从头开始编写的,并且在更多设备上使用。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。