下一页 上一页 目录

1. Linux 简介

Linux 是 POSIX 规范的完全免费的重新实现,带有 SYSV 和 BSD 扩展(这意味着它看起来像 Unix,但并非来自相同的源代码库),源代码和二进制形式均可获得。其版权归 Linus Torvalds <torvalds@transmeta.com> 和其他贡献者所有,并根据 GNU 通用公共许可证 (GPL) 的条款免费再分发。 GPL 的副本包含在 Linux 源代码中;您也可以从 ftp://prep.ai.mit.edu/pub/gnu/COPYING 获取副本

Linux 本身只是操作系统的内核,即控制硬件、管理文件、分隔进程等的部分。Linux 与实用程序和应用程序的集合有几种组合,可以形成完整的操作系统。这些组合中的每一个都称为 Linux 的一个发行版Linux 这个词,虽然在其最严格的形式中特指内核,但也广泛且正确地指代围绕 Linux 内核构建的整个操作系统。有关各种发行版的列表和简要说明,请参阅 http://sunsite.unc.edu/LDP/HOWTO/Distribution-HOWTO.html 没有任何这些发行版是“官方 Linux”。

Linux 不是公共领域,也不是“共享软件”。它是“自由”软件,通常称为 自由软件开源软件[tm](参见 https://open-source.org.cn),您可以赠送或出售副本,但您必须包含源代码或以与您赠送或出售任何二进制文件相同的方式提供源代码。如果您分发任何修改,您在法律上有义务分发这些修改的源代码。有关详细信息,请参阅 GNU 通用公共许可证。

截至 2.0 版本,Linux 仍然是免费的,并且将继续保持免费。由于 Linux 所受的 GPL 的性质,使其不免费将是非法的。请仔细注意:“免费”部分涉及访问源代码,而不是金钱;为分发 Linux 收费是完全合法的,只要您也分发源代码。这是一个概括;如果您想要了解细则,请阅读 GPL。

Linux 在带有 ISA、EISA、PCI 和 VLB 总线的 386/486/奔腾机器上运行。 MCA(IBM 的专有总线)在 2.0.x 和更早版本中没有得到很好的支持,但支持已添加到当前的开发树 2.1.x 中。如果您有兴趣,请参阅 http://glycerine.itsmm.uni.edu/mca

有一个移植到多个 Motorola 680x0 平台的版本(目前在一些 Amigas、Ataris 和 VME 机器上运行),现在运行良好。它需要一个带有 MMU 的 68020、一个 68030、68040 或 68060,并且还需要一个 FPU。网络和 X 现在可以工作了。请参阅 news:comp.os.linux.m68k

Linux 在 DEC 的 Alpha CPU 上运行良好,目前支持“Jensen”、“NoName”、“Cabriolet”、“Universal Desktop Box”(更广为人知的 Multia)和许多其他平台。有关更多信息,请参阅 http://www.azstarnet.com/~axplinux/FAQ.html

Linux 在 Sun SPARC 上运行良好;大多数 sun4c、sun4m 和 sun4u 机器现在都运行 Linux,并且正在开发对 sun4 的支持。Red Hat Linux(在撰写本文时)是唯一可用于 SPARC 的 Linux 发行版;请参阅 https://#/support/docs/rhl-sparc/

Linux 正在积极地移植到 PowerPC 架构,包括 PowerMac(Nubus 和 PCI)、Motorola、IBM 和 Be 机器。请参阅 http://www.cs.nmt.edu/~linuxppc/http://www.linuxppc.org/

移植到其他机器(包括 MIPS(参见 http://linus.linux.sgi.comhttp://lena.fnet.fr/)和 ARM)正在进行中,并显示出不同程度的进展。不要屏住呼吸,但如果您有兴趣并且能够做出贡献,您很可能会找到其他希望与您合作的开发人员。

Linux 不再被认为是 beta 测试版,因为 1.0 版本于 1994 年 3 月 14 日发布。系统中仍然存在错误,并且随着时间的推移,新的错误会不断出现并得到修复。由于 Linux 遵循“开放开发模型”,因此所有新版本都将向公众发布,无论它们是否被认为是“生产质量”。但是,为了帮助人们判断他们获得的是否是稳定版本,已经实施了以下方案:版本 n.x.y,其中 x 是偶数,是稳定版本,并且只有错误修复会随着 y 的递增而应用。因此,从 1.2.2 版本到 1.2.3 版本,只有错误修复,没有新功能。版本 n.x.y,其中 x 是奇数,是仅供开发人员使用的 beta 质量版本,可能不稳定并且可能崩溃,并且一直在向其中添加新功能。 > 不时地,随着当前的开发内核稳定下来,它将被冻结为新的“稳定”内核,并且开发将继续在新开发版本的内核上进行。请注意,大多数 Linux 内核版本,无论是 beta 版还是非 beta 版,都相对稳定;在这种情况下,“稳定”除了“健壮”之外,还意味着“变化缓慢”。

当前的稳定版本是 2.0.35(随着新的设备驱动程序被添加和错误被修复,这将继续变化),并且实验性的 2.1.x 内核的开发也已经开始。Linux 内核源代码包含一个文件 Documentation/Changes,其中解释了从一个内核版本升级到另一个内核版本时您应该注意的更改。但是,绝大多数 Linux 用户只是偶尔更新他们的 Linux 发行版以获得新的内核版本。

大多数版本的 Linux,无论是 beta 版还是非 beta 版,都非常健壮,如果它们满足您的需求并且您不想处于前沿,您可以继续使用这些版本。一个站点有一台计算机运行 0.97p1 版本(可以追溯到 1992 年夏天)超过 136 天而没有错误或崩溃。(如果挖掘机操作员没有将主电源变压器误认为垃圾箱,时间会更长...)其他人发布了超过一年的正常运行时间。一个站点最后报告仍然有一台计算机运行 Linux 0.99p15s 超过 600 天。

需要注意的一件事是,Linux 是使用开放和分布式模型开发的,而不是像许多其他软件那样使用封闭和集中式模型。这意味着当前的开发版本始终是公开的(最多延迟一两周),以便任何人都可以使用它。结果是,每当发布具有新功能的版本时,它几乎总是包含错误,但它也导致了非常快速的开发,以便快速找到并纠正错误,通常在几个小时内,因为许多人都在努力修复它们。

相比之下,封闭和集中式模型意味着只有一个人员或团队在从事该项目,并且他们只发布他们认为运行良好的软件。通常,这会导致发布之间的时间间隔很长,等待错误修复的时间很长以及开发速度较慢。此类软件的最新公开发布版本有时质量更高,但开发速度通常要慢得多。

有关这两种模型的讨论,请阅读 Eric Raymond 的 http://sagan.earthspace.net/~esr/writings/cathedral-bazaar/ 中的“大教堂与集市”。

截至 1998 年 9 月 1 日,Linux 的当前稳定版本是 2.0.35,最新的开发版本是 2.1.119。


下一页 上一页 目录