
开源作业系统
开源作业系统(open source operating system) ,就是公开原始码的作业系统软体,可以遵循开源协定(GNU)进行使用、编译和再发布。在遵守GNU协定的前提下,任何人都可以免费使用,随意控制软体的运行方式。
基本介绍
- 软体名称:开源作业系统
- 代表:Linux作业系统
- 英文名:open source operating system
- 意义:公开原始码的作业系统软体
简介
开源作业系统(open source operating system) ,就是公开原始码的作业系统软体,可以遵循开源协定(GNU)进行使用、编译和再发布。在遵守GNU协定的前提下,任何人都可以免费使用,随意控制软体的运行方式。
起源

在国际开源作业系统中最着名的一种为“Linux作业系统”,它是一种计算机作业系统的泛称,中文读法大致为“里纳克斯”。Linux作业系统的核心的名字也是“Linux”。Linux作业系统也是自由软体和开放原始码发展中最着名的例子。
发展史
开源作业系统的历史是和GNU紧密联繫在一起的。从1983年开始的GNU计画致力于开发一个自由并且完整的类Unix作业系统,包括软体开发工具和各种应用程式。到1991年 Linux核心发布的时候,GNU已经几乎完成了除了系统核心之外的各种必备软体的开发。在Linus Torvalds和其他开发人员的努力下,GNU组件可以运行于Linux核心之上。整个核心是基于 GNU 通用公共许可,也就是GPL(GNU General Public License,GNU通用公共许可证)的,但是Linux核心并不是GNU 计画的一部分。1994年3月,Linux1.0版正式发布,Marc Ewing成立了 Red Hat软体公司,成为最着名的 Linux 分销商之一。
Unix & Linux历史源流早期Linux的开机管理程式(boot loader)是使用LILO(Linux Loader),存在着一些难以容忍的缺陷,例如无法识别8G以外的硬碟,后来新增GRUB(GRand Unified Bootloader)克服了这些缺点,具有‘动态搜寻核心档案’的功能,可以让您在开机的时候,可以自行编辑您的开机设定系统档案,透过 ext2 或 ext3 档案系统中载入 Linux Kernel。 Linux 的标誌和吉祥物是一只名字叫做 Tux 的 企鹅,标誌的由来是因为Linus在澳洲时曾被一只动物园里的企鹅咬了一口,便选择了企鹅作为Linux的标誌。Linux的注册商标是Linus Torvalds所有的。这是由于在1996年,一个名字叫做William R. Della Croce的律师开始向各个 Linux 发布商发信,声明他拥有Linux商标的所有权,并且要求各个发布商支付版税,这些发行商集体进行抗诉,要求将该注册商标重新分配给 Linus Torvalds。Linus Torvalds 一再声明 Linux 是免费的,他本人可以卖掉,但 Linux 绝不能卖。 Linux发行版的某些版本是不需要安装,只需通过CD或者可启动的USB存储设备就能使用的版本,他们称为 LiveCD。
特点
相对于不开源的作业系统,如Windows和Mac,开源作业系统最大的特点就是开放原始码和自由定製,但也会因为使用者的技术水平等关係出现很多不可预知的情况及维护问题,并且由于多数硬体和软体厂商并不支持开源软体.所以在驱动和软体源方面有很大困难,这就要求个人用户在选择系统时需要注意根据自己的实际情况来选择,这也是目前个人使用开源作业系统较为困难的最主要原因。
类别
Unix-like类:Linux(这一族开发者众多,发行版本以千计,覆盖所有平台,并支持所有档案格式和所有网路协定)、FreeBSD、OpenBSD、NetBSD(覆盖所有平台)、DrangonflyBSD、Darwin/OpenDarwin/PureDarwin、Minix、GNU Mach/GNU Hurd、L4/Fiasco/Pistachio、syllable、禅OS
Unix类:Opensolaris、AuroraUX、Plan9、Inferno – Plan 9。
dos类:Freedos
Linux开源作业系统

windows-like类:ReactOS
原创类:House、KolibriOS、MenuetOS、HelenOS、Openvms
GoboLinux
GoboLinux是一个开源作业系统,其最显着的特色是重新组织的档案系统层次结构。它没有遵循以往类UNIX作业系统的档案系统层次结构标準(FHS)。在GoboLinux下,每个软体都有自己的子目录树,其下包含它属的所有档案。因此,程式“Foo”的专属档案与库都在" /Programs/Foo "目录下。很明显,“可执行”档案位于" /Programs/Foo "。根据GoboLinux开发者的观点,其意义在于构建一个在档案层级上结构明晰的系统。
XFree86
XFree86是X视窗系统的其中一个实现,自1992年,它一直循着自由发放的开放原始码模式被发展。它主要的运作平台是Unix类作业系统,包括各版本的UNIX、Linux、BSD、Solaris、Mac OS X、IRIX、OpenVMS及Cygwin/X等。
由2004年开始,它再不是以GPL软体许可证的形式出现,而是使用XFree86®Project公司所拥有的XFree86 Licenseversion 1.1软体许可证模式发放。现时XFree86仍由XFree86®Project公司负责开发,该公司的主要负责人是David Dawes。
自1992年至2004年,XFree86是X视窗系统最被广泛使用的基建平台。其后,XFree86的开发因软体许可证出现分岐,而派生出另一个发展自XFree86 4.4 RC2版本原始码,名叫X.Org伺服器的X视窗系统。大部分使用XFree86的开源作业系统和开发者都转为使用X.Org。XFree86从2008年底发布4.8.0以后已经完全停止更新。
ReactOS
ReactOS是一个开发与Windows NT和Windows 2000应用程式、硬体驱动程式兼容的开源作业系统项目。本项目虽然只是处于内部测试(alpha)开发状态,但到2005年1月其中一些子项目已经完成了目标。
ReactOS主要是由C语言编写。部分组件则由C++编写,例如ReactOS档案浏览器。
ReactOS的各部份在GNU通用公共许可证、GNU宽通用公共许可证、及/或BSD License下发布。
为确保作业系统没有任何一部份是看过泄漏出来的微软Windows源码的人所写,或者逆向工程的过程达不到Clean room design标準,一个全盘的源码审查由ReactOS主要开发者下令展开。此审查已经退出。
机遇
开源为开发作业系统提供机遇。透明、公开的开源作业系统问世,使得对作业系统内部架构的开发人员,获得了了解作业系统体系架构的机遇,也使他们在这方面的知识产生飞跃;基于开源的作业系统可为开发工作节约大量人力、物力、财力和时间,可使作业系统的开发者们得以站在巨人肩膀上前进。因此开发基于开源的作业系统无疑是一条正确的开发路线。
很多基于Linux核心的作业系统相继问世,如Android、WebOS、MeeGo等,便是採取了基于Linux核心的技术发展路线。
体系架构
作业系统的体系架构,由其底层(Base Layer)、中间件层(Middle Ware Layer)、用户体验层(User Experience Layer)以及独立配置的软体模组,如安全模组(Secarity Module)所构成。
底层主要是其核心(Kernel);对中间件层,从开发者角度看,主要指开发环境和运行环境(Development Environment and Runtime Environment),从用户角度看,主要指各种功能模组(Functional Modules)或套用架构(Application Framework);用户体验层(UE=UI+Applicaions),由用户界面和各种应用程式所构成。所以,作业系统是一个多层架构、多元协定、许多构件构成的系统。
核心
很多作业系统是基于Linux核心来开发的。Linux基金会(Linux社区)负责“Linux核心”官方(Official)或主干的各款通用版本的开发、发行和维护工作。对基于Linux核心的作业系统的开发者来说,可选择某款Linux核心版本作为自己作业系统的核心,如果要对主干版本进行修改以形成自己的分支核心版本时,必须将其修改部分及时反馈给主干版本的维护管理者,取得他们对修改的认可,并在主干Linux核心中登记注册,最终使这个分支核心版本成为Linux核心大家庭中一员。
Android是基于Linux核心的作业系统。谷歌Android开发团队在开发Android作业系统过程中,曾将配置在Linux核心中的一些驱动模组转移到Linux核心之外,他们还重新定义、增设某些功能模组(如电源管理模组等),修改后一度引起了Linux社区与谷歌Android开发团队之间的意见冲突,但最终还是通过协商取得了一致。上述案例表明,谷歌修改主干 “Linux核心”变成自己分支 “Android核心”时,必须取得主干Linux核心维护管理者的认可,并在其中登记注册,使“Android核心”成为“Linux核心”的一部分。