diff options
Diffstat (limited to 'microkernel')
-rw-r--r-- | microkernel/mach/gnumach.mdwn | 109 |
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]] - |