【转】从Mac/OS和iOS开放源码浅谈UNIX家谱

640?wx_fmt=png&wxfrom=5&wx_lazy=1

0?wx_fmt=gif&wxfrom=5&wx_lazy=1

      苹果公司在各类开源项目中长期贡献着自己的力量,但其UNIX系统技术一直都属于闭源阵营(这一点可以从NUX OS阵营和家谱图中得到答案)。然而,以封闭闻名的苹果公司,2017年国庆期间在GitHub上公布了旗舰操作系统的XNU内核源代码,XNU(XNU is Not Unix的缩写)属于 MacOS(包括以往全部版本)以及 iOS 所使用的类Unix内核(对应各类苹果Darwin操作系统)。通过公开内核代码,苹果公司将帮助开发人员更轻松地理解其设备与更高软件层同内核之间的协作原理。


      XNU源代码基于苹果公共源许可(Apple Public Source License 2.0),这其实是一项相当严格的许可 ; 开发人员可将此次发布的内核代码引入自有项目(GitHub源码和详细信息可通过原文链接获取)。

      UNIX操作系统是一个强大的多用户、多任务操作系统,支持多种处理器架构,起源于贝尔实验室、通用电气和麻省理工学院合作的计划MULTICS操作系统计划,由Ken Thompson、Dennis Ritchie和Douglas McIlroy于1969年在AT&T的贝尔实验室开发。当时被称为" Niplexed Information and Computing Service" 缩写为"UNICS",后来就将其称其为"UNIX"了。

      目前它的商标权由国际开放标准组织所拥有,只有符合单一UNIX规范的UNIX系统才能使用UNIX这个名称,否则只能称为类UNIX,其中苹果XNU就是类UNIX系统。

      Unix在开发的过程中没有对应任何的奖励制度和管理体制,Unix发展的动力主要源自科研和兴趣。直到现在,Unix的发展历史和家谱体系可以总结为下图(图片来源网络,点击看大图)。

 

 

0?wx_fmt=jpeg

 

 

      然而在20世纪70年代,AT&T公司开始注意到Unix所带来的商业价值并开始寻找一些手段来保护Unix,包括通过许可证方式教学使用Unix的源码。在20世纪80年代,Unix发展为有两个最主要的版本线,Berkeley的BSD UNIX和AT&T的Unix。后来Unix的发展越来越快,这主要归根于不断地出现各种各样的变种(类Unix)。

 

 

0?wx_fmt=png

 

      Sun Microsystems公司基于BSD UNIX开发的SunOS(即后来大家熟悉的Solaris)的工作站。AT&T发布的Unix System V的第一版最终也造就了IBM的AIX和HP的HP-UX。下面讨论下几个主流类UNIX系统。

 Mac OS

      Mac OS是基于Unix内核的图形化操作系统,2011年7月20日Mac OS X(X为10的罗马数字写法)已经正式被苹果改名为OS X。也是一套运行于苹果Macintosh系列电脑上的操作系统,后来也推出在PC上运行的Mac系统(简称 Mac PC)。

AIX

      AIX是IBM开发的一套UNIX操作系统。它符合Open group的UNIX 98行业标准,通过全面集成对32位和64位应用的并行运行支持,为这些应用提供了全面的可扩展性。它可以在所有的IBM P系列和IBM RS/6000工作站、服务器和大型并行超级计算机上运行。另外,AIX级别的逻辑卷管理正逐渐被添加进各种自由的UNIX风格操作系统中。

Solaris
      Solaris是SUN公司研制的类Unix操作系统。直至2013年,Solaris的最新版为 Solaris 11。早期的Solaris是由BSD Unix发展而来。但至今Solaris仍旧属于私有软件。2005年6月14日,Sun公司将正在开发中的Solaris 11的源代码以CDDL许可开放,这一开放版本就是OpenSolaris。


      Sun的操作系统最初叫做SunOS。SunOS 5.0开始,SUN的操作系统开发开始转向System V4,并且有了新的名字叫做Solaris 2.0。Solaris 2.6以后,SUN删除了版本号中的"2",因此,SunOS 5.10就叫做Solaris 10。Solaris的早期版本后来又被重新命名为Solaris 1.x. 所以"SunOS"这个词被用做专指Solaris操作系统的内核,因此Solaris被认为是由SunOS,图形化的桌面计算环境,以及它网络增强部分组成。


      Solaris运行在Intel x86及SPARC、Ultra SPARC两个平台。后者是升阳工作站使用的处理器。因此,Solaris在SPARC上拥有强大的处理能力,同时Intel x86上的性能也正在得到改善。对这两个平台,Solaris屏蔽了底层平台差异,为用户提供了尽可能一样的使用体验。


HP UX
      HP UX取自Hewlett Packard UniX,是惠普公司以System V为基础所研发成的类UNIX操作系统。HP-UX可以在HP的PA-RISC处理器、Intel的Itanium处理器上运行,另外过去也能用于后期的阿波罗电脑(Apollo/Domain)系统上。较早版本的HP-UX也能用于HP 9000系列200型、300型、400型的电脑系统(使用Motorola的68000处理器)上,和HP-9000系列500型电脑(使用HP专属的FOCUS处理器架构)。

IRIX
      IRIX是由硅谷图形公司(简称SGI,SGI被HPE收购)以System V与BSD延伸程序为基础所发展成的UNIX操作系统,IRIX可以在SGI公司的RISC型电脑上运行,即运行基于32位、64位MIPS架构的SGI工作站、服务器之上。

Xenix
      Xenix是一种UNIX操作系统,可在个人电脑及微型计算机上使用。该系统由微软公司在1979年从美国电话电报公司获得授权,为Intel处理器所开发。后来,SCO公司收购了其独家使用权,自那以后,该公司开始以SCO UNIX (亦被称作SCO OpenServer)为名发售。它继承了UNIX的特性,Xenix具备了多人多任务的工作环境,符合UNIX System V的接口规格(SVID)。


A/UX
      A/UX取自Apple Unix,是苹果电脑公司所开发的UNIX操作系统,此操作系统可以在该公司的Macintosh电脑上运行,A/UX于1988年首次发表,最终的3.1.1版本于1995年发表。A/UX至少需要一颗具有浮点运算单元及标签页式的存储器管理单元PMMU (Paged Memory Management Unit)的处理器才能运行。


      A/UX是以System V 2.2版为基础所发展,同时使用System V3、System V4、BSD 4.2、BSD 4.3等的传统特色,它也遵循POSIX规范及SVID规范。

 

      从Unix操作系统的发展历史来看,又可以分为古典Unix,近代Unix和现代Unix,其中Linux起源于Minix,在严格意义上来讲不属于Unix范畴。智能终端系统除了苹果iOS外,Android、MeeGo和WebOS都属于Linux系统分支。

 

0?wx_fmt=png

 

      Linux有许多不同的版本,而且Linux的内核的发行和使用是完全免费的。所以很多的公司、组织,甚至是个人开发了他们自己Linux操作系统版本。随着Linux成熟发展和开放,Linux也经常内嵌在许多硬件设备之中,例如路由器、交换机、电话系统、智能手机、GPS系统等。比较受欢迎的Linux发行版如Fedora、Ubuntu、Red Hat、Debian、SUSE等

posted @ 2018-07-29 16:22  时空观察者9号  阅读(728)  评论(0编辑  收藏  举报