导读
  开源操作系统即公开源代码的操作系统软件,它遵循开源协议使用、编译和发布。自由和开放源代码软件中的是Linux,它是一种类Unix的操作系统。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。
  严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程中各种工具和数据库的操作系统。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。流行的Linux版本有Ubuntu、Debian、Fedora、openSUSE、CentOS、Red Hat等,移动开发领域使用广泛的Android也是基于Linux内核开发的操作系统。
  除了Linux外,还有很多其它的开源系统,现对Linux以外的开源操作系统进行一次搜集和整理,详细内容如下:
  1、KnightOS
  KnightOS是一个专为TI Z80计算器编写的开源操作系统,其代码托管在GitHub上。KnightOS提供了很多新特性,如开源,支持多任务,可同时运行32个任务;具有基于树型结构的文件系统;具有跨平台特性,能够支持包括新的银版彩屏计算器在内的9种计算器、具有内存安全特性,重启后不会影响用户数据;KnightOS内核具有独立特性,它采用类 Unix 的环境,使用Z80的汇编语言编写,开发者可以用它来编写自己的操作系统;需要较少的内存,使用31K的内存即可运行程序。
  2、ToAruOS
  ToAruOS是一个由伊利诺伊大学计算机科学本科生开发的业余爱好操作系统,其代码托管在GitHub上。ToAruOS可在POSIX和x86架构上运行,其终的目标是一个微内核。ToAruOS的主要功能包括对进程和线程的支持、ELF二进制的支持、运行时加载模块、管道(Pipe)和各种类型的终端设备(TTY)的支持、虚拟文件系统的支持、EXT2文件系统的支持、信号量支持等。
  3、OSv
  OSv是由Dor Laor和Avi Kivity领导的以色列创业公司Cloudius Systems发布的虚拟化、开源的操作系统,采用BSD许可协议授权,其代码托管在GitHub上。OSv的开发动机是由于大部分的应用都是跑在云端的 GNU/Linux虚拟机上,而GNU/Linux在设计之初并非为虚拟化而设计,像多用户和多进程的模式不但造了复杂性而且也成为的 hypervisor的性能障碍。OSv旨在在云端取Linux。OSv能够使得一个应用程序跑在一个虚拟机上,这样不需要kernel-land到user-land 的隔离,从而降低上下文切换的损耗;在启动速度方面,OSv只需要2秒能启动完成;在安全性方面,目前,OSv支持检测use-after-free;在网络方面,OSv完全继承了FreeBSD的TCP/IP协议栈;在文件系统方面,OSv支持ZFS。另外,OSv还为应用程序提供了新的API,既支持原生的Linux应用,还支持原生的JVM和基于JVM构建的应用。
  4、B2G
  B2G是“Boot To Gecko”的缩写,它是Mozilla公司基于Web标准开发的完全开放的移动操作系统,其代码托管在GitHub上,从系统本身到应用程序完全由HTML5、CSS和JS来写的。B2G采用了linux内核和部分Android技术。目前,B2G已经被移植到了Galaxy S II、Nexus S 4G等Android手机上。B2G的前期目标是低价的功能机市场,先让功能机用户以同样的价格用上智能机。B2G不同于Android和IOS等平台,它完全基于Web标准,没有私有API和SDK,完全托付给Web API,这样省去了开发SDK的步骤,开发者也省去了安装调试以及学习SDK的步骤。另外,B2G还有一个与众不同的功能,用户能够查看应用的源码,好像使用浏览器可以察看网页代码一样方便。
  5、jsos
  jsos是一个由来自澳大利亚的Charlie Somerville 于2010年使用JavaScript编写的开源操作系统,其内核、C库、编译器和JavaScript虚拟机都遵守简单的BSD 协议发布,其中内核包括了一些来至ToAruOS操作系统的代码。自从两年前后一次的更新维护,Jsos至今还没有继续更新。
  6、Singularity
  Singularity是一种实验性、开源的微内核操作系统,它由微软研究院设计、开发,该操作系统的核心、驱动程序以及应用程序都以“受控代码”写成。Singularity的设计不以其性能为标准,而以系统稳定性作为首要标准。Singularity的低级x86中断使用汇编语言和C语言写成;Singularity的硬件抽象层使用C++语言编写,并运行在安全模式下;另外,并且也有部分C代码负责调试工作。
  7、BareMetal OS
  BareMetal OS是一个为X86-64系统开发、开源的64位操作系统,它使用汇编语言编写且能够使用C/C++开发应用程序,其代码托管在GitHub上。该系统的开发有三个适用场景,第一个是使用高性能的计算,能够作为HPC集群的节点,也能够为但认为系统以运行高负荷的计算任务;第二个是嵌入式应用,提供了基于x86-64硬件的嵌入应用开发平台;第三个是提供教育和教学使用,提供了基于X86-64环境的汇编语言的学习和实验的环境。目前,该系统只是尽可能提供有用的功能,还没有将其打造成通用操作系统(如Mac OS X、Linux、Windows)的计划。
  开源操作系统具有安全、稳定、免费或少许费用、能够快速修复漏洞、有强大社区的大力支持等优点,同时还为大家提供了学习和交流的资源。开源操作系统在服务器市场已占有了的优势,同时在个人PC市场也正在发展壮大。目前,连微软对待Linux的态度都有了巨大的转变,已从原来的将Linux比作毒瘤到现在的宣布:微软爱Linux的巨大转变。