summaryrefslogtreecommitdiff
path: root/history
diff options
context:
space:
mode:
Diffstat (limited to 'history')
-rw-r--r--history/hurd-announce47
-rw-r--r--history/hurd-announce2143
-rw-r--r--history/hurd-flash22
-rw-r--r--history/hurd-flash1025
-rw-r--r--history/hurd-flash1125
-rw-r--r--history/hurd-flash1276
-rw-r--r--history/hurd-flash13120
-rw-r--r--history/hurd-flash1462
-rw-r--r--history/hurd-flash1560
-rw-r--r--history/hurd-flash2152
-rw-r--r--history/hurd-flash377
-rw-r--r--history/hurd-flash4101
-rw-r--r--history/hurd-flash523
-rw-r--r--history/hurd-flash646
-rw-r--r--history/hurd-flash717
-rw-r--r--history/hurd-flash873
-rw-r--r--history/hurd-flash939
-rw-r--r--history/port_to_l4.mdwn102
18 files changed, 1210 insertions, 0 deletions
diff --git a/history/hurd-announce b/history/hurd-announce
new file mode 100644
index 00000000..2f165ad8
--- /dev/null
+++ b/history/hurd-announce
@@ -0,0 +1,47 @@
+From mib@PREP.AI.MIT.EDU Tue May 7 12:07:53 1991
+From: mib@PREP.AI.MIT.EDU
+Newsgroups: gnu.announce
+Subject: FSF work on a GNU OS
+Date: 6 May 91 22:15:22 GMT
+Reply-To: mib@prep.ai.mit.edu
+Distribution: gnu
+Organization: GNUs Not Usenet
+
+The Free Software Foundation is beginning work on a GNU operating
+system built on top of the Mach 3.0 microkernel. There are three
+goals to this project worth noting:
+
+o Binary compatability with 4.4 BSD, and other U*x or U*xish systems
+ on other hardware where appropriate, convenient, and consistent with
+ the design;
+
+o Posix compliance (in combination with the GNU C Library and the GNU
+ C Compiler); and
+
+o Ease of use as well as several new features and functionality.
+
+
+I am interested in constructive criticism on the interfaces, design,
+and implementation from experts in the field of OS research and design
+consistent with the above goals. Advice from seasoned U*x hackers is
+especially welcome.
+
+We have a mailing list for discussion. Currently there is little
+discussion on the group; the major contributors to the ideas behind
+the design all live in the Boston area at this point, and work has
+been done via face-to-face communication. I would like to open the
+field of discussion to a broader base, both to get wider dissemination
+of the ideas behind the current design, as well as to get a greater
+breadth of criticism. Periodic postings are currently made to the
+mailing list containing a snapshot of the interfaces used by the
+various pieces of the system. I would like to see discussion as well;
+perhaps we need a critical mass to get this.
+
+Interested individuals should send me email. I don't regularly read
+the newsgroups to which this message is posted.
+
+
+[U*x is an abbreviation for a well-known trademark of AT&T. :-)]
+
+ -mib
+
diff --git a/history/hurd-announce2 b/history/hurd-announce2
new file mode 100644
index 00000000..dce41c43
--- /dev/null
+++ b/history/hurd-announce2
@@ -0,0 +1,143 @@
+From mib@gnu.ai.mit.edu Wed Nov 3 21:51:03 1993
+Path: usenet.ee.pdx.edu!cs.uoregon.edu!ogicse!emory!nigel.msen.com!sdd.hp.com!swrinde!cs.utexas.edu!uunet!spool.mu.edu!bloom-beacon.mit.edu!ai-lab!prep.ai.mit.edu!gnulists
+From: mib@gnu.ai.mit.edu (Michael I Bushnell)
+Newsgroups: gnu.announce,gnu.misc.discuss
+Subject: Hurd status and call for volunteers
+Message-ID: <9311020719.AA02206@geech.gnu.ai.mit.edu>
+Date: 1 Nov 93 21:19:05 GMT
+Article-I.D.: geech.9311020719.AA02206
+Followup-To: gnu.misc.discuss
+Distribution: world
+Lines: 124
+Approved: info-gnu@prep.ai.mit.edu
+To: info-gnu@prep.ai.mit.edu
+X-Shopping-List:
+ (1) Chaotic casino griddles (2) Cervical congestion (3) Neoclassical
+ consoles
+Xref: usenet.ee.pdx.edu gnu.announce:160 gnu.misc.discuss:3985
+
+This message to help sate curiosity, as well as to ask for volunteers.
+Until we are ready for alpha test, this is the last such message that
+will be posted here. If you want to receive further such messages,
+send mail to hurd-ann-request@gnu.ai.mit.edu and ask to be put on that
+(moderated) announcements list.
+
+
+What is already done with the Hurd:
+
+The filesystem is complete; it runs (read-only), and most of its calls
+have been tested and work. The filesystem is able to download
+programs, by a kludge similar to the kludge used to enable the kernel
+to download the first task. In the actual bootstap sequence, it will
+download the execserver.
+
+The proc and auth servers are completed; the exec server is nearly
+complete (for a.out, not for bfd).
+
+C library support for Mach and Hurd rpc stubs, and some of the mach
+and hurd specific code, is done. Much untested and probably wrong
+code has been written to implement Unix "system calls". A large piece
+of this (the descriptor management code) is believed by Roland to have
+some architectural flaw, but he isn't sure.
+
+Some small filesystem servers (shadow directories, for example) have
+been written, but have not been compiled, let alone tested.
+
+
+There are currently three things happening wrt the Hurd:
+
+I am spending nearly all my time getting things to boot and run. My
+work is currently directed toward that goal; in the immediate present
+I am working with Roland on getting the library in its near-final
+state (which will last a long time) to make compiling easier. It is
+because this is nearly done that I can send this message.
+
+Roland is working on the library. Most of the remaining architectural
+work is done and being tested. Then Roland will work on integrating
+cthreads (which is mostly busywork), miscellaneous filesystem calls,
+and then file descriptors. After that comes signals.
+
+Jan Brittenson will be working on the network server library. This is
+a library that, when linked against a BSD protocol stack, will produce
+a Hurd network server. (Such a server implements the socket interface
+in socket.defs.)
+
+
+There are four general tasks that can be done by other people:
+
+1. Completing the existing work on the terminal driver. The existing
+work implements most of the logic you already associate with a Posixy
+terminal driver; it needs the port management and buffering logic
+added.
+
+2. Writing a readline terminal driver. We will want, as an
+alternative to the Posixy terminal driver, a readline type terminal
+driver.
+
+3. Writing miscellaneous shell utilities. Here we need shell
+utilities to create translators, etc. They should have a nice rich
+set of features to do all kinds of GNU things.
+
+4. Writing miscellaneous filesystem servers. Here we need a
+transparent tar server, a transparent FTP server, and the like.
+
+
+Future plans for work to be written by me (once the bootstrap works,
+and in addition to testing library code as Roland finishes it):
+
+o split the existing filesystem into three parts:
+ o a library for port management for complicated multi-threaded
+ servers;
+ o a library for "normal" disk-based filesystems;
+ o ufs specific code.
+
+o Write the PF_FILE socket server (what you know as PF_UNIX).
+
+o Finish the posixy terminal driver if nobody else has.
+
+o Write miscellaneous shell utilities that nobody else has.
+
+o Build a self-hosting system.
+
+
+What you need in order to be able to help now:
+
+o A 386 PC running Mach 3.0. If you have some other kind of hardware,
+ then you need to port the GNU C library support first. I'm not
+ entirely sure how much work that involves; you will need to contact
+ Roland. It might be too much trouble at this point to spend any
+ effort on it. It's best if it's a machine for which a free port of
+ Mach is available, though you could do useful work even if it's not.
+
+ If you are not currently running Mach 3.0 with somebody's
+ single-server, then it is very unlikely you could help, unless you
+ have a Unix source license. In that case, you could talk to CMU
+ (write mach@cs.cmu.edu) to find out how to get Mach 3.0 running on
+ your machine. It is not possible to do development without a Unix
+ emulator of some kind; just bare Mach 3.0 is not sufficient. I have
+ neither the time nor knowledge to help someone get a 3.0
+ single-server system running.
+
+o Clue. I don't have enough time to explain operating systems or Unix
+ to people. You need to have an iron-clad grasp of Unix semantics
+ (specificaly BSD); it's essential that things be exactly right from
+ that standpoint. It's not enough that you've programmed Unix
+ before; you need to understand all the nits. However, you may
+ disregard my previous comments about a "two question limit". You do
+ need the ability to intuit to some extent, however.
+
+o Time. It's not good for me to delegate a task and then have nothing
+ happen on it. If you have a full-time job where you can't justify
+ Hurd work as part of your job, you might find that you don't really
+ have as much time as you thought. Please make sure you really have
+ enough time before volunteering for a task.
+
+o Efficient net access. Without a real Internet connection (mail only
+ is not sufficient), it will be impossible for you to do development
+ right now.
+
+
+If you think you can help, send me email. If you don't think you can
+help right now, then don't give up: the list of conditions will change
+as the list of delegatable tasks changes.
+
diff --git a/history/hurd-flash b/history/hurd-flash
new file mode 100644
index 00000000..d1bacc79
--- /dev/null
+++ b/history/hurd-flash
@@ -0,0 +1,22 @@
+Path: gnurd!usenet.ee.pdx.edu!cs.uoregon.edu!sgiblab!swrinde!gatech!europa.eng.gtefsd.com!MathWorks.Com!news.kei.com!bloom-beacon.mit.edu!ai-lab!life.ai.mit.edu!mib
+From: mib@churchy.gnu.ai.mit.edu (Michael I Bushnell)
+Newsgroups: gnu.misc.discuss,comp.os.mach
+Subject: Hurd now bootstraps
+Date: 05 Apr 1994 21:49:50 GMT
+Organization: Free Software Foundation, Cambridge, MA
+Lines: 11
+Message-ID: <MIB.94Apr5174952@churchy.gnu.ai.mit.edu>
+NNTP-Posting-Host: churchy.gnu.ai.mit.edu
+
+
+The GNU Hurd now bootstraps, successfully starting the core servers
+(the filesystem, exec server, process server, auth server, and init)
+and running the first program. A snapshot of the code that did this
+is on alpha.gnu.ai.mit.edu in the usual place, /gnu/hurd-snap.tar.gz.
+
+--
++1 617 623 3248 (H) | The soul of Jonathan was bound to the soul of David,
++1 617 253 8568 (W) -+- and Jonathan loved him as his own soul.
+1105 Broadway | Then Jonathan made a covenant with David
+Somerville, MA 02144 | because he loved him as his own soul.
+
diff --git a/history/hurd-flash10 b/history/hurd-flash10
new file mode 100644
index 00000000..d6d5685b
--- /dev/null
+++ b/history/hurd-flash10
@@ -0,0 +1,25 @@
+Date: Mon, 15 Apr 1996 15:28:29 -0400
+Message-Id: <199604151928.PAA00636@geech.gnu.ai.mit.edu>
+From: mib@gnu.ai.mit.edu (Michael I. Bushnell, p/BSG)
+To: hurd-ann@gnu.ai.mit.edu
+Subject: New Hurd snapshot available
+X-Geek-Code: (V2.1) GCS/J/M/MU/P/S/O>AT d- H-- s-: g+++ p0 !au a- w++ v+++(*) C+
++$ UB++++$ P--- L 3- E++ N++ K++++ W-- M- V-- po-- Y+(--) t++ 5+ j++ R- G'''' tv
++ b+++ !D B-- e+ u++(*) h* f? r n y++
+X-Tom-Swiftie: "Use the `&' operator to get the address," Tom pointed out.
+Sender: owner-abshurd@cs.pdx.edu
+Precedence: bulk
+
+
+I have just cut a new source snapshot. If things go nicely, a binary
+snapshot may appear soon as well. You can find this snapshot as
+
+ftp://alpha.gnu.ai.mit.edu/gnu/hurd-snap-960415.tar.gz
+
+Many many things work! Emacs built native and just *went*. The
+system now works standalone; you can use gdb (it's much nicer than
+other mach-ish gdb's, of course); the network is functional (complete
+with NFS), etc.
+
+Michael
+
diff --git a/history/hurd-flash11 b/history/hurd-flash11
new file mode 100644
index 00000000..57851b01
--- /dev/null
+++ b/history/hurd-flash11
@@ -0,0 +1,25 @@
+From: Miles Bader <miles@gnu.ai.mit.edu>
+To: hurd-ann@gnu.ai.mit.edu
+Date: Thu, 18 Apr 1996 19:08:07 -0400
+Subject: hurd binary image
+
+
+A filesystem image from a working hurd system, corresponding to the latest
+snapshot, is available as:
+
+ ftp://alpha.gnu.ai.mit.edu/gnu/hurd-image-960418.tar.gz
+
+The whole tree takes about 37meg (warning -- it unpacks into `.'). Follow
+the instructions in ./INSTALL-binary to make a working hurd system.
+
+Due to a timely trashing of the disk on our main hurd machine, it has been
+verified that it is possible to make a bootable hurd system from scratch
+using this image and a set of netbsd 1.1 boot floppies...
+
+The sources for the mach kernel included in the image are available in the
+same directory as mach4-UK22.tar.gz and mach4-i386-UK22.tar.gz.
+
+-Miles
+--
+Miles Bader / miles@gnu.ai.mit.edu / (617) 253-8568
+Amadera e ike!
diff --git a/history/hurd-flash12 b/history/hurd-flash12
new file mode 100644
index 00000000..5be9c94e
--- /dev/null
+++ b/history/hurd-flash12
@@ -0,0 +1,76 @@
+From: mib@gnu.ai.mit.edu (Michael I. Bushnell, p/BSG)
+Newsgroups: gnu.misc.discuss
+Subject: Hurd 0.0 release status
+Followup-To: gnu.misc.discuss
+Date: 13 Jul 1996 23:53:41 GMT
+Organization: Touring Consulting Services
+Lines: 35
+Message-ID: <MIB.96Jul13195341@gnu.ai.mit.edu>
+NNTP-Posting-Host: churchy.gnu.ai.mit.edu
+
+
+People are eager to know how close we are to release, so here's an
+update:
+
+There is one rather annoying bug I'd like to find which is causing
+random crashes. I expect this will not be too hard to locate. There
+are some more trivial bugs, but the release will not be held up for
+them.
+
+Forty-three packages of GNU software have been built native.
+Remaining to be built are three packages for which new releases are
+expected soon.
+
+Also remaining to be built native are bash, gdb, mach, the Hurd
+itself, and the internet utilities and daemons. We intend to sync our
+separate copy of libc source with the libc maintainer, and then build
+it native too.
+
+Because of obnoxious export restrictions, we have still to make
+separate shared libraries for the crypt functions.
+
+Except for the actual final packaging, all the release engineering
+tasks to be done have been completed.
+
+
+To summarize, we still need to:
+
+o Fix one obnoxious bug
+o Compile three packages that are waiting for release;
+o Compile gdb, bash, mach, and hurd native
+o Sync libc source and compile native
+o Deal with crypt shared libraries
+o Final packaging
+
+Michael
+
+From: mib@gnu.ai.mit.edu (Michael I. Bushnell, p/BSG)
+Newsgroups: gnu.misc.discuss
+Subject: Re: Hurd--ne plus ultra of vaporware?
+Date: 17 Jul 1996 03:02:14 GMT
+
+In article <4sg6tp$n4t@linux.cs.Helsinki.FI> torvalds@linux.cs.Helsinki.FI (Linus Torvalds) writes:
+
+ Hey! We could also ask some well-known rock-group for one of their
+ lyrics, and use that as the theme song for the Hurd release. And then
+ we could ask shops to stay open longer to sell the Hurd! Whaddaya think?
+ Don't say it has been delayed, just shout so loudly about all the new
+ features that nobody cares about the delay?
+
+Perhaps we could get Morrisey to sing the song. He's very good
+looking. Much better looking than that Mick Jagger fellow.
+
+Or something delicate, like Bach's French Suite in G. That would be
+fun.
+
+In any case, here's the state of the release:
+
+o Everything but nine packages has been compiled native.
+o The random crash bug I alluded to is fixed.
+o We have to build a floppy image for part of the installation instructions.
+
+That's it. I bet you nobody in Redmond has ever made a statement like
+that...
+
+Michael
+
diff --git a/history/hurd-flash13 b/history/hurd-flash13
new file mode 100644
index 00000000..a2de6bfd
--- /dev/null
+++ b/history/hurd-flash13
@@ -0,0 +1,120 @@
+Date: Mon, 5 Aug 1996 22:36:31 -0400
+From: thomas@gnu.ai.mit.edu (Thomas Bushnell, n/BSG)
+To: info-gnu@prep.ai.mit.edu, hurd-ann@gnu.ai.mit.edu, hurd-dev@gnu.ai.mit.edu
+Subject: Hurd 0.0 and GNU 0.0 released
+X-Name-Change: My name used to be `Michael'; now it is `Thomas'.
+X-Tom-Swiftie: "I guess I shouldn't have broken the mirror," Tom reflected.
+
+
+
+
+I am pleased to announce version 0.0 of the GNU Hurd, available via
+anonymous FTP from prep.ai.mit.edu [18.159.0.42] in the file
+/pub/gnu/hurd-0.0.tar.gz (about 1.2 MB compressed).
+
+This file contains complete source code for the following:
+
+Hurd servers:
+
+ auth, crash, devio, devport, exec, ext2fs, fifo, fwd, ifsock, init,
+ magic, new-fifo, nfs, null, pfinet, pflocal, proc, symlink, term,
+ ufs.
+
+Hurd libraries:
+
+ diskfs, fshelp, ihash, iohelp, netfs, pager, pipe, ports, ps,
+ shouldbeinlibc, store, threads, trivfs.
+
+Hurd utilities and other programs:
+
+ boot, shd, ps, settrans, showtrans, sync, su, mount, fsysopts,
+ storeinfo, login, w, uptime, hurdids, loginpr, sush, vmstat,
+ portinfo, devprobe, reboot, halt, fsck, fsck.ufs, mkfs.ufs, clri.ufs,
+ stati.ufs, getty, rc.
+
+
+------
+
+
+In addition, we have prepared a binary distribution of a complete
+version 0.0 GNU system corresponding to this Hurd release. This
+release runs only on PC-AT compatible systems with i[345]86
+processors.
+
+The GNU Hurd, plus Mach, is a kernel, not an operating system. The
+GNU operating system, like the Unix operating system, consists of many
+components, including kernel, libraries, compilers, assembler, shell,
+parser generators, utilities, window system, editors, text formatters,
+and so on. The GNU project set out a decade ago to develop this
+system, and we've been writing various components of it ever since.
+
+This release uses the `UK22' version of the Mach kernel, as
+distributed by the University of Utah. It is too difficult to prepare
+a detailed list of supported devices at this point. Common disk
+controllers and ethernet cards are generally supported.
+
+This release does not contain the X Window System.
+
+This release may be fetched by anonymous FTP from prep.ai.mit.edu
+[18.159.42] in the directory /pub/gnu/gnu-0.0/.
+
+In that directory, you should find the following files:
+
+ README
+ SOURCES
+ INSTALL-binary
+ grub-boot.image (about 1.4 MB, not compressed)
+ gnu-0.0.tar.gz (about 56.9 MB compressed)
+ gnu-0.0-stripped.tar.gz (about 26.2 MB compressed)
+
+SOURCES contains a complete list describing the sources for the
+binaries found in the image. INSTALL-binary contains complete
+installation instructions for this release.
+
+(The files README, SOURCES, and INSTALL-binary are also found in the
+root directory of the gnu-0.0 release.)
+
+gnu-0.0.tar.gz holds the image of the complete system. It unpacks
+into a directory that requires approximately 233 MB of disk space.
+
+gnu-0.0-stripped.tar.gz holds the same contents as gnu-0.0, except
+that executable programs have been stripped to save space, and the
+libraries have had debugging symbols stripped to save space and speed
+linking. It unpacks into a directory that requires about 85.5 MB of
+disk space.
+
+We recommend using the unstripped image, or you will be unable to
+debug anything. Surely there are bugs. So fetch the unstripped
+image, at least to have around.
+
+grub-boot.image is an image of a 3.5" floppy disk that you will need
+in order to complete part of the installation instructions.
+
+The following free software packages are found in this release:
+
+ autoconf, automake, bash, bc, binutils, bison, cpio, cvs, diffutils,
+ doschk, e2fsprogs, ed, emacs, fileutils, findutils, flex, from, gawk,
+ gcal, gcc, gdb, gdbm, gettext, glibc, gmp, gperf, grep, grub, gzip,
+ hello, hurd, indent, inetutils, less, mach, make, m4, miscfiles,
+ ncurses, nethack, nvi, patch, ptx, rcs, readline, recode, sed,
+ serverboot, sharutils, shellutils, tar, termcap, termutils, texinfo,
+ textutils, time, wdiff.
+
+
+------
+
+
+Here are md5sum checksums for the files mentioned in this message:
+
+b5f888bab3eb193fe97a00a141324c9d INSTALL-binary
+345dcd826747d7b11fc78f4db162d75b README
+1a5744bb4ed3448045fa6d24153d65fe SOURCES
+f7b1bc428bc4ee29977a5b28f5762092 gnu-0.0-stripped.tar.gz
+24554c58e5c89f295176e17d21dbae8e gnu-0.0.tar.gz
+8338c619d860b71bc4128c9c0fd39d63 grub-boot.image
+1fd18ccc4c81d051b83d28b13dc07ee2 hurd-0.0.tar.gz
+
+-----
+
+Br. Thomas Bushnell, n/BSG
+
diff --git a/history/hurd-flash14 b/history/hurd-flash14
new file mode 100644
index 00000000..2d67687a
--- /dev/null
+++ b/history/hurd-flash14
@@ -0,0 +1,62 @@
+I am pleased to announce version 0.2 of the GNU Hurd, available via
+anonymous FTP from prep.ai.mit.edu [18.159.0.42] in the file
+/pub/gnu/hurd-0.2.tar.gz (about 1.37 MB compressed).
+
+(The GNU Hurd, plus Mach, is a kernel, not an operating system. The
+GNU operating system, like the Unix operating system, consists of many
+components, including kernel, libraries, compilers, assembler, shell,
+parser generators, utilities, window system, editors, text formatters,
+and so on. The GNU project set out a decade ago to develop this
+system, and we've been writing various components of it ever since.)
+
+This release contains many bug fixes from version 0.1. Many thanks to
+all the people who are helping find bugs!
+
+The best way you can help find bugs is to try and compile and use on
+the Hurd as many programs as you can find and find out where bugs
+still exist. There are also unimplemented features, and your reports
+will help us to prioritize which things we work on.
+
+The system is vastly more reliable than it has been in the past.
+
+One important addition:
+
+ New programs addauth, rmauth, unsu, su, and setauth modify the uid
+ sets of running programs. Using addauth you can add root to your
+ emacs, write a file, and then use rmauth to take the uid back. (Of
+ course, passwords are required when necessary.) New program `ids'
+ will tell you what all the user ids are that a program has. Note
+ that in the Hurd a program can have several user ids all at once,
+ just like Unix supports having several group ids. Now that you can
+ dynamically change the ids of running programs, system
+ administration (among other things) becomes much easier.
+
+For more detailed news, see the NEWS file in the distribution.
+
+This release contains complete source code for the following:
+
+Hurd servers:
+
+ auth, crash, devport, exec, ext2fs, fifo, fwd, ifsock, init,
+ magic, new-fifo, nfs, null, pfinet, pflocal, proc, symlink, term,
+ ufs, storeio, firmlink.
+
+Hurd libraries:
+
+ diskfs, fshelp, ihash, iohelp, netfs, pager, pipe, ports, ps,
+ shouldbeinlibc, store, threads, trivfs, hurdbugaddr, ftpconn
+
+Hurd utilities and other programs:
+
+ boot, shd, ps, settrans, showtrans, sync, su, mount, fsysopts,
+ storeinfo, login, w, uptime, ids, sush, vmstat, portinfo, devprobe,
+ reboot, halt, fsck, fsck.ufs, mkfs.ufs, clri.ufs, stati.ufs, getty,
+ rc, e2os, vminfo, nfsd, mail.local, serverboot, MAKEDEV, loginpr,
+ addauth, rmauth, unsu, setauth, ftpcp, ftpdir.
+
+We are also making a complete GNU 0.2 binary release, which will
+include Hurd 0.2, glibc 2.0.4, gnumach 1.1.2, and many other
+programs. This binary release is announced separately.
+
+
+Thomas Bushnell, n/BSG
diff --git a/history/hurd-flash15 b/history/hurd-flash15
new file mode 100644
index 00000000..0785ac59
--- /dev/null
+++ b/history/hurd-flash15
@@ -0,0 +1,60 @@
+
+I am pleased to announce version 0.2 of the complete Hurd based GNU
+system. This release runs only on PC-AT compatible systems with
+i[3456]86 processors.
+
+The GNU Hurd, plus Mach, is a kernel, not an operating system. The
+GNU operating system, like the Unix operating system, consists of many
+components, including kernel, libraries, compilers, assembler, shell,
+parser generators, utilities, window system, editors, text formatters,
+and so on. The GNU project set out a decade ago to develop this
+system, and we've been writing various components of it ever since.
+
+This release uses the GNUmach distribution of the Mach kernel, version
+1.1.3. Popular PC devices are generally supported.
+
+This release does not contain the X Window System.
+
+This release may be fetched from the directory
+ftp://prep.ai.mit.edu/pub/gnu/gnu-0.2. (prep.ai.mit.edu is 18.159.42,
+for the nameserver-impaired).
+
+In that directory, you should find the following files:
+
+README
+SOURCES
+INSTALL-binary
+grub-boot.image (about 1.5 MB, not compressed)
+gnu-0.2.tar.gz (about 73 MB compressed)
+
+SOURCES contains a complete list describing the sources for the
+binaries found in the image. INSTALL-binary contains complete
+installation instructions for this release.
+
+(The files README, SOURCES, and INSTALL-binary are also found in the
+root directory of the gnu-0.2 release.)
+
+gnu-0.2.tar.gz holds the image of the complete system. It unpacks
+into a directory that requires approximately 285 MB of disk space.
+
+grub-boot.image is an image of a 3.5" floppy disk that you will need
+in order to complete part of the installation instructions.
+
+The following free software packages are included in this release:
+
+autoconf automake bash bc binutils bison cpio cvs diffutils doschk
+e2fsprogs ed emacs emacs lisp manual fileutils findutils flex from g77
+gawk gcal gcc gdb gettext glibc gmp gnuchess gnumach gnugo grep grub
+gzip hello hurd indent inetutils less libg++ lynx m4 make miscfiles
+ncurses nethack nvi patch perl ptx readline rcs recode sed sendmail
+sh-utils sharutils tar termutils texinfo textutils time wdiff
+
+--
+
+Here are md5sum checksums for the files mentioned in this message:
+
+3749b016ab581e007b90d17b9092e134 INSTALL-binary
+1f800c326ba4c3a0b3f3a3463597317b README
+40d1e1a38dd86f28fe2718081ac865cb SOURCES
+f29c1a03c1667a8019b66f6effa89d39 gnu-0.2.tar.gz
+8ad3c7254802a16068a956e836266212 grub-boot.image
diff --git a/history/hurd-flash2 b/history/hurd-flash2
new file mode 100644
index 00000000..b1d4f66f
--- /dev/null
+++ b/history/hurd-flash2
@@ -0,0 +1,152 @@
+From: mib@churchy.gnu.ai.mit.edu (Michael I Bushnell)
+Newsgroups: gnu.misc.discuss,comp.os.mach,comp.os.linux.development,comp.os.linux.misc,comp.unix.pc-clone.32bit
+Subject: GNU Hurd Task List and Call for Volunteers
+Followup-To: gnu.misc.discuss
+Date: 18 May 1994 17:54:47 GMT
+Organization: FOO
+Lines: 140
+Message-ID: <MIB.94May18135447@churchy.gnu.ai.mit.edu>
+NNTP-Posting-Host: churchy.gnu.ai.mit.edu
+Xref: usenet.ee.pdx.edu gnu.misc.discuss:7630 comp.os.mach:1434 comp.os.linux.d
+evelopment:9867 comp.os.linux.misc:16767 comp.unix.pc-clone.32bit:5854
+
+
+Now that the Hurd can run (albeit haltingly) on its own, it is
+possible for people who do not have Mach 3.0 single-servers to
+contribute without much trouble. (However, if you don't have a
+single-server, you probably won't be able to use a debugger, but that
+doesn't mean you can't do debugging, right?)
+
+We at the FSF don't have any expertise in setting up Mach 3.0
+machines; the machines that we do development on belong to the Open
+Software Foundation and were set up by them. So one of the things on
+the task list is to organize things so that people (like us and most
+of you) who don't know how to do it can do it. It's not impossible to
+figure out, it's just a pain and a marvelous thing for a volunteer to
+do.
+
+You can get Mach 3.0 from CMU; you get the C library and the Hurd from
+us. You need the soon-to-be-released version 1.07.6 of the C library
+and the latest Hurd snapshot (as well as our special version of MiG)
+from alpha.gnu.ai.mit.edu.
+
+All our work is based upon i386. The Hurd (except for a few programs;
+see the Hurd README file) is machine independent. The C library
+should not be too much trouble to port. Ports and information about
+porting difficulty for either of these are greatly desired.
+
+The Hurd is not yet self-hosting. While you are welcome to fetch the
+code and put things together, it is not likely that you will have a
+useful system right now. But you might be able to do significant work
+(see the task list below). And, even if you can't do significant
+work, I'm interested in hearing about any places where you had
+particular difficulty.
+
+If you want to start on one of these tasks, please let me know so I
+can keep track of volunteers properly. This task list will be updated
+periodically; gnu@prep.ai.mit.edu always has the latest version.
+
+ -mib
+
+GNU Hurd Task List Version 1.0.
+
+If you would like to work on one of these, please contact mib@gnu.ai.mit.edu.
+
+
+Mach 3.0 Work
+
+ o Mach 3.0 comes with CMU makefiles that depend on a drecky environment.
+ It would be very helpful to have makefiles and installation stuff so
+ that it worked well for cross-compilation between systems and used
+ GNU tools.
+
+ o MiG needs to be made able to support cross-compilation.
+
+ o A replacement for MiG that understood C .h files.
+
+ o Bootstrap tools and documentation to help people set up Mach 3.0
+ machines if they already have Linux; if they already have Net BSD;
+ if they don't have anything.
+
+ o Mach 3.0 needs to provide support for task virtual timers similar
+ in functionality to the Unix ITIMER_PROF and ITIMER_VIRTUAL timers.
+
+ o Mach 3.0 needs to provide a way for users to do statistical PC
+ profiling similar to the Unix profil system call.
+
+ o Mach 3.0 needs a facility to automatically send task and thread
+ status on task/thread exit to a port that can only be changed by
+ a privileged user; this would be used to implement process
+ accounting.
+
+ o Mach 3.0 needs a facility to find out what task is the parent of
+ a given task.
+
+ o Mach 3.0 needs a facility to find out which pages of a task's
+ address space are in core to implement Unix's mincore call.
+
+ o Mach 3.0 needs a facility to do msync.
+
+ o Mach 3.0 needs a replacement for MEMORY_OBJECT_COPY_CALL that
+ works at least for the cases needed in ordinary files. (Write mib if
+ you want to know what the problem is and some ideas about how to
+ solve it.)
+
+ o Mach 3.0 needs proxy memory objects. (mib can tell you what these
+ are and why they are important.)
+
+ o Mach 3.0 needs a way to do per-task resource counters that are
+ accessible to servers called by the task.
+
+ o Mach 3.0 needs facilities to implement resource limits of various sorts.
+
+ o Mach 3.0 needs a way to have a thread's CPU time statistics
+ include time spent by servers on its behalf.
+
+ o Of course, free ports are always necessary to machines that don't
+ already have free ports.
+
+ o Much work can be done doing research in how to improve Mach VM
+ performance and timesharing scheduling policy.
+
+
+Hurd work (these are brief descriptions; mib can give more information):
+
+ o We need a translator for /dev.
+
+ o We need a replacement for utmp and wtmp that understands the
+ Hurd `login collection' concept. Programs like who and finger
+ then need to be changed to use this.
+
+ o We need some existing shell programs changed to do Hurd things:
+ like ls, su, fsck, tar, cpio, etc.
+
+ o Some new programs need to be written: login, getty, ps, tools
+ for new filesystem features.
+
+ o Shadow directory translators. (Roland has the beginnings of this.)
+
+ o A system for write, send, talkd and so forth to bleep users;
+ this should be integrated with the utmp replacement above.
+
+ o X.
+
+ o A filesystem for /tmp that uses virtual memory instead of disk.
+
+ o Filesystem implementations (using libdiskfs) for other popular
+ formats, especially the Linux formats as well as MSDOG.
+
+ o Transparent FTP translator.
+
+ o NFS client implementation. You should start with BSD's 4.4 code
+ and support the extensions they support; don't worry about Hurd
+ extensions right now. (The server we want to write ourselves
+ because it will probably involve changing the Hurd interfaces.)
+
+ o A fancy terminal driver that uses readline and supports detach/attach.
+
+--
++1 617 623 3248 (H) | The soul of Jonathan was bound to the soul of David,
++1 617 253 8568 (W) -+- and Jonathan loved him as his own soul.
+1105 Broadway | Then Jonathan made a covenant with David
+Somerville, MA 02144 | because he loved him as his own soul.
diff --git a/history/hurd-flash3 b/history/hurd-flash3
new file mode 100644
index 00000000..19a5f371
--- /dev/null
+++ b/history/hurd-flash3
@@ -0,0 +1,77 @@
+Date: Tue, 05 Jul 1994 20:15:09 -0400
+From: mib@gnu.ai.mit.edu (Michael I Bushnell)
+To: hurd-ann@gnu.ai.mit.edu
+Subject: New Hurd snapshot
+
+
+A new Hurd snapshot has been released. You can get it from
+alpha.gnu.ai.mit.edu in the file /gnu/hurd-snap.tar.gz. You will need
+the most recent version of the GNU C library; version 1.08.3 or later.
+(Version 1.08.3 is an alpha release; you can get it from
+alpha.gnu.ai.mit.edu in the same directory.)
+
+This snapshot of the Hurd has a limping terminal driver. It can run
+emacs, bash, a whole slew of utilities, and (most importantly) GNU
+Hello.
+
+ -mib
+
+
+Here is the new part of the NEWS file:
+
+The Hurd now runs all the programs in the GNU fileutils, textutils,
+and shellutils distributions, with the exception of who. Most
+importantly it runs GNU Hello. Also, emacs works (with the kludgy
+`boot' terminal driver) and bash works.
+
+The simple pipes server works; it will be replaced eventually by the
+pflocal server (which isn't done yet). The terminal driver is limping
+but working. It doesn't support terminal ioctls yet. A minor bug in
+auth has been fixed. boot interprets more Hurd protocols; this was
+done to get emacs functioning. Some more-or-less serious bugs in exec
+were fixed; they were found by running emacs (a quite large executable
+indeed). At bootstrap time, init starts pipes and term itself;
+eventually these will be passive translators, but we don't want to
+write the new disk format until we're self-hosting or fsck and UX will
+get confused. The file proc/primes.c has been documented; thanks go
+to Jim Blandy. Some bugs in proc dealing with pgrp and wait were
+fixed; a nasty hash table bug was also fixed. The simple shell can do
+pipes. Several serious bugs in ufs were fixed dealing with extension
+of large files and writes of data not aligned on block boundaries.
+The ufs pager was over-serialized; that's been fixed. Directory
+lookups and modifications now use mapped I/O directly; this is an
+important speed-up. The structure of the pager lockes has been
+changed significantly. UFS now supports Mach copying mode
+MEMORY_OBJECT_COPY_DELAY; this significantly improves process startup
+time.
+
+Some minor changes have been made to several interfaces. The
+interface for fs.defs:dir_readdir has been totally changed. There are
+some new fs.defs interfaces: file_check_access, file_notice_changes,
+dir_notice_changes. The fsys.defs:fsys_getroot interface was changed
+to work correctly. process.defs:proc_setprocargs is renamed, and a
+fetch function proc_get_arg_locations is added. The ifsock.defs
+interface was simplified.
+
+Several bugs were fixed in libdiskfs. The new dir_readdir interface
+requires new support from format-specific code. Some race conditions
+have been fixed. dir-pathtrans.c now deals correctly with multiple
+slashes in a row. A new concept called "light references" allows
+pagers to remain active without preventing truncate-on-nolinks from
+working right. New interfaces in fs.defs are implemented (except
+file_notice_changes). Active translator usage has been fixed to work
+correctly, but passive translators are still untested. libdiskfs now
+thinks it supports S_IFSOCK nodes, but that's untested (of course)
+because pflocal isn't done yet.
+
+The passive translator startup interface in libfshelp has been
+radically simplified. The pager library now lets other code set and
+changee the attributes on objects, synchronously if desired. An
+init/terminate race condition was fixed. The ports library now
+allows single-threaded users to work right (they didn't before). The
+trivfs library works; see the ifsock server for a simple example of
+its use. See term or pipes for more complex examples.
+
+There is a task list in the file `tasks'; let me know if you are
+interested in working on one of these.
+
diff --git a/history/hurd-flash4 b/history/hurd-flash4
new file mode 100644
index 00000000..89ae9848
--- /dev/null
+++ b/history/hurd-flash4
@@ -0,0 +1,101 @@
+From: mib@gnu.ai.mit.edu (Michael I Bushnell)
+To: hurd-ann@gnu.ai.mit.edu
+Date: Mon, 8 Aug 94 16:01:23 -0400
+Subject: New Hurd Snapshot
+X-Shopping-List:
+ (1) Starboard sauce (2) Cinematic lesions (3) Two-way alphabetic
+ accordions
+
+
+A new Hurd snapshot has been placed on alpha.gnu.ai.mit.edu in
+/pub/gnu/hurd-snap.tar.gz.
+
+It is expected that the next snapshot after this one will have signals
+basically working and thus be usable for a self-hosting system. In
+addition, the next snapshot will probably have the current state of
+our networking code (which has been proceeding, but has been absent
+from the snapshots).
+
+Here is the NEWS about this current snapshot, however. Because some
+big changes were made to the makefile and directory structure, things
+might have gotten inadvertently ommitted from the snapshot. If this
+happened, please let me know ASAP and I'll fix it and make a new
+snapshot.
+
+ -mib
+
+
+August 8, 1994:
+
+Structural changes:
+
+Makefiles have been vastly improved and are simpler. The programs
+`su', `ps', and `sh' have been moved from separate dirs into `utils';
+the programs `symlink' and `ifsock' have been moved into `trans'.
+
+Several changes were made to GCC use. You should definitely get GCC
+version 2.6.0 now. Version 2.6.1 will have distributed the proper
+`specs' file for the i386-gnu target, but it isn't quite ready yet, so
+you still have to copy hurd/gcc-specs into
+gcc-lib/i386-gnu/2.6.0/specs.
+
+
+Interface changes:
+
+The tioctl.defs suite is complete now.
+
+INTR RPC's have been changed; individual RPC's are no longer marked
+INTR. Rather, entire interfaces are marked `INTR_INTERFACE' if they
+conform to the library's signalling/interruption expectations.
+
+There is a new magical retry type (for dir_pathtrans and fsys_getroot)
+called `machtype' and a new one `/'; the former is for @sys tweaks and
+the latter cleans up the retry of root-based symlinks a bit.
+
+There is a new interface `login.defs'.
+
+The "dotdot node" is no longer passed at fsys_startup time; instead,
+it is passed by fsys_getroot.
+
+
+Library changes:
+
+The ports library now does death-timeouts for multi-threaded servers;
+it doesn't actually work right yet, however. Also the ports library
+has new features (soft vs. hard ports; no outstanding ports
+notifications) that enable server-death to be done cleanly. (I hope;
+libdiskfs and ufs haven't yet been changed to use it, so libports
+might not actually have the right facilities yet.)
+
+The translator startup routines in libfshelp have been vastly improved
+(so that they can actually be used).
+
+Numerous bugfixes in libdiskfs, particularly relating to translator
+usage. Use new magical retry type `/' when appropriate. Use new
+dotdot node protocol. O_FSYNC and O_NOATIME are now honored properly.
+Alternative methods of storing symlinks are now supported through new
+hooks.
+
+The new dotdot protocol is now used by libtrivfs. Also, users of the
+library are now able to set the atime and mtime when necessary.
+
+The special threads version of malloc has been placed back in
+libthreads now that the C library uses a Mach-safe version on its own.
+
+
+Program changes:
+
+The `boot' program no longer implements the tioctl interface now that
+the terminal driver works.
+
+A bug was fixed in the handling of pgrps in `proc'.
+
+Many bugfixes in term. The tioctl interface is now implemented. EOF
+processing is fixed; break characters now work right. Signals and
+interruption are now done correctly. VDISCARD works.
+
+Ufs has Some bigs fixed in dir.c. Filesystem upgraded to BSD 4.4.
+There are now some compatibility flags.
+
+New program dev.trim does a very minimal /dev (but doesn't work yet).
+New program dev is an initial (but poor) attempt at a real /dev.
diff --git a/history/hurd-flash5 b/history/hurd-flash5
new file mode 100644
index 00000000..041a0ef7
--- /dev/null
+++ b/history/hurd-flash5
@@ -0,0 +1,23 @@
+From: mib@gnu.ai.mit.edu (Michael I Bushnell)
+Message-Id: <9409210619.AA17570@churchy.gnu.ai.mit.edu>
+To: "Lots of potentially interested people and" <nobody@gnu.ai.mit.edu>
+Subject: New milestone acheived by the GNU Hurd
+X-Tom-Swiftie: "I can't get this fire started," Tom said woodenly.
+
+
+I have just successfully compiled and run a null C program on the
+Hurd. This is using GCC native as one would normally use GCC.
+
+Sadly, it took quite a while (too long, in fact) to read the large
+archives that make up the GNU C library, but I think I know where the
+substantial inefficiency is.
+
+Once that is done, I would be happy to label this a "self-hosting
+system". But not just yet.
+
+The last bug preventing this was an error in dealing with files over
+about 8 M; this came about because in order to link a program one
+needed the GNU C library, which is over 9M when symbols are included.
+
+ -mib
+
diff --git a/history/hurd-flash6 b/history/hurd-flash6
new file mode 100644
index 00000000..e774714e
--- /dev/null
+++ b/history/hurd-flash6
@@ -0,0 +1,46 @@
+Return-Path: <pdxgate.cs.pdx.edu!gnu.ai.mit.edu!mib>
+Received: from pdxgate.cs.pdx.edu by gnurd with uucp
+ (Linux Smail3.1.28.1 #14) id m0r66pm-00010fC; Fri, 11 Nov 94 17:00 PST
+Received: from cs.pdx.edu by pdxgate.cs.pdx.edu (4.1/CATastrophe-9/19/94-U)
+ id AA05257; Fri, 11 Nov 94 16:40:48 PST
+Received: from churchy.gnu.ai.mit.edu by cs.pdx.edu (4.1/CATastrophe-9/19/94-P)
+ id AA02600; Fri, 11 Nov 94 16:40:22 PST
+Received: by churchy.gnu.ai.mit.edu (5.65/4.0)
+ id <AA12621@churchy.gnu.ai.mit.edu>; Fri, 11 Nov 94 16:45:35 -0500
+Received: by churchy.gnu.ai.mit.edu (5.65/4.0)
+ id <AA12580@churchy.gnu.ai.mit.edu>; Fri, 11 Nov 94 16:38:44 -0500
+Date: Fri, 11 Nov 94 16:38:44 -0500
+From: mib@gnu.ai.mit.edu (Michael I Bushnell)
+Message-Id: <9411112138.AA12580@churchy.gnu.ai.mit.edu>
+To: hurd-ann@gnu.ai.mit.edu, hurd-dev@gnu.ai.mit.edu, info-gnu@prep.ai.mit.edu
+Subject: New Hurd Snapshot
+X-Shopping-List:
+ (1) Horrendous collision devotions (2) Wondrous consolation (3)
+ Conscious cooking auctions
+X-Filter: mailagent [version 3.0 PL19] for trent@gnurd.uu.pdx.edu
+
+
+A new Hurd snapshot has been placed on alpha.gnu.ai.mit.edu. There
+may be unforseen problems with this snapshot, so the old one has been
+left. You may fetch this snapshot via anonymous FTP in the file
+/gnu/hurd-snap.tar.gz.
+
+The Hurd requires a modified version of MiG; you can get it by
+anonymous ftp to kahlua.cs.utah.edu in /pub/mach/mach4-UK02p6.tar.gz.
+Note that we are not yet using Mach4 for the Hurd, but we plan to
+switch as soon as its feasible.
+
+Other necessary software to run this snapshot include the latest
+snapshot of binutils/ld/gas source from Cygnus and the latest GCC.
+(Problems have been reported with GCC 2.6.1; you might want to wait
+until 2.6.2 is released.) And, of course, you also need the latest
+test version of the GNU C Library, found on alpha.gnu.ai.mit.edu.
+
+This is not yet a real release; it is certainly not up to the quality
+of even a hesitant alpha release. But it may be useful for
+educational value or to help with the Hurd effort.
+
+I will be out of town for most of the rest of the year; I will be
+reading email but I may not be able to help with problems. Sorry...
+
+ -mib
diff --git a/history/hurd-flash7 b/history/hurd-flash7
new file mode 100644
index 00000000..ce6e08d2
--- /dev/null
+++ b/history/hurd-flash7
@@ -0,0 +1,17 @@
+Date: Wed, 12 Apr 1995 15:08:18 -0400
+From: Michael I Bushnell <mib@gnu.ai.mit.edu>
+To: hurd-ann@duality.gnu.ai.mit.edu
+Subject: New Hurd Snapshot available
+
+A new hurd snapshot is now available from
+ftp://alpha.gnu.ai.mit.edu/gnu/hurd-snap.tar.gz.
+
+This snapshot contains many improvements over the last one, and is
+also probably easier to compile.
+
+This snapshot must be used with the most recent libc snapshot,
+ftp://alpha.gnu.ai.mit.edu/gnu/libc-950411.tar.gz. Previous versions
+of the library will not work right.
+
+If any files are discovered to be missing, please let me know asap.
+
diff --git a/history/hurd-flash8 b/history/hurd-flash8
new file mode 100644
index 00000000..555186ec
--- /dev/null
+++ b/history/hurd-flash8
@@ -0,0 +1,73 @@
+Date: Sun, 23 Jul 1995 16:27:46 -0400
+Message-Id: <199507232027.QAA09306@geech.gnu.ai.mit.edu>
+From: Michael I Bushnell <mib@gnu.ai.mit.edu>
+To: hurd-ann@gnu.ai.mit.edu
+Subject: Hurd snapshot!
+X-Geek-Code: (V2.1) GCS/J/M/MU/P/S/O>AT d- H-- s-: g+++ p0 !au a- w++ v+++(*) C+
++$ UB++++$ P--- L 3- E++ N++ K++++ W-- M- V-- po-- Y+(--) t++ 5+ j++ R- G'''' tv
++ b+++ !D B-- e+ u++(*) h* f? r n y++
+X-Zippy-Says: I just had a NOSE JOB!!
+Sender: owner-abshurd@cs.pdx.edu
+Precedence: bulk
+
+
+I have just put a new Hurd snapshot on alpha.gnu.ai.mit.edu in
+/gnu/hurd-snap-950723.tar.gz.
+
+You will also need the new libc snapshot, which should appear in the
+same place today. Older libc snapshots will not be happy.
+
+The binary images (hurd-floppy.fs.gz and hurd-image.tar.gz) have not
+been updated. It is difficult to use the Hurd standalon, because the
+Mach boot loaders can now no longer boot the Hurd. A new boot loader
+is nearly finished. Perhaps we can make new binary images then, or a
+volunteer might take over this useful work. (Hint, hint.)
+
+Michael
+
+
+
+Here is the NEWS:
+
+July 23, 1995
+
+Shared libraries now work; use -static to link programs and avoid the
+shared libraries. The Hurd programs are normally built static; this
+will probably change soon.
+
+The ext2fs server now works, as do the tools to manipulate ext2fs
+filesystems. A snapshot of the tools will be made soon under separate
+cover. Many thanks to Ted Ts'o for his valuable work on the tools.
+
+Readers of the Makefiles will notice that we now generate dependencies
+automatically.
+
+The old netserv library is gone.
+
+The `boot' hack has been modified slightly to avoid the normalq libc startup
+files, because they no longer work with UX.
+
+Some small bugs have been fixed in the devio server.
+
+The ports library has been totally rewritten; new features permit
+servers to have greater control over thread RPC's and port creation.
+
+The fshelp library now does most of the work for translator
+interaction; it's simpler now too. Filesystems have much less work to
+do; the relevant code in libdiskfs is now understanble instead of
+unparseable chaos.
+
+The ports library provides for timeouts; the diskfs library almost
+uses it, but because of a bug, it's disabled for now.
+
+Filesystems are now expected to sync themselves if necessary; the new
+fsys_set_options RPC provides for changeing (or cancelling) the sync
+intervale. The diskfs library does this for you. The update program
+is no longer necessary.
+
+A small bug in the proc server has been hacked around; the real fix
+will come later.
+
+Many important bugs in the C library have been fixed since the last
+snapshot; perhaps all of them. ;-)
+
diff --git a/history/hurd-flash9 b/history/hurd-flash9
new file mode 100644
index 00000000..1ff32ba9
--- /dev/null
+++ b/history/hurd-flash9
@@ -0,0 +1,39 @@
+Date: Wed, 29 Nov 1995 13:13:23 -0500
+Message-Id: <199511291813.NAA10983@duality.gnu.ai.mit.edu>
+From: mib@gnu.ai.mit.edu (Michael I. Bushnell, p/BSG)
+To: hurd-ann@gnu.ai.mit.edu (and others)
+Subject: Announcement
+X-Geek-Code: (V2.1) GCS/J/M/MU/P/S/O>AT d- H-- s-: g+++ p0 !au a- w++ v+++(*) C+
++$ UB++++$ P--- L 3- E++ N++ K++++ W-- M- V-- po-- Y+(--) t++ 5+ j++ R- G'''' tv
++ b+++ !D B-- e+ u++(*) h* f? r n y++
+X-Windows: The Cutting Edge of Obsolescence.
+Sender: owner-abshurd@cs.pdx.edu
+Precedence: bulk
+
+
+The Hurd has succesfully completed its first FTP:
+
+bash# ftp 128.52.46.31
+Connected to 128.52.46.31.
+220 albert.gnu.ai.mit.edu FTP server (Version 5.60) ready.
+Name (128.52.46.31:root):
+331 Password required for root.
+Password:230 User root logged in.
+ftp> cd ~mib
+250 CWD command successful.
+ftp> get ftptest
+200 PORT command successful.
+150 Opening ASCII mode data connection for ftptest (16 bytes).
+226 Transfer complete.
+17 bytes received in 0.07 secs (0.24 Kbytes/sec)
+ftp> quit
+221 Goodbye.
+bash# cat ftptest
+this is a test.
+bash#
+
+
+Tre cool.
+
+Michael
+
diff --git a/history/port_to_l4.mdwn b/history/port_to_l4.mdwn
new file mode 100644
index 00000000..cdf048e6
--- /dev/null
+++ b/history/port_to_l4.mdwn
@@ -0,0 +1,102 @@
+[[!meta copyright="Copyright © 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009
+Free Software Foundation, Inc."]]
+
+[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
+id="license" text="Permission is granted to copy, distribute and/or modify this
+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]]."]]"""]]
+
+[[!meta title="Porting the Hurd to L4: Hurd/L4"]]
+
+There was an effort to port the Hurd from [[microkernel/Mach]] to the
+[[L4_microkernel_family|microkernel/L4]].
+
+The idea of using L4 as a [[microkernel]] for a [[Hurd_system|hurd]] was
+initially voiced in the [[Hurd_community|community]] by Okuji Yoshinori, who,
+for discussing this purpose, created the [[mailing lists/l4-hurd]] mailing list
+in November 2000.
+
+The project itself then was mostly lead by Marcus Brinkmann and Neal Walfield.
+Even though there was progress -- see, for example, the
+[[QEMU image for L4|hurd/running/qemu/image for l4]] -- this port never reached a
+releasable state. Eventually, a straight-forward port of the original Hurd's
+design wasn't deemed feasible anymore by the developers, partly due to them not
+cosidering L4 suitable for implementing a general-purpose operating system on
+top of it, and because of deficiencies in the original Hurd's design, which
+they discovered along their way. Read the [[hurd/critique]] and a
+[[hurd/ng/position paper]].
+
+By now, the development of Hurd/L4 has stopped. However, Neal Walfield moved
+on to working on a newly designed kernel called [[microkernel/viengoos]].
+
+Over the years, a lot of discussion have been held on the
+[[mailing lists/l4-hurd]] mailing list, which today is still the right place
+for [[next-generation Hurd|hurd/ng]] discussions.
+
+Development of Hurd/L4 was done in the `hurd-l4` module of the Hurd CVS
+repository. The `doc` directory contains a design document that is worth
+reading for anyone who wishes to learn more about Hurd/L4.
+
+
+One goal of porting the Hurd to L4 was to make the Hurd independend of Mach
+interfaces, to make it somewhat microkernel-agnostic.
+
+Mach wasn't maintained by its original authors anymore, so switching to a
+well-maintained current [[microkernel]] was expected to yield a more solid
+foundation for a Hurd system than the decaying Mach design and implementation
+was able to.
+
+L4 being a second-generation [[microkernel]] was deemed to provide for a faster
+system kernel implementation, especially in the time-critical [[IPC]] paths.
+Also, as L4 was already implemented for a bunch of different architectures
+(IA32, Alpha, MIPS; SMP), and the Hurd itself being rather archtecture-unaware,
+it was expected to be able to easily support more platforms than with the
+existing system.
+
+A design upon the lean L4 kernel would finally have moved devices drivers out
+of the kernel's [[TCB]].
+
+
+One idea was to first introduce a Mach-on-L4 emulation layer, to easily get a
+usable (though slow) Hurd-using-Mach-interfaces-on-L4 system, and then
+gradually move the Hurd servers to use L4 intefaces rather than Mach ones.
+
+
+Neal Walfield started the original Hurd/L4 port while at Karlsruhe in 2002. He
+explains:
+
+> My intention was to adapt the Hurd to exploit L4's concepts and intended
+> [[design_pattern]]s; it was not to simply provide a Mach
+> [[compatibility_layer]] on top of L4. When I left Karlsruhe, I no longer had
+> access to [[microkernel/l4/Pistachio]] as I was unwilling to sign an NDA.
+> Although the specification was available, the Karlsruhe group only [released
+> their code in May
+> 2003](https://lists.ira.uni-karlsruhe.de/pipermail/l4ka/2003-May/000345.html).
+> Around this time, Marcus began hacking on Pistachio. He created a relatively
+> complete run-time. I didn't really become involved again until the second
+> half of 2004, after I complete by Bachelors degree.
+
+> Before Marcus and I considered [[microkernel/Coyotos]], we had already
+> rejected some parts of the Hurd's design. The
+> [[open issues/resource management problems]] were
+> what prompted me to look at L4. Also, some of the problems with
+> [[hurd/translator]]s were already well-known to us. (For a more detailed
+> description of the problems we have identified, see our [[hurd/critique]] in the
+> 2007 July's SIGOPS OSR. We have also written a forward-looking
+> [[hurd/ng/position paper]].)
+
+> We visited Jonathan Shapiro at Hopkins in January 2006. This resulted in a
+> number of discussions, some quite influential, and not always in a way which
+> aligned our position with that of Jonathan's. This was particularly true of
+> a number of security issues.
+
+A lange number of discussion threads can be found in the archives of the
+[[mailing lists/l4-hurd]] mailing list.
+
+> Hurd-NG, as we originally called it, was an attempt to articulate the system
+> that we had come to envision in terms of interfaces and description of the
+> system's structure. The new name was selected, if I recall correctly, as it
+> clearly wasn't the Hurd nor the Hurd based on L4.