summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--microkernel/mach/gnumach.mdwn109
1 files changed, 58 insertions, 51 deletions
diff --git a/microkernel/mach/gnumach.mdwn b/microkernel/mach/gnumach.mdwn
index 6b32b852..88aa1432 100644
--- a/microkernel/mach/gnumach.mdwn
+++ b/microkernel/mach/gnumach.mdwn
@@ -7,75 +7,82 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or
any later version published by the Free Software Foundation; with no Invariant
Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license
is included in the section entitled [[GNU Free Documentation
-License|/fdl]].translator:zlc;email:764582402@qq.com"]]"""]]
+License|/fdl]]."]]"""]]
-GNU Mach 是一款微内核, GNU Hurd 系统基于此微内核构建。其提供了进程间通信机制
-(Inter Process Communication,IPC),通过该机制将Hurd实现为分布式多服务器,
-Hurd据此实现接口,从而实现传统操作系统提供的服务。
+GNU Mach is the microkernel upon which a GNU Hurd system is based. It provides
+an Inter Process Communication (IPC) mechanism that the Hurd uses to define
+interfaces for implementing in a distributed multi-server fashion the services
+a traditional operating system kernel provides.
-GNU Mach 作为 GNU Project 由 Hurd开发人员进行维护,并和 [[Mach]] 3.0 保持兼容。
+It is maintained by the Hurd developers for the GNU project and remains
+compatible with [[Mach]] 3.0.
-GNU Mach 主要的 [[设备驱动(device_drivers)]] 来自 Linux 2.0。这些驱动依靠
-Mach 中的 Linux [[emulation]] 层运行。
+The majority of GNU Mach's [[device_driver]]s are from Linux 2.0. They were
+added using glue code, i.e., a Linux [[emulation]] layer in Mach.
-GNU Mach 运行在 x86 机上。详细信息参见
-[[硬件兼容列表(hardware_compatibility_list)]],还有关于[[移植(ports)]]到其
-他架构上的信息。
+GNU Mach runs on x86 machines. See the
+[[hardware_compatibility_list]] and information about
+[[ports]] to other architectures.
-最新版本:[[GNU Mach 1.6|news/2015-10-31-releases]]。
+The latest release is [[GNU Mach 1.6|news/2015-10-31-releases]].
+# Advantages of GNU Mach
-# GNU Mach 的优点
+GNU Mach is not the most advanced [[microkernel]] known to the planet, nor is
+it the fastest or smallest, but it has a rich set of [[interface]]s and some
+features which make it useful as the base of the [[Hurd]] system.
-GNU Mach 不是世界上已知最先进的 [[微内核(microkernel)]],也不是最小、最快的,
-但是其拥有作为 [[Hurd]] 系统基础的,丰富的 [[接口(interfaces)]] 以及特性。
-
-
- * **是开放源码的**
+ * **it's free software**
- 任何人在 [[GNU_General_Public_License_(GPL)|gpl]] 的授权下,都可以对其使用
- ,修改,并且二次发布。
+ Anybody can use, modify, and redistribute it under the terms of the
+ [[GNU_General_Public_License_(GPL)|gpl]].
- * **是易于维护的**
+ * **it's built to survive**
- 作为一款 [[微内核(microkernel)]],GNU Mach 没有实现太多其他操作系统都有的
- 特性,而是仅仅实现了一个用于在其上实现完整的操作系统的,所需特性的最小集
- 合。这意味着操作系统大量的代码将剥离 GNU Mach,在其外部进行维护;当这些代码
- 需要重构的时候,微内核的代码仍能保持稳定的兼容性。
-
- * **是可于扩展的**
-
- Mach 能非常良好的支持 SMP 和网络集群技术。提供内核级的线程支持,并且内核本
- 身都因此受益。在 [[IPC]] 层的网络透明使得系统可以提供机器边界的资源
- (目前 GNU Mach 不对NORMA IPC提供支持)。
-
- * **是实际存在的**
+ As a [[microkernel]], GNU Mach doesn't implement a lot of the features
+ commonly found in an operating system, but only the bare minimum that is
+ required to implement a full operating system on top of it. This means
+ that a lot of the operating system code is maintained outside of GNU Mach,
+ and while this code may go through a complete redesign, the code of the
+ microkernel can remain comparatively stable.
+
+ * **it's scalable**
+
+ Mach is particularly well suited for SMP and network cluster techniques.
+ Thread support is provided at the kernel level, and the kernel itself takes
+ advantage of that. Network transparency at the [[IPC]] level makes
+ resources of the system available across machine boundaries (with NORMA
+ IPC, currently not available in GNU Mach).
- Mach 微内核是真实存在的,并且现在就可以使用。其不是一个研究或者倡议。用户不
- 需要等待,现在就可以开始使用并开发它。Mach 在过去曾经被用在很多操作系统中,
- 通常作为一个独立 UNIX 服务器的基础。在 GNU 系统,Mach 作为一个使用的多服务
- 器操作系统([[Hurd]])的基础。
+ * **it exists**
+
+ The Mach microkernel is real software that works Right Now. It is not a
+ research or a proposal. You don't have to wait at all before you can start
+ using and developing it. Mach has been used in many operating systems in
+ the past, usually as the base for a single UNIX server. In the GNU system,
+ Mach is the base of a functional multi-server operating system, the
+ [[Hurd]].
-# 启动
+# Booting
-想要实际的使用这个内核并引导 GNU 操作系统,用户需要一个启动引导程序
-(boot loader)。不是所有的启动引导程序都能启动 GNU 操作系统,用户需要一个支持
-多重引导启动标准(multiboot standard)的启动引导程序。 GNU 操作系统可使用
-[[GNU_GRUB|grub]],其支持非常多的操作系统,包括 GNU/Hurd。
+To actually use the kernel and boot the GNU operating system, you need a boot
+loader. Not all boot loaders are capable to boot the GNU system, you need one
+that supports the multiboot standard. The bootloader of the GNU system is
+[[GNU_GRUB|grub]], which supports a broad range of operating systems including
+GNU/Hurd.
-# 开发
+# Development
- * [[参考手册(Reference_Manual)]]
- * [[构建(Building)]]
- * [[调试(Debugging)]]
- * [[启动跟踪(Boot_Trace)]]
- * [[内存管理(Memory_Management)]]
+ * [[Reference_Manual]]
+ * [[Building]]
+ * [[Debugging]]
+ * [[Boot_Trace]]
+ * [[Memory_Management]]
* [[Continuation]]s
- * [[抢占(Preemption)]]
- * [[项目(Projects)]]
- * [[规则(Rules)]]
+ * [[Preemption]]
+ * [[Projects]]
+ * [[Rules]]
* [[Open Issues|tag/open_issue_gnumach]]
-