Roland McGrath recently announced version 1.3 of the GNU Mach kernel, offering several bug fixes. He also noted, "We are no longer actively developing version 1.x of GNU Mach. We plan to make only necessary bug fixes or trivial enhancements in the 1.x line, and make further 1.x releases only as necessary for those purposes." A new 2.x version of GNU Mach is under development, utilizing the University of Utah's OSKit.
One notable change in 1.3 is the support of large disks (>= 10GB). Additionally, 1.3 provides direct kernel support for "boot scripts". Roland's full email follows with further details.
From: Roland McGrath
To: info-gnu AT gnu.org, bug-hurd AT gnu.org
Subject: GNUmach 1.3 released
Date: Mon, 27 May 2002 16:31:55 -0400 (EDT)
-----BEGIN PGP SIGNED MESSAGE-----
We are pleased to announce version 1.3 of the GNU distribution of the
Mach kernel. It may be found in the file (about 3.6 MB compressed)
ftp://ftp.gnu.org/gnu/gnumach/gnumach-1.3.tar.gz;
unidiffs from version 1.2 (about 310 KB compressed) are in
ftp://ftp.gnu.org/gnu/gnumach/gnumach-1.2-1.3.diff.gz.
This distribution is only for x86 PC machines.
Volunteers interested in ports to other architectures are eagerly sought.
We are no longer actively developing version 1.x of GNU Mach. We plan to
make only necessary bug fixes or trivial enhancements in the 1.x line,
and make further 1.x releases only as necessary for those purposes.
New development efforts have been underway for some time on a new version
of GNU Mach using the OSKit from the University of Utah for hardware
support. Those efforts previously called OSKit-Mach are now working
towards the future version 2.0 of GNU Mach.
Aside from bug fixes, major changes from 1.2 (from the NEWS file) are:
The kernel now directly supports "boot scripts" in the form of multiboot
module names with the same syntax as the Hurd's `serverboot' program.
That is, instead of telling GRUB "module /boot/serverboot", you can give
GRUB a series of command like "module /hurd/ext2fs ${...}" where the
syntax after "module" is the same as in boot scripts for Hurd's `serverboot'.
The kernel message device `kmsg' is now enabled by default.
- --disable-kmsg turns it off.
Large disks (>= 10GB) are now correctly supported, the new get_status
call DEV_GET_RECORDS can return the number of records of a device.
Lots of tweaks have been done to the virtual memory management to make
it perform better on today's machines.
The console supports ANSI escape sequences for colors and attributes.
Support for the terminal speeds B57600 and B115200 has been added.
Bug reports relating to this distribution should be sent to
bug-hurd AT gnu.org. Requests for assistance should be made on
help-hurd AT gnu.org.
The md5sum checksums for this distribution are:
61e90803889b079a380e30056b21d076 gnumach-1.3.tar.gz
56ca6aa9040c4d4c4ef7a9757bb0509c gnumach-1.2-1.3.diff.gz
-----BEGIN PGP SIGNATURE-----
Version: PGPfreeware 5.0i for non-commercial use
Charset: noconv
iQCVAwUBPPKWwaZCfm0fCCmxAQH1RwP9Fbs3LZNhG+DPvE1C6Y5XQXvIdK+mvLEg
H4bC0lCctSLPBs+fnlQJtWWqxqrFOEopJqTK9x3lSpEZQb28LT2JcvtUzfcY+GY6
q9acechzwR7iysY5kPZOWxdUu4TKEA5p18dn/Ovokf5TGsuU4Y4B8K3lFc5aotus
hprrRzTahcY=
=vTo0
-----END PGP SIGNATURE-----
OSkit?
So.. what exactly does it mean that they are moving to the OSKit? How much does this effect the actual release/usability of HURD?
OSKit!
OSKit is a device driver framework. The hardware drivers are compiled into the kernel for now (in a minimal microkernel design, they would be in user space, too).
OSKit wraps drivers of Linux and BSD, and makes the components available through a COM interface.
The drivers in OSKit are more current than the drivers in GNU Mach, and it is easier to extent. Also, it is more usable as it makes the drivers available to many kernel projects, not only GNU Mach.
The immediate consequence is that we need a console server in user space, which I am writing right now. Another consequence is that some drivers are newer, while other drivers are missing (no PS/2, no serial devices), but it will be much easier and more fun to add them to OSKit than to hack the old GNU Mach device driver code.
It does affect the Hurd only in so far as direct device access is concerned.
It will probably require some work to get X working again. The console server I already mentioned.
Also, GNU Mach based on OSKit has remote debugging support via gdb, so it will be much easier for kernel hackers like me to track down bugs in the Mach, OSKit or device glue code.
Thanks,
Marcus