summaryrefslogtreecommitdiff
path: root/docs/thegnuproject.md
diff options
context:
space:
mode:
authorpersmule <persmule@gmail.com>2016-07-17 15:38:14 +0800
committerpersmule <persmule@gmail.com>2016-07-17 15:50:09 +0800
commit50ec25d8be5bea4754f6a526ff594b6a1a0329ff (patch)
treeb12d43e32b85ef67720b8f13a959fb6fdfd843f8 /docs/thegnuproject.md
parent84ff67c8383817691b5f82fe9a391cb5af45b5f7 (diff)
downloadfsfs-zh-50ec25d8be5bea4754f6a526ff594b6a1a0329ff.tar.xz
add spaces between Chinese and latin words.
Diffstat (limited to 'docs/thegnuproject.md')
-rw-r--r--docs/thegnuproject.md304
1 files changed, 152 insertions, 152 deletions
diff --git a/docs/thegnuproject.md b/docs/thegnuproject.md
index 038d51c..0dfacc1 100644
--- a/docs/thegnuproject.md
+++ b/docs/thegnuproject.md
@@ -34,8 +34,8 @@ the Digital PDP-10, one of the large computers of the era. As a member
of this community, an AI Lab staff system hacker, my job was to improve
this system.
-人工智能实验室使用一个叫ITS(不兼容分时系统)的分时操作系统,由实验室的
-黑客[(1)](#FOOT1)员工们设计,并以Digital PDP-10——当年的大型机之一
+人工智能实验室使用一个叫 ITS(不兼容分时系统)的分时操作系统,由实验室的
+黑客[(1)](#FOOT1)员工们设计,并以 Digital PDP-10 ——当年的大型机之一
——的汇编语言写成。作为这个社区和人工智能实验室系统黑客员工的一员,我的工作
便是改进这个系统。
@@ -60,8 +60,8 @@ in the 60s, could not extend naturally to the larger address spaces that
were becoming feasible in the 80s. This meant that nearly all of the
programs composing ITS were obsolete.
-当80年代出Digital关停了PDP-10系列时,形势发生了剧变。PDP-10在60年代优雅而强大
-的架构无法自然地扩展到80年代开始可用的更大的地址空间上。这意味着几乎所有组成ITS的
+当80年代出 Digital 关停了 PDP-10 系列时,形势发生了剧变。PDP-10 在60年代优雅而强大
+的架构无法自然地扩展到80年代开始可用的更大的地址空间上。这意味着几乎所有组成 ITS 的
程序都要作废。
@firstcopyingnotice{{@footnoterule @smallskip Copyright © 1998, 2001,
@@ -73,7 +73,7 @@ System and the Free Software Movement.” Though I was never a supporter
of “open source,” I contributed this article anyway, so that the ideas
of the free software movement would not be entirely absent from that
book. This version is part of @fsfsthreecite}
- {本文最初以标题“GNU操作系统和自由软件运动”发表于由Chris DiBona等人编写的
+ {本文最初以标题“GNU操作系统和自由软件运动”发表于由 Chris DiBona 等人编写的
《开放源码:开源革命之声》(Sebastopol: O’Reilly Media, 1999)。尽管我不是
“开放源码”的支持者,我还是贡献了这篇文章, 这样自由软件运动的思想不会在这本
书中完全失声。此版本是 @fsfsthreecite 的一部分。}
@@ -86,16 +86,16 @@ events, as well as giving a clear picture of this community in its
prime.) When the AI Lab bought a new PDP-10 in 1982, its administrators
decided to use Digital’s nonfree timesharing system instead of ITS.
-人工智能实验室的黑客社区不久前就解体了。在1981年,附属的Symbolics公司几乎雇走了
-人工智能实验室的所有黑客,而严重减员的社区已无法自持。(由Steve Levy撰写的《黑客》
+人工智能实验室的黑客社区不久前就解体了。在1981年,附属的 Symbolics 公司几乎雇走了
+人工智能实验室的所有黑客,而严重减员的社区已无法自持。(由 Steve Levy 撰写的《黑客》
一书记述了这些场景,并给出了一幅社区全盛时期的清晰图景。)人工智能实验室在1982年
-买了一台新的PDP-10,而其管理员打算使用Digital的非自由分时系统取代ITS。
+买了一台新的 PDP-10,而其管理员打算使用 Digital 的非自由分时系统取代 ITS。
The modern computers of the era, such as the VAX or the 68020, had their
own operating systems, but none of them were free software: you had to
sign a nondisclosure agreement even to get an executable copy.
-那时的新计算机,如VAX或68020,都自带着操作系统,但没有一个是自由软件:只是为了得到一份
+那时的新计算机,如 VAX 或 68020,都自带着操作系统,但没有一个是自由软件:只是为了得到一份
可以运行的副本,你就得签保密协议。
This meant that the first step in using a computer was to promise not to
@@ -128,7 +128,7 @@ The real message of these statements is in the unstated assumptions they
take for granted, which the public is asked to accept without
examination. Let’s therefore examine them.
-当软件出版者谈论“行使”他们的“权利”或“停止盗版”[(2)](#FOOT2)时,他们实际“说”的是次要的。
+当软件出版者谈论“行使”他们的“权利”或“停止盗版” [(2)](#FOOT2) 时,他们实际“说”的是次要的。
这些声明真正传达的是他们将未阐明的假设视为理所当然;公众被要求不加检验地接受这些。还是让
我们来仔细检验检验吧。
@@ -263,7 +263,7 @@ would include them too.
操作系统指的不仅是一个内核,刚刚足够运行其他程序。在1970年代,能称得上操作系统的软件都包含了
命令处理器、汇编器、编译器、解释器、调试器、文本编辑器、邮件程序,以及其它许多程序。ITS、Multics、
-VMS和Unix都有这些。GNU操作系统也得有。
+VMS 和 Unix 都有这些。GNU 操作系统也得有。
Later I heard these words, attributed to Hillel:[(3)](#FOOT3) @medskip
@@ -280,7 +280,7 @@ Later I heard these words, attributed to Hillel:[(3)](#FOOT3) @medskip
@smallskip The decision to start the GNU Project was based on a similar
spirit.
-@smallskip 启动GNU工程的决定正是基于类似的精神。
+@smallskip 启动 GNU 工程的决定正是基于类似的精神。
### Free as in Freedom {#free-as-in-freedom .subheading}
@@ -324,7 +324,7 @@ people are not free to include on these collections is not free
software.
因为“free”指的是自由,而不是价格,所以在销售副本和自由软件间没有矛盾。事实上,销售副本的
-自由是很重要的:以CD-ROM形式卖出的自由软件集对社区很重要,并且出售它们是为自由软件开发
+自由是很重要的:以 CD-ROM 形式卖出的自由软件集对社区很重要,并且出售它们是为自由软件开发
筹集资金的重要方法。因此,无法自由加入到这些软件集中的程序就不是自由软件。
Because of the ambiguity of “free,” people have long looked for
@@ -360,7 +360,7 @@ programs that are not GNU software, programs that were developed by
other people and projects for their own purposes, but which we can use
because they are free software.
-由于上述决定,和其他类似的决定,GNU系统不同于所有GNU软件的集合。GNU系统包含非GNU的软件,
+由于上述决定,和其他类似的决定,GNU 系统不同于所有 GNU 软件的集合。GNU 系统包含非 GNU 的软件,
这些程序是由其他人或工程为了他们自己的目的而开发的。我们之所以能用它们是因为它们是自由软件。
### Commencing the Project {#commencing-the-project .subheading}
@@ -376,15 +376,15 @@ package. I had no intention of doing a large amount of work only to see
it become useless for its intended purpose: creating a new
software-sharing community.
-我在1984年1月辞去了麻省理工的工作而开始编写GNU软件。离开麻省理工是必要的,这样麻省理工就无法
-干涉我将GNU作为自由软件发行。如果我还在职,麻省理工可能会要求拥有这些作品,并强加他们自己的发行
+我在1984年1月辞去了麻省理工的工作而开始编写 GNU 软件。离开麻省理工是必要的,这样麻省理工就无法
+干涉我将 GNU 作为自由软件发行。如果我还在职,麻省理工可能会要求拥有这些作品,并强加他们自己的发行
条款,甚至将它们变成一个私有软件包。我不希望做大量工作却只是看到它背离其初衷:创建一个新的软件
分享社区。
However, Professor Winston, then the head of the MIT AI Lab, kindly
invited me to keep using the lab’s facilities.
-尽管如此,Winston教授,后来的麻省理工人工智能实验室领导人,友善地邀请我继续使用实验室的设施。
+尽管如此,Winston 教授,后来的麻省理工人工智能实验室领导人,友善地邀请我继续使用实验室的设施。
### The First Steps {#the-first-steps .subheading}
@@ -396,15 +396,15 @@ is written with a *v.*) This was a compiler designed to handle multiple
languages, including C and Pascal, and to support multiple target
machines. I wrote to its author asking if GNU could use it.
-GNU工程开始前不久,我听说了自由大学编译器工具包,又称VUCK(荷兰语的“自由”一词以V开头)。该编译
-器设计成支持多种语言,包括C和Pascal,并支持多种目标机器,我曾写信给其作者询问 GNU 是否可以使用
+GNU 工程开始前不久,我听说了自由大学编译器工具包,又称 VUCK(荷兰语的“自由”一词以V开头)。该编译
+器设计成支持多种语言,包括 C 和 Pascal,并支持多种目标机器,我曾写信给其作者询问 GNU 是否可以使用
它。
He responded derisively, stating that the university was free but the
compiler was not. I therefore decided that my first program for the GNU
Project would be a multilanguage, multiplatform compiler.
-他嘲弄地回答了,声明该大学是自由的而该编译器不是。因此我决定我的第一个为了GNU工程而写的程序是一个
+他嘲弄地回答了,声明该大学是自由的而该编译器不是。因此我决定我的第一个为了 GNU 工程而写的程序是一个
多种语言,多平台的编译器。
Hoping to avoid the need to write the whole compiler myself, I obtained
@@ -416,10 +416,10 @@ to the Motorola 68000 computer. But I had to give that up when I
discovered that the compiler needed many megabytes of stack space, and
the available 68000 Unix system would only allow 64k.
-我希望能避免只靠自己编写整个编译器,因此我要来了Lawrence Livermore实验室开发的多平台编译器Pastal
-的源码。它支持一种适合系统编程的Pascal语言扩充版本,并由该语言写成。我给它加上了一个C前端,并开始
-将其移植到Motorola 68000计算机。但当我发现该编译器需要数兆字节的栈空间,而可用的68000 Unix系统
-仅允许64k时,我只得放弃。
+我希望能避免只靠自己编写整个编译器,因此我要来了 Lawrence Livermore 实验室开发的多平台编译器 Pastal
+的源码。它支持一种适合系统编程的Pascal语言扩充版本,并由该语言写成。我给它加上了一个 C 前端,并开始
+将其移植到 Motorola 68000计算机。但当我发现该编译器需要数兆字节的栈空间,而可用的 68000 Unix 系统
+仅允许 64k 时,我只得放弃。
I then realized that the Pastel compiler functioned by parsing the
entire input file into a syntax tree, converting the whole syntax tree
@@ -430,10 +430,10 @@ now known as GCC; none of the Pastel compiler is used in it, but I
managed to adapt and use the C front end that I had written. But that
was some years later; first, I worked on GNU Emacs.
-随后我了解到Pastel编译器的工作方式是分析整个输入文件得到一语法树,将整个语法树转化为一条“指令”链,
+随后我了解到 Pastel 编译器的工作方式是分析整个输入文件得到一语法树,将整个语法树转化为一条“指令”链,
再产生整个输出文件,整个过程不释放任何内存空间。到此为止,我总结我只得从头开始写一个新的编译器。那个
-新编译器现在叫GCC:其中没有一点Pastel编译器的内容,不过我仍努力把我之前写的C前端适配上去并用上。但
-那是几年后的事了:首先,我做出了GNU Emacs。
+新编译器现在叫 GCC:其中没有一点 Pastel 编译器的内容,不过我仍努力把我之前写的 C 前端适配上去并用上。但
+那是几年后的事了:首先,我做出了 GNU Emacs。
### GNU Emacs {#gnu-emacs .subheading}
@@ -442,8 +442,8 @@ beginning to be usable. This enabled me to begin using Unix systems to
do editing; having no interest in learning to use vi or ed, I had done
my editing on other kinds of machines until then.
-我从1984年9月开始写GNU Emacs,从1985年初它就开始可用了。这使得我开始可以使用Unix系统编辑文件:
-因为没有兴趣学用vi或ed,在那之前我在其他类型的机器上编辑文件。
+我从1984年9月开始写 GNU Emacs,从1985年初它就开始可用了。这使得我开始可以使用 Unix 系统编辑文件:
+因为没有兴趣学用 vi 或 ed,在那之前我在其他类型的机器上编辑文件。
At this point, people began wanting to use GNU Emacs, which raised the
question of how to distribute it. Of course, I put it on the anonymous
@@ -454,10 +454,10 @@ our new ftp server.) But at that time, many of the interested people
were not on the internet and could not get a copy by ftp. So the
question was, what would I say to them?
-这时候,人们开始想用GNU Emacs,因此出现了该如何发行它的问题。当然,我把它放在了我在麻省理工时用的
-计算机的匿名ftp服务器上(那台计算机`prep.ai.mit.edu`,因而成了主要的GNU ftp发行站点,当它一年后
-退役时,我将其域名转移到我们的新ftp服务器上)。但在那时,不少感兴趣的人们并不在互联网上而无法通过
-ftp得到副本。所以问题是,我该跟他们说什么?
+这时候,人们开始想用 GNU Emacs,因此出现了该如何发行它的问题。当然,我把它放在了我在麻省理工时用的
+计算机的匿名 ftp服务器上(那台计算机`prep.ai.mit.edu`,因而成了主要的 GNU ftp 发行站点,当它一年后
+退役时,我将其域名转移到我们的新 ftp 服务器上)。但在那时,不少感兴趣的人们并不在互联网上而无法通过
+ ftp 得到副本。所以问题是,我该跟他们说什么?
I could have said, “Find a friend who is on the net and who will make a
copy for you.” Or I could have done what I did with the original PDP-10
@@ -469,10 +469,10 @@ announced that I would mail a tape to whoever wanted one, for a fee of
precursor of the companies that today distribute entire GNU/Linux system
distributions.
-我可以说,“找个上网的朋友帮你下载一个。”或者我可以像对原来PDP-10 Emacs那样做:跟他们说,“寄一盘
-磁带和贴足邮资和地址的回信封来,我会把Emacs写到磁带上寄回去。”但我没有工作,而我正在寻找通过自由
-软件挣钱的方法。所以我宣布我会寄一盘磁带给任何想要的人,要价150美元。我以这种方式启动了发行自由软
-件的事业,那是今天发行整个GNU/Linux系统的公司们的先驱。
+我可以说,“找个上网的朋友帮你下载一个。”或者我可以像对原来 PDP-10 Emacs 那样做:跟他们说,“寄一盘
+磁带和贴足邮资和地址的回信封来,我会把 Emacs 写到磁带上寄回去。”但我没有工作,而我正在寻找通过自由
+软件挣钱的方法。所以我宣布我会寄一盘磁带给任何想要的人,要价 150 美元。我以这种方式启动了发行自由软
+件的事业,那是今天发行整个 GNU/Linux 系统的公司们的先驱。
### Is a Program Free for Every User? {#is-a-program-free-for-every-user .subheading}
@@ -487,7 +487,7 @@ copyrighted but distributed under simple permissive licenses which allow
proprietary modified versions.
如果一个程序离开作者的手时是自由软件,这并不一定意味着它对拥有其副本的每一个人都是自由软件。例如,
-公有领域的软件[(4)](#FOOT4)(没有版权的软件)是自由软件;但任何人都可以制作由它的修改而来的私权
+公有领域的软件 [(4)](#FOOT4) (没有版权的软件)是自由软件;但任何人都可以制作由它的修改而来的私权
版本。类似的,不少自由程序被版权保护但按照一个简单的、允许私有修改版的纵容性协议发行。
The paradigmatic example of this problem is the X Window System.
@@ -497,16 +497,16 @@ to their proprietary Unix systems, in binary form only, and covered by
the same nondisclosure agreement. These copies of X were no more free
software than Unix was.
-这个问题的典型例子是X窗口系统。这是个由麻省理工开发并以一个放纵性协议发行的自由软件,它很快被各个
-计算机公司接受。它们把X以有二进制的形式加到它们的私权Unix系统中,并被同样的保密协议控制着。这些X
-的副本和Unix一样,已经不再是自由软件。
+这个问题的典型例子是 X 窗口系统。这是个由麻省理工开发并以一个放纵性协议发行的自由软件,它很快被各个
+计算机公司接受。它们把 X 以有二进制的形式加到它们的私权 Unix 系统中,并被同样的保密协议控制着。这些 X
+的副本和 Unix 一样,已经不再是自由软件。
The developers of the X Window System did not consider this a
problem—they expected and intended this to happen. Their goal was not
freedom, just “success,” defined as “having many users.” They did not
care whether these users had freedom, only that they should be numerous.
-X窗口系统的开发者们并不认为这是个问题——他们期望并有意使其发生。他们的目标不是自由,而仅仅是
+X 窗口系统的开发者们并不认为这是个问题——他们期望并有意使其发生。他们的目标不是自由,而仅仅是
“成功”,那种定义为“有许多用户”的成功。他们不在意这些用户是否拥有自由,只是希望他们人数众多。
This led to a paradoxical situation where two different ways of counting
@@ -519,21 +519,21 @@ the proprietary versions that came with Unix systems, not the free
version.
这导致一个矛盾的情形,两种不同的自由度计算方法对同一个问题“这个程序自由吗?”给出不同的回答。
-如果你基于MIT许可证的发行条款给出的自由作判断,你就会说X是自由软件。但是如果你以一般X用户的
-自由来衡量,你就只能说它是私权软件。大多数X用户当时正在使用的是随Unix系统而来的私权版本,而
+如果你基于 MIT 许可证的发行条款给出的自由作判断,你就会说 X 是自由软件。但是如果你以一般X用户的
+自由来衡量,你就只能说它是私权软件。大多数 X 用户当时正在使用的是随 Unix 系统而来的私权版本,而
不是自由版本。
### Copyleft and the GNU GPL {#copyleft-and-the-gnu-gpl .subheading}
-### 左版和GNU GPL {#copyleft-and-the-gnu-gpl .subheading}
+### 左版和 GNU GPL {#copyleft-and-the-gnu-gpl .subheading}
The goal of GNU was to give users freedom, not just to be popular. So we
needed to use distribution terms that would prevent GNU software from
being turned into proprietary software. The method we use is called
“copyleft.”[(5)](#FOOT5)
-GNU的目标是给与用户自由,而不仅仅是流行。所以我们需要使用可以阻止GNU软件被转变成私权软件的
-发行条款。我们使用的方法叫“左版”[(5)](#FOOT5)
+GNU 的目标是给与用户自由,而不仅仅是流行。所以我们需要使用可以阻止 GNU 软件被转变成私权软件的
+发行条款。我们使用的方法叫“左版” [(5)](#FOOT5)
Copyleft uses copyright law, but flips it over to serve the opposite of
its usual purpose: instead of a means for restricting a program, it
@@ -560,7 +560,7 @@ saying, “You can’t share those changes, because we are going to use them
to make our proprietary version of the program.”
对于一个有效的左版,修改版也得是自由的。这确保了建立在我们的工作基础上的作品发布后将有用于社区。
-当以程序员为业者志愿改进GNU软件时,左版能防止他们的雇主说:“你不能分享那些改进,因为我们要用
+当以程序员为业者志愿改进 GNU 软件时,左版能防止他们的雇主说:“你不能分享那些改进,因为我们要用
它们来做一个我们的私权版本。”
The requirement that changes must be free is essential if we want to
@@ -571,7 +571,7 @@ great extent of X, but they were not trivial. If making changes were an
excuse to deny the users freedom, it would be easy for anyone to take
advantage of the excuse.
-如果我们要确保程序的每个用户的自由,修改必须自由的需求是必不可少的。那些私有化X窗口系统的公司
+如果我们要确保程序的每个用户的自由,修改必须自由的需求是必不可少的。那些私权化X窗口系统的公司
通常作了一些修改以将其移植到它们的系统和硬件。这些改动与X的大规模扩展相比而言是较小的,但是
它们并非微不足道。如果进行修改是拒绝用户自由的一个借口,任何人来利用该借口都是非常容易的。
@@ -594,9 +594,9 @@ GNU manuals are copylefted also, but use a much simpler kind of
copyleft, because the complexity of the GNU GPL is not necessary for
manuals.[(6)](#FOOT6)
-我们为大多数GNU软件使用的左版的明确实现是GNU通用公共许可证,或简称GNU GPL。我们在特定
-场合下有其它种类的左版可以使用。GNU手册也是左版的,但使用一个非常简化的左版类型,因为
-GNU GPL的复杂性对其手册是不需要的[(6)](#FOOT6)。
+我们为大多数 GNU 软件使用的左版的明确实现是 GNU 通用公共许可证,或简称 GNU GPL。我们在特定
+场合下有其它种类的左版可以使用。GNU 手册也是左版的,但使用一个非常简化的左版类型,因为
+GNU GPL 的复杂性对其手册是不需要的[(6)](#FOOT6)。
### The Free Software Foundation {#the-free-software-foundation .subheading}
@@ -610,9 +610,9 @@ the Emacs tape distribution business; later it extended this by adding
other free software (both GNU and non-GNU) to the tape, and by selling
free manuals as well.
-随着使用Emacs的兴趣的增长,其他人加入了GNU工程,我们感到再次筹集资金的时候到了。所以我们
-在1985年建立了自由软件基金会(FSF),一个发展自由软件的免税慈善机构。FSF也接手了发行
-Emacs磁带的工作;后来通过将其他自由软件(既有GNU的也有非GNU的)加到磁带上,和卖软件的
+随着使用 Emacs 的兴趣的增长,其他人加入了 GNU 工程,我们感到再次筹集资金的时候到了。所以我们
+在 1985 年建立了自由软件基金会(FSF),一个发展自由软件的免税慈善机构。FSF 也接手了发行
+Emacs 磁带的工作;后来通过将其他自由软件(既有GNU的也有非GNU的)加到磁带上,和卖软件的
自由手册扩展了该业务。
Most of the FSF’s income used to come from sales of copies of free
@@ -624,10 +624,10 @@ choice of platform). Today the FSF still sells manuals and other
gear,[(7)](#FOOT7) but it gets the bulk of its funding from members’
dues. You can join the FSF at <http://fsf.org/join>.
-FSF的大部分收入曾经来自销售自由软件的副本和其他相关服务(源代码的CD-ROM、二进制文件的
+FSF 的大部分收入曾经来自销售自由软件的副本和其他相关服务(源代码的 CD-ROM、二进制文件的
CD-ROM、精心印刷的手册,都有着再发行和修改的自由),以及豪华的发行(这儿我们为客户选择
-的平台定制完整的软件集)。今天FSF仍然销售手册和其他部件[(7)](#FOOT7),但大部分的资金
-来自成员的会费。你可以通过<http://fsf.org/join>来加入FSF。
+的平台定制完整的软件集)。今天 FSF 仍然销售手册和其他部件 [(7)](#FOOT7),但大部分的资金
+来自成员的会费。你可以通过 <http://fsf.org/join> 来加入FSF。
Free Software Foundation employees have written and maintained a number
of GNU software packages. Two notable ones are the C library and the
@@ -637,16 +637,16 @@ the Free Software Foundation staff, Roland McGrath. The shell used on
most GNU/Linux systems is BASH, the Bourne Again Shell,[(8)](#FOOT8)
which was developed by FSF employee Brian Fox.
-自由软件基金会的雇员已经编写并维护了大量的GNU软件包。两个值得注意的是C库和shell。
-GNU C库是运行与GNU/Linux系统上的任一程序用于和Linux通信的组件,由自由软件基金会的成员之一
-,Roland McGrath所开发。用于大部分GNU/Linux系统的shell是BASH,“再Bourne Shell”
-[(8)](#FOOT8),由FSF雇员Brian Fox编写。
+自由软件基金会的雇员已经编写并维护了大量的 GNU 软件包。两个值得注意的是 C 库和 shell。
+GNU C 库是运行于 GNU/Linux 系统上的任一程序用于和 Linux 通信的组件,由自由软件基金会的成员之一
+,Roland McGrath 所开发。用于大部分 GNU/Linux 系统的 shell 是 BASH,“再 Bourne Shell”
+[(8)](#FOOT8),由 FSF 雇员 Brian Fox 编写。
We funded development of these programs because the GNU Project was not
just about tools or a development environment. Our goal was a complete
operating system, and these programs were needed for that goal.
-我们资助了这些程序的开发是因为GNU工程并不仅仅与工具和开发环境有关。我们的目标是一个完整
+我们资助了这些程序的开发是因为 GNU 工程并不仅仅与工具和开发环境有关。我们的目标是一个完整
的操作系统,而该目标需要这些程序。
### Free Software Support {#free-software-support .subheading}
@@ -667,9 +667,9 @@ had developed. This included teaching, for subjects such as how to
program GNU Emacs and how to customize GCC, and software development,
mostly porting GCC to new platforms.
-销售Emacs的副本展现了一种自由软件的生意。当FSF接手了这项生意之后,我需要另一种方法谋生。
-我在销售与我所开发的自由软件相关的服务中找到了它。它包括教人们诸如对GNU Emacs编程,定制GCC,
-和主要是移植GCC到新平台的软件开发的课题。
+销售Emacs的副本展现了一种自由软件的生意。当 FSF 接手了这项生意之后,我需要另一种方法谋生。
+我在销售与我所开发的自由软件相关的服务中找到了它。它包括教人们诸如对 GNU Emacs 编程,定制 GCC,
+和主要是移植 GCC 到新平台的软件开发的课题。
Today each of these kinds of free software business is practiced by a
number of corporations. Some distribute free software collections on
@@ -678,7 +678,7 @@ questions, to fixing bugs, to adding major new features. We are even
beginning to see free software companies based on launching new free
software products.
-今天每个这一类的自由软件生意被许多公司实践着。有的通过CD-ROM发行自由软件集;其他的则销售服务,
+今天每个这一类的自由软件生意被许多公司实践着。有的通过 CD-ROM 发行自由软件集;其他的则销售服务,
从回答用户问题,到改正程序错误,以至增加大的新功能等不同层次上。我们甚至开始看到基于发起新的
自由软件产品的自由软件公司。
@@ -705,7 +705,7 @@ technical advantage over Unix, it would have a social advantage,
allowing users to cooperate, and an ethical advantage, respecting the
user’s freedom.
-GNU的首要目标是作为自由软件。即使GNU对Unix没有技术优势,它也有社会优势:允许用户合作;
+GNU的首要目标是作为自由软件。即使 GNU 对 Unix 没有技术优势,它也有社会优势:允许用户合作;
它还有道德优势:尊重用户的自由。
But it was natural to apply the known standards of good practice to the
@@ -714,7 +714,7 @@ arbitrary fixed size limits, and handling all the possible 8-bit codes
wherever that made sense.
但是自然要将好的实践的已知标准应用到工作上——例如,动态地分配数据结构以避免武断的固定大小限制,
-并在任何有意义之处处理所有可能的8位代码。
+并在任何有意义之处处理所有可能的 8 位代码。
In addition, we rejected the Unix focus on small memory size, by
deciding not to support 16-bit machines (it was clear that 32-bit
@@ -724,14 +724,14 @@ In programs for which handling very large files was not crucial, we
encouraged programmers to read an entire input file into core, then scan
its contents without having to worry about I/O.
-另外,我们放弃了面向小内存的Unix设计,决定不支持16位机器(显然32位机器在GNU系统被完成时将成为主流),
+另外,我们放弃了面向小内存的 Unix 设计,决定不支持 16 位机器(显然 32 位机器在 GNU 系统被完成时将成为主流),
并且不为了减少内存使用而作任何努力,除非超过了一兆字节。在处理非常大但不是至关紧要的文件的程序中,
我们鼓励程序员们将整个文件读入内存,然后扫描其内容而不必顾虑输入输出的问题。
These decisions enabled many GNU programs to surpass their Unix
counterparts in reliability and speed.
-这些决定使得不少GNU程序在可靠性和速度上超越了它们在Unix上的对应。
+这些决定使得不少 GNU 程序在可靠性和速度上超越了它们在 Unix 上的对应。
### Donated Computers {#donated-computers .subheading}
@@ -744,9 +744,9 @@ system, and replace the components of that system one by one. But they
raised an ethical issue: whether it was right for us to have a copy of
Unix at all.
-当GNU工程声名鹊起,人们开始给工程捐赠运行Unix的计算机。这非常有用,因为开发GNU组件最轻松的方法
-就是在一个Unix系统上做,然后一个一个地替换掉Unix系统上的组件。但这引发了一个道德问题:我们拥有
-Unix的副本从根本上说是不是正当的。
+当 GNU 工程声名鹊起,人们开始给工程捐赠运行 Unix 的计算机。这非常有用,因为开发 GNU 组件最轻松的方法
+就是在一个 Unix 系统上做,然后一个一个地替换掉 Unix 系统上的组件。但这引发了一个道德问题:我们拥有
+Unix 的副本从根本上说是不是正当的。
Unix was (and is) proprietary software, and the GNU Project’s philosophy
said that we should not use proprietary software. But, applying the same
@@ -755,7 +755,7 @@ justified, I concluded that it was legitimate to use a proprietary
package when that was crucial for developing a free replacement that
would help others stop using the proprietary package.
-Unix以前是(并且现在还是)私权软件,而GNU工程的哲学说我们不该用私权软件。然而,应用与推论出
+Unix 以前是(并且现在还是)私权软件,而 GNU 工程的哲学说我们不该用私权软件。然而,应用与推论出
“自卫的暴力是正当的”相同的理由,我的结论是:在开发用来帮助其他人停止使用私权软件包的自由软件代替品
的关键时刻,使用私权软件包是合理的。
@@ -764,7 +764,7 @@ no longer have any copies of Unix, because we have replaced them with
free operating systems. If we could not replace a machine’s operating
system with a free one, we replaced the machine instead.
-但是,尽管这是一个可以合理化的罪恶,它仍然是罪恶。今天我们已经不再持有任何Unix的副本,因为我们已经
+但是,尽管这是一个可以合理化的罪恶,它仍然是罪恶。今天我们已经不再持有任何 Unix 的副本,因为我们已经
用自由的操作系统取代了它们。如果我们不能将一台计算机的操作系统换成自由的,我们就把整台计算机都换掉。
### The GNU Task List {#the-gnu-task-list .subheading}
@@ -780,7 +780,7 @@ software and documentation projects that, we thought, a truly complete
system ought to have.
随着GNU工程的进行,以及越来越多的系统组件被找到或开发,最终使得整理一份未完成工作的清单变得很有用。
-我们用它来招募开发者来编写缺失的部分。它被称为GNU任务清单。除了尚未完工的Unix组件外,我们列出了
+我们用它来招募开发者来编写缺失的部分。它被称为 GNU 任务清单。除了尚未完工的 Unix 组件外,我们列出了
额外的各种各样的其它有用的软件和文档工程,我们认为,这些是一个真正完整的系统所应当拥有的。
Today, [(9)](#FOOT9) hardly any Unix components are left in the GNU Task
@@ -789,7 +789,7 @@ the list is full of projects that some might call “applications.” Any
program that appeals to more than a narrow class of users would be a
useful thing to add to an operating system.
-今天,[(9)](#FOOT9)留在GNU任务清单中的Unix组件除了一些无关紧要的之外已经几乎没有了——它们都已经
+今天,[(9)](#FOOT9)留在 GNU 任务清单中的 Unix 组件除了一些无关紧要的之外已经几乎没有了——它们都已经
被完成了。但清单中充满了可以被称为“应用程序”的工程。将任何不止能吸引一窄类用户的程序加到操作系统中
都是有益的。
@@ -799,8 +799,8 @@ compatibility was not an issue for games, so we did not follow the list
of games that Unix had. Instead, we listed a spectrum of different kinds
of games that users might like.
-就算是游戏都在任务清单里——而且从一开始就有。Unix包含游戏,所以GNU自然也该包含。但兼容性对游戏来说
-不是问题,所以我们没有跟着Unix已有的游戏列表走。作为代替,我们列出了用户可能会喜欢的一系列不同种类
+就算是游戏都在任务清单里——而且从一开始就有。Unix 包含游戏,所以 GNU 自然也该包含。但兼容性对游戏来说
+不是问题,所以我们没有跟着 Unix 已有的游戏列表走。作为代替,我们列出了用户可能会喜欢的一系列不同种类
的游戏。
### The GNU Library GPL {#the-gnu-library-gpl .subheading}
@@ -811,7 +811,7 @@ The GNU C Library uses a special kind of copyleft called the GNU Library
General Public License,[(10)](#FOOT10) which gives permission to link
proprietary software with the library. Why make this exception?
-GNU C库使用一种特别的左版,称作GNU库GPL(LGPL)[(10)](#FOOT10),允许将私权软件链接到该库上。为什么需要
+GNU C 库使用一种特别的左版,称作 GNU 库 GPL(LGPL)[(10)](#FOOT10),允许将私权软件链接到该库上。为什么需要
这样的特例?
It is not a matter of principle; there is no principle that says
@@ -820,14 +820,14 @@ contribute to a project predicated on refusing to share with us?) Using
the LGPL for the C library, or for any library, is a matter of strategy.
这不是原则问题:没有哪个原则说私权软件产品有资格包含我们的代码(为什么要为一个严辞拒绝与我们分享的
-工程作贡献呢?)为C库,或任何库使用LGPL,是有关策略的事情。
+工程作贡献呢?)为 C 库,或任何库使用 LGPL,是有关策略的事情。
The C library does a generic job; every proprietary system or compiler
comes with a C library. Therefore, to make our C library available only
to free software would not have given free software any advantage—it
would only have discouraged use of our library.
-C库做的是通用的工作:每个私权系统或编译器都附带C库。因此,让我们的C库只能为自由软件所用不会为自由软件
+C 库做的是通用的工作:每个私权系统或编译器都附带 C 库。因此,让我们的 C 库只能为自由软件所用不会为自由软件
带来任何优势——这只会吓阻人们使用我们的库。
One system is an exception to this: on the GNU system (and this includes
@@ -839,9 +839,9 @@ seems that disallowing them would do more to discourage use of the GNU
system than to encourage development of free applications. That is why
using the Library GPL is a good strategy for the C library.
-有一个系统是这个的例外:在GNU系统(包括GNU/Linux)中,GNU C库是唯一的C库。所以GNU C库的发行许可
-决定了是否可以为GNU系统编译私权程序。没有道德理由允许私权应用在GNU系统中运行,但从战略上看来禁止它们
-更多地吓阻人们使用GNU系统而不是鼓励开发自由应用。所以使用库GPL对C库是个好策略。
+有一个系统是这个的例外:在 GNU 系统(包括GNU/Linux)中,GNU C 库是唯一的 C 库。所以 GNU C 库的
+发行许可决定了是否可以为 GNU 系统编译私权程序。没有道德理由允许私权应用在GNU系统中运行,但从战略上看来
+禁止它们更多地吓阻人们使用 GNU 系统而不是鼓励开发自由应用。所以使用库 GPL 对 C 库是个好策略。
For other libraries, the strategic decision needs to be considered on a
case-by-case basis. When a library does a special job that can help
@@ -851,7 +851,7 @@ software developers, giving them an advantage against proprietary
software.
对其他的库,策略性的决定需要具体问题具体分析。当一个库做的是一种能帮助编写特定种类程序的特殊工作时,
-那么将其用GPL发行,限制其只能被用于自由软件,是一种帮助其它自由软件开发者的方法。这给了他们面对私权
+那么将其用 GPL 发行,限制其只能被用于自由软件,是一种帮助其它自由软件开发者的方法。这给了他们面对私权
软件的一个优势。
Consider GNU Readline, a library that was developed to provide
@@ -861,9 +861,9 @@ Readline is used, but that is no loss for us. Meanwhile, at least one
useful application has been made free software specifically so it could
use Readline, and that is a real gain for the community.
-考虑GNU Readline,一个被开发用来为BASH提供命令行编辑功能的库。Readline是用普通的GNU GPL而不是
-库GPL发行的。这可能确实减少了Readline的使用量,但这对我们没有损失。与此同时,至少有一个有用的应用
-特地变成了自由软件以能够使用Readline,那是社区的真正收获。
+考虑 GNU Readline,一个被开发用来为 BASH 提供命令行编辑功能的库。Readline 是用普通的 GNU GPL 而不是
+库 GPL 发行的。这可能确实减少了 Readline 的使用量,但这对我们没有损失。与此同时,至少有一个有用的应用
+特地变成了自由软件以能够使用 Readline,那是社区的真正收获。
Proprietary software developers have the advantages money provides; free
software developers need to make advantages for each other. I hope some
@@ -872,8 +872,8 @@ no parallel available to proprietary software, providing useful modules
to serve as building blocks in new free software, and adding up to a
major advantage for further free software development.
-私权软件有金钱提供的优势;自由软件开发者则要相互取得优势。我希望有朝一日我们能拥有大量受GPL保护的、没有
-可用的私有替代品的库,提供作为新自由软件的砖石的有用模块,并为进一步的自由软件开发添加巨大的优势。
+私权软件有金钱提供的优势;自由软件开发者则要相互取得优势。我希望有朝一日我们能拥有大量受 GPL 保护的、没有
+可用的私权替代品的库,提供作为新自由软件的砖石的有用模块,并为进一步的自由软件开发添加巨大的优势。
### Scratching an Itch? {#scratching-an-itch .subheading}
@@ -885,8 +885,8 @@ that happens sometimes, but many essential pieces of GNU software were
developed in order to have a complete free operating system. They come
from a vision and a plan, not from impulse.
-Eric Raymond[(11)](#FOOT11)说“每一个优秀的软件作品都开始于搔到开发者个人的痒处[(12)](#FOOT12)。”
-也许有时是这样。但不少GNU软件的关键部分是为了一个完整的自由操作系统而开发的。它们来自愿景和工程,而不是
+Eric Raymond[(11)](#FOOT11) 说“每一个优秀的软件作品都开始于搔到开发者个人的痒处 [(12)](#FOOT12)。”
+也许有时是这样。但不少 GNU 软件的关键部分是为了一个完整的自由操作系统而开发的。它们来自愿景和工程,而不是
冲动。
For example, we developed the GNU C Library because a Unix-like system
@@ -894,8 +894,8 @@ needs a C library, BASH because a Unix-like system needs a shell, and
GNU tar because a Unix-like system needs a tar program. The same is true
for my own programs—the GNU C compiler, GNU Emacs, GDB and GNU Make.
-例如,我们开发了GNU C库因为类Unix系统需要一个C库,开发了BASH因为类Unix系统需要一个shell,还有GNU tar
-因为类Unix系统需要一个tar程序。我们自己的程序也同样如此——GNU C编译器,GNU Emacs,GDB和GNU Make。
+例如,我们开发了 GNU C 库因为类 Unix 系统需要一个 C 库,开发了 BASH 因为类 Unix 系统需要一个 shell,还有 GNU tar
+因为类 Unix 系统需要一个 tar 程序。我们自己的程序也同样如此—— GNU C 编译器,GNU Emacs,GDB 和 GNU Make。
Some GNU programs were developed to cope with specific threats to our
freedom. Thus, we developed gzip to replace the Compress program, which
@@ -906,9 +906,9 @@ below). We are developing the GNU Privacy Guard to replace popular
nonfree encryption software, because users should not have to choose
between privacy and freedom.
-有些GNU程序是为应对我们的自由的特定威胁而开发的。为此,我们开发了gzip来取代因LZW专利而从社区流失的Compress
-程序。我们发现有人开发LessTif,最近更开始了GNOME和Harmony,来解决因某些私权软件库(见下文)所带来的问题。我们
-正在开发GNU隐私卫士来取代流行的非自由加密软件,因为用户不应该在隐私和自由之间作出选择。
+有些GNU程序是为应对我们的自由的特定威胁而开发的。为此,我们开发了 gzip 来取代因 LZW 专利而从社区流失的 Compress
+程序。我们发现有人开发 LessTif,最近更开始了 GNOME 和 Harmony,来解决因某些私权软件库(见下文)所带来的问题。我们
+正在开发 GNU 隐私卫士来取代流行的非自由加密软件,因为用户不应该在隐私和自由之间作出选择。
Of course, the people writing these programs became interested in the
work, and many features were added to them by various people for the
@@ -926,7 +926,7 @@ At the beginning of the GNU Project, I imagined that we would develop
the whole GNU system, then release it as a whole. That is not how it
happened.
-在GNU工程刚刚开始的时候,我觉得我们将开发整个GNU系统,然后整个发布。而这并没有发生。
+在 GNU 工程刚刚开始的时候,我觉得我们将开发整个 GNU 系统,然后整个发布。而这并没有发生。
Since each component of the GNU system was implemented on a Unix system,
each component could run on Unix systems long before a complete GNU
@@ -934,8 +934,8 @@ system existed. Some of these programs became popular, and users began
extending them and porting them—to the various incompatible versions of
Unix, and sometimes to other systems as well.
-因为GNU系统的每一个组件都是在Unix系统中实现的,每个组件早在一个完整的GNU出现以前就都可以在Unix系统中运行。
-这些程序有的变得流行,而用户们开始扩充并移植它们——到各种互不兼容Unix版本上,有时也会移植到其他系统。
+因为 GNU 系统的每一个组件都是在 Unix 系统中实现的,每个组件早在一个完整的 GNU 出现以前就都可以在 Unix 系统中运行。
+这些程序有的变得流行,而用户们开始扩充并移植它们——到各种互不兼容 Unix 版本上,有时也会移植到其他系统。
The process made these programs much more powerful, and attracted both
funds and contributors to the GNU Project. But it probably also delayed
@@ -944,7 +944,7 @@ developers’ time was put into maintaining these ports and adding
features to the existing components, rather than moving on to write one
missing component after another.
-这个过程使得这些程序更加强大,且为GNU工程引来了资金和贡献者。但或许也使得一个最小可用系统延迟了数年,因为GNU
+这个过程使得这些程序更加强大,且为 GNU 工程引来了资金和贡献者。但或许也使得一个最小可用系统延迟了数年,因为 GNU
的开发者们把时间投入到维护这些移植版和为已有组件增加特性,而不是去编写一个个缺失的组件上。
### The GNU Hurd {#the-gnu-hurd .subheading}
@@ -960,9 +960,9 @@ herd of GNUs) that run on top of Mach, and do the various jobs of the
Unix kernel. The start of development was delayed as we waited for Mach
to be released as free software, as had been promised.
-到了1990年,GNU系统几乎已完成了:唯一主要的缺失部分是内核。我们已经决定将我们的内核实现为一组运行在Mach上的
-服务进程。Mach是一个由卡内基梅隆大学,而后在犹他大学开发的微内核;GNU Hurd是运行于Mach之上一组服务(正如一群牛羚),
-负责Unix内核的各种任务。开发的启动有所延误,因为我们要等Mach作为自由软件发行,像它承诺的那样。
+到了1990年,GNU 系统几乎已完成了:唯一主要的缺失部分是内核。我们已经决定将我们的内核实现为一组运行在 Mach 上的
+服务进程。Mach 是一个由卡内基梅隆大学,而后在犹他大学开发的微内核;GNU Hurd 是运行于 Mach 之上一组服务(正如一群牛羚),
+负责Unix内核的各种任务。开发的启动有所延误,因为我们要等 Mach 作为自由软件发行,像它承诺的那样。
One reason for choosing this design was to avoid what seemed to be the
hardest part of the job: debugging a kernel program without a
@@ -974,8 +974,8 @@ out to be very hard to debug. Making the Hurd work solidly has stretched
on for many years.
选择这种设计的一个原因是为了避免此工作中看来似乎是最困难的一部分:在没有一个源码层调试器的条件下调试内核程序。
-这部分工作在Mach中已被完成,因此我们期待能将Hurd服务作为用户程序来调试,用GDB。但这花了很长时间才做到,而互相
-发消息的多线程服务群实际上非常难以调试。这使得让Hurd能够稳定工作的进程延长了很多年。
+这部分工作在 Mach 中已被完成,因此我们期待能将 Hurd 服务作为用户程序来调试,用 GDB。但这花了很长时间才做到,而互相
+发消息的多线程服务群实际上非常难以调试。这使得让 Hurd 能够稳定工作的进程延长了很多年。
### Alix {#alix .subheading}
@@ -986,31 +986,31 @@ would fit a common naming pattern for Unix system versions; as a joke,
she told her friends, “Someone should name a kernel after me.” I said
nothing, but decided to surprise her with a kernel named Alix.
-GNU的内核原本并未打算叫Hurd。它原本的名字是Alix——以我当时的恋人命名。她,作为一个Unix系统管理员,指出她的名字是
-多么符合Unix系统版本的一般命名模式;作为玩笑,她跟朋友说:“有人一定得用我的名字给一个内核起名。”我什么都没说,但打算
-用一个叫Alix的内核让她吃一惊。
+GNU 的内核原本并未打算叫 Hurd。它原本的名字是 Alix——以我当时的恋人命名。她,作为一个 Unix 系统管理员,指出她的名字是
+多么符合 Unix 系统版本的一般命名模式;作为玩笑,她跟朋友说:“有人一定得用我的名字给一个内核起名。”我什么都没说,但打算
+用一个叫 Alix 的内核让她吃一惊。
It did not stay that way. Michael (now Thomas) Bushnell, the main
developer of the kernel, preferred the name Hurd, and redefined Alix to
refer to a certain part of the kernel—the part that would trap system
calls and handle them by sending messages to Hurd servers.
-事情并没有保持不变。Michael(现在叫Thomas)Bushnell,内核的主要开发者,钟意Hurd这个名字,并重新定义了Alix
-来表示内核的某个特定部分——用于捕获系统调用并向Hurd服务器发消息以处理的那个部分。
+事情并没有保持不变。Michael(现在叫 Thomas)Bushnell,内核的主要开发者,钟意 Hurd 这个名字,并重新定义了 Alix
+来表示内核的某个特定部分——用于捕获系统调用并向 Hurd 服务器发消息以处理的那个部分。
Later, Alix and I broke up, and she changed her name; independently, the
Hurd design was changed so that the C library would send messages
directly to servers, and this made the Alix component disappear from the
design.
-后来,Alix和我分手了,她还改了名字;与此独立地,Hurd的设计改变了,以至于C库直接向服务器发消息,而这使得那个Alix
+后来,Alix 和我分手了,她还改了名字;与此独立地,Hurd 的设计改变了,以至于 C 库直接向服务器发消息,而这使得那个 Alix
组件从设计中消失了。
But before these things happened, a friend of hers came across the name
Alix in the Hurd source code, and mentioned it to her. So she did have
the chance to find a kernel named after her.
-但在这些事情发生以前,她的一个朋友在Hurd的源码中偶然见到了Alix这个名字,并告诉了她。所以她确实有机会发现有一个
+但在这些事情发生以前,她的一个朋友在 Hurd 的源码中偶然见到了 Alix 这个名字,并告诉了她。所以她确实有机会发现有一个
内核以她命名。
### Linux and GNU/Linux {#linux-and-gnulinux .subheading}
@@ -1022,7 +1022,7 @@ ever will be. The capability-based design has problems that result
directly from the flexibility of the design, and it is not clear whether
solutions exist.
-GNU Hurd尚不适合用于生产,我们也不知道它还能不能适合。这个基于能力的设计有着直接来源于设计灵活性的问题,而且
+GNU Hurd 尚不适合用于生产,我们也不知道它还能不能适合。这个基于能力的设计有着直接来源于设计灵活性的问题,而且
不知道有没有解。
Fortunately, another kernel is available. In 1991, Linus Torvalds
@@ -1033,9 +1033,9 @@ operating system. (Combining them was a substantial job in itself, of
course.) It is due to Linux that we can actually run a version of the
GNU system today.
-幸亏,有另一个内核可用。在1991年,Linus Torvalds开发了一个Unix兼容的内核并称为Linux。它一开始是私权的,
-但在1992年,他使其成为自由软件;整合Linux和尚不完整的GNU得到了一个完全自由的操作系统(当然,整合工作自身也很重要)。
-正是因为Linux我们今天终于能运行GNU系统的一个版本。
+幸亏,有另一个内核可用。在1991年,Linus Torvalds 开发了一个 Unix 兼容的内核并称之为 Linux。它一开始是私权的,
+但在 1992 年,他使其成为自由软件;整合 Linux 和尚不完整的 GNU 得到了一个完全自由的操作系统(当然,整合工作自身也很重要)。
+正是因为 Linux 我们今天终于能运行 GNU 系统的一个版本。
We call this system version GNU/Linux, to express its composition as a
combination of the GNU system with Linux as the kernel. Please don’t
@@ -1043,8 +1043,8 @@ fall into the practice of calling the whole system “Linux,” since that
means attributing our work to someone else. Please give us equal
mention.[(13)](#FOOT13)
-我们称这个版本的系统为GNU/Linux,以表达他是由GNU系统和作为内核的Linux整合而成的。不要实用主义地称整个系统为
-“Linux”,因为那将我们的工作归于他人。请同等程度地提及我们[(13)](#FOOT13)。
+我们称这个版本的系统为 GNU/Linux,以表达他是由 GNU 系统和作为内核的 Linux 整合而成的。不要实用主义地称整个系统为
+“Linux”,因为那将我们的工作归于他人。请同等程度地提及我们 [(13)](#FOOT13)。
### Challenges in Our Future {#challenges-in-our-future .subheading}
@@ -1074,7 +1074,7 @@ XFree86 can support new hardware. We have complete free systems today,
but we will not have them tomorrow if we cannot support tomorrow’s
computers.
-硬件厂商愈发倾向于对硬件规格保密。这使得编写让Linux和XFree86能支持新硬件的自由驱动程序变得很难。现在我们有了完整的自由操作系统,
+硬件厂商愈发倾向于对硬件规格保密。这使得编写让 Linux 和 XFree86 能支持新硬件的自由驱动程序变得很难。现在我们有了完整的自由操作系统,
但是如果不能支持明天的计算机,我们将会在明天失去它们。
There are two ways to cope with this problem. Programmers can do reverse
@@ -1102,8 +1102,8 @@ BIOS, LibreBoot[(14)](#FOOT14) (a distribution of coreboot); the problem
is getting specs for machines so that LibreBoot can support them without
nonfree “blobs.”\]
-\[2008 脚注:这个问题同样延伸到BIOS. 有一个自由的BIOS,LibreBoot[(14)](#FOOT14)(coreboot的一个发行版);
-这个问题对计算机变得重要起来,因为LibreBoot可以不用不自由的“Blob”就能支持它们。\]
+\[2008 脚注:这个问题同样延伸到 BIOS. 有一个自由的 BIOS,LibreBoot[(14)](#FOOT14) (coreboot的一个发行版);
+这个问题对计算机变得重要起来,因为 LibreBoot 可以不用不自由的“Blob”就能支持它们。\]
#### Nonfree Libraries {#nonfree-libraries .subsubheading}
@@ -1131,15 +1131,15 @@ someone to write a free replacement for Motif. The job took many years;
LessTif, developed by the Hungry Programmers, became powerful enough to
support most Motif applications only in 1997.
-这样的程序的第一个实例是80年代的Motif工具箱,尽管那时还没有自由操作系统,但是很显然Motif以后会对自由操作系统
-引发什么问题。GNU工程通过两种方式回应这个问题:通过请求个别的自由软件工程在支持Motif的同时也支持自由的X部件工具箱,
-并请求一些人编写替代Motif的自由软件。该工作花费许多年时间;由匈牙利程序员们开发的LessTif,在一九九七年才变得够强而
-得以支持大多数Motif应用程序。
+这样的程序的第一个实例是80年代的 Motif 工具箱,尽管那时还没有自由操作系统,但是很显然 Motif 以后会对自由操作系统
+引发什么问题。GNU 工程通过两种方式回应这个问题:通过请求个别的自由软件工程在支持 Motif 的同时也支持自由的 X 部件工具箱,
+并请求一些人编写替代 Motif 的自由软件。该工作花费许多年时间;由匈牙利程序员们开发的 LessTif,在一九九七年才变得够强而
+得以支持大多数 Motif应用程序。
Between 1996 and 1998, another nonfree GUI toolkit library, called Qt,
was used in a substantial collection of free software, the desktop KDE.
-在1996到1998年间,另一个不自由的GUI工具箱库,叫Qt,被用在KDE桌面这一包含大量自由软件的集合中。
+在1996到1998年间,另一个不自由的 GUI 工具箱库,叫 Qt,被用在 KDE 桌面这一包含大量自由软件的集合中。
Free GNU/Linux systems were unable to use KDE, because we could not use
the library. However, some commercial distributors of GNU/Linux systems
@@ -1149,14 +1149,14 @@ KDE group was actively encouraging more programmers to use Qt, and
millions of new “Linux users” had never been exposed to the idea that
there was a problem in this. The situation appeared grim.
-自由的GNU/Linux系统不能使用KDE,因为我们不能使用那个库。但是一些不严格坚持自由软件的GNU/Linux
-系统商业发行者将KDE加入到它们的系统中——而产生了有更强能力,和更少自由的系统。KDE小组积极地鼓励更多的
-程序员们使用Qt,成百万的新“Linux用户”从来都不知道有这样一个问题的存在。情形相当糟糕。
+自由的 GNU/Linux 系统不能使用 KDE,因为我们不能使用那个库。但是一些不严格坚持自由软件的 GNU/Linux
+系统商业发行者将 KDE 加入到它们的系统中——而产生了有更强能力,和更少自由的系统。KDE 小组积极地鼓励更多的
+程序员们使用 Qt,成百万的新“Linux用户”从来都不知道有这样一个问题的存在。情形相当糟糕。
The free software community responded to the problem in two ways: GNOME
and Harmony.
-自由软件社区以两种方法应对这个问题:GNOME和Harmony。
+自由软件社区以两种方法应对这个问题: GNOME 和 Harmony。
GNOME, the GNU Network Object Model Environment, is GNU’s desktop
project. Started in 1997 by Miguel de Icaza, and developed with the
@@ -1166,14 +1166,14 @@ advantages as well, such as supporting a variety of languages, not just
C++. But its main purpose was freedom: not to require the use of any
nonfree software.
-GNOME,GNU网络对象模型环境,是GNU的桌面工程。从1997年开始,由Miguel de Icaza在Red Hat Software的支持下开发,
-GNOME开始提供类似的桌面工具,但排外地只使用自由软件。它也有技术上的优势,如支持多种语言,而不仅仅是C++。但是它的主要
+GNOME,GNU 网络对象模型环境,是 GNU 的桌面工程。从1997年开始,由 Miguel de Icaza 在 Red Hat Software 的支持下开发,
+GNOME 开始提供类似的桌面工具,但排外地只使用自由软件。它也有技术上的优势,如支持多种语言,而不仅仅是 C++。但是它的主要
目的是自由:不需要使用任何非自由软件。
Harmony is a compatible replacement library, designed to make it
possible to run KDE software without using Qt.
-Harmony是一个兼容的替代库,设计为使运行KDE软件而无需Qt成为可能。
+Harmony 是一个兼容的替代库,设计为使得无需 Qt 运行 KDE 软件成为可能。
In November 1998, the developers of Qt announced a change of license
which, when carried out, should make Qt free software. There is no way
@@ -1182,13 +1182,13 @@ response to the problem that Qt posed when it was nonfree. (The new
license is inconvenient and inequitable, so it remains desirable to
avoid using Qt.)
-在1998年11月,Qt的开发者声名改动许可证,当其实施后,应该会使得Qt成为自由软件。虽然没办法确信,但是我想这应该部分归功于
-社区对Qt是非自由软件时所造成的问题的坚定回应。(新的许可证既不方便也不公正,所以仍旧值得去避免使用Qt 。)
+在1998年11月,Qt 的开发者声名改动许可证,当其实施后,应该会使得 Qt 成为自由软件。虽然没办法确信,但是我想这应该部分归功于
+社区对 Qt 是非自由软件时所造成的问题的坚定回应。(新的许可证既不方便也不公正,所以仍旧值得去避免使用 Qt 。)
\[Subsequent note: in September 2000, Qt was rereleased under the GNU
GPL, which essentially solved this problem.\]
-\[后记:2000年9月, Qt按GNU GPL发行,实际解决了这个问题。\]
+\[后记:2000年9月, Qt 按 GNU GPL 发行,实际解决了这个问题。\]
How will we respond to the next tempting nonfree library? Will the whole
community understand the need to stay out of the trap? Or will many of
@@ -1210,9 +1210,9 @@ GIFs. \[As of 2009 they have expired.\] In 1998, a free program to
produce MP3 compressed audio was removed from distribution under threat
of a patent suit.
-我们面对的最恶劣的威胁来自软件专利,它可以对自由软件加上算法和功能的限制多达二十年。LZW压缩算法的专利申请于
-1983年,而我们仍然无法发行能够生成适当压缩的GIF的自由软件。\[直到2009年这些专利才过期。\]1998年,由于
-专利诉讼威胁,一个用于生成MP3压缩音频的自由程序被迫从发行版移除。
+我们面对的最恶劣的威胁来自软件专利,它可以对自由软件加上算法和功能的限制多达二十年。LZW 压缩算法的专利申请于
+1983年,而我们仍然无法发行能够生成适当压缩的 GIF 的自由软件。\[直到2009年这些专利才过期。\]1998年,由于
+专利诉讼威胁,一个用于生成 MP3 压缩音频的自由程序被迫从发行版移除。
There are ways to cope with patents: we can search for evidence that a
patent is invalid, and we can look for alternative ways to do a job. But
@@ -1319,7 +1319,7 @@ systems such as Debian GNU/Linux and Red Hat “Linux.” Free software has
developed such practical advantages that users are flocking to it for
purely practical reasons.
-估计当今有数千万的用户使用诸如Debian GNU/Linux和 Red Hat “Linux”这样的GNU/Linux系统。自由软件已经发展到了这样实用优势,
+估计当今有数千万的用户使用诸如 Debian GNU/Linux 和 Red Hat “Linux” 这样的 GNU/Linux 系统。自由软件已经发展到了这样实用优势,
使得用户纯粹为了实用原因而聚集到它身边。
The good consequences of this are evident: more interest in developing
@@ -1327,7 +1327,7 @@ free software, more customers for free software businesses, and more
ability to encourage companies to develop commercial free software
instead of proprietary software products.
-这种现象的好结果是明显的:更多人有兴趣开发自由软件,更多用户参与自由软件产业,以及更多鼓励公司开发商业自由软件而不是私有软件产品的能力。
+这种现象的好结果是明显的:更多人有兴趣开发自由软件,更多用户参与自由软件产业,以及更多鼓励公司开发商业自由软件而不是私权软件产品的能力。
But interest in the software is growing faster than awareness of the
philosophy it is based on, and this leads to trouble. Our ability to
@@ -1366,7 +1366,7 @@ above principle. Thus, the rhetoric of “open source” focuses on the
potential to make high-quality, powerful software, but shuns the ideas
of freedom, community, and principle.
-一些喜欢该术语的人想要避免“自由”与“免费”的混淆——这个目标是正当的。其他人却打算将激励了自由软件运动和GNU工程的
+一些喜欢该术语的人想要避免“自由”与“免费”的混淆——这个目标是正当的。其他人却打算将激励了自由软件运动和 GNU 工程的
原则精神抛到一边,反而迎合行政和商业用户,而这些用户中的许多人持有一种将利润置于自由,社区和原则之上的意识形态。
因而,“开源”的花言巧语集中在制作高质量,强有力软件的潜能上,但是避开自由,社区和原则的思想。
@@ -1375,7 +1375,7 @@ advertisements for proprietary software that works with GNU/Linux. When
the next Motif or Qt appears, will these magazines warn programmers to
stay away from it, or will they run ads for it?
-“Linux”杂志是一个清晰的例子——它们被与GNU/Linux合作运行的私权软件广告所充斥。当下一个Motif或Qt出现时,
+“Linux”杂志是一个清晰的例子——它们被与 GNU/Linux 合作运行的私权软件广告所充斥。当下一个 Motif 或 Qt 出现时,
这些杂志将警告程序员们远离它还是为它登载广告呢?
The support of business can contribute to the community in many ways;
@@ -1425,7 +1425,7 @@ the future of freedom for granted. Don’t take it for granted! If you
want to keep your freedom, you must be prepared to defend it.
今天,经常我不是单打独斗。当我看见一个团的黑客挖战壕坚守战线时的感觉是一种安慰和乐趣,我意识到,目前,
-这个城池也许能幸存。但是危险每年都变得更大,并且现在Microsoft已经明确地将目标对准我们社区。我们不能把
+这个城池也许能幸存。但是危险每年都变得更大,并且现在 Microsoft 已经明确地将目标对准我们社区。我们不能把
自由的将来视为天命。别把它当作天命!如果你想要保卫你的自由,你必须为此备战。
<div class="footnote">
@@ -1487,7 +1487,7 @@ time. @end raggedright
@raggedright We now use the GNU Free Documentation License
(@pageref{FDL}) for documentation. @end raggedright
-@raggedright 我们现在对文档实用GNU自由文档许可证(@pageref{FDL}) @end raggedright
+@raggedright 我们现在对文档使用 GNU 自由文档许可证(@pageref{FDL}) @end raggedright
### [(7)](#DOCF7)
@@ -1503,7 +1503,7 @@ raggedright
@raggedright “Bourne Again Shell” is a play on the name “Bourne Shell,”
which was the usual shell on Unix. @end raggedright
-@raggedright “Bourne Again Shell”是对“Bourne Shell”,Unix上的一般shell玩的文字游戏.
+@raggedright “Bourne Again Shell”是对“Bourne Shell”,Unix 上的一般 shell 玩的文字游戏.
@end raggedright
### [(9)](#DOCF9)
@@ -1526,7 +1526,7 @@ See “Why You Shouldn’t Use the Lesser GPL for Your Next Library,” at
<http://www.gnu.org/philosophy/why-not-lgpl.html>, for more information.
@end raggedright
-@raggedright 这个许可证现在叫GNU Lesser General Public License(GNU宽通用公共许可证),
+@raggedright 这个许可证现在叫 GNU Lesser General Public License(GNU宽通用公共许可证),
以免给出所有库都该使用它的印象。更多信息见“Why You Shouldn’t Use the Lesser GPL for Your Next Library,”于
<http://www.gnu.org/philosophy/why-not-lgpl.html>。@end raggedright
@@ -1536,7 +1536,7 @@ See “Why You Shouldn’t Use the Lesser GPL for Your Next Library,” at
Open Source Misses the Point of Free Software” (@pageref{OS Misses
Point}). @end raggedright
-@raggedright Eric Raymond是开源的主要拥护者;见“Why Open Source Misses the Point of Free Software”
+@raggedright Eric Raymond 是开源的主要拥护者;见“Why Open Source Misses the Point of Free Software”
(@pageref{OS Misses Point})@end raggedright
### [(12)](#DOCF12)
@@ -1551,7 +1551,7 @@ Linux and Open Source by an Accidental Revolutionary, rev. ed.
<http://gnu.org/gnu/gnu-linux-faq.html>, and “Linux and the GNU System”
(@pageref{Linux and GNU}) for more on this issue. @end raggedright
-@raggedright 更多信息见GNU/Linux FAQ”,于<http://gnu.org/gnu/gnu-linux-faq.html>, 和“Linux and the GNU System”
+@raggedright 更多信息见 GNU/Linux FAQ”,于<http://gnu.org/gnu/gnu-linux-faq.html>, 和“Linux and the GNU System”
(@pageref{Linux and GNU})。@end raggedright
### [(14)](#DOCF14)