> I'm confused about what Mach documentation applies to GNUMach 1.2. I've > found lots of information on CMU Mach 3.0, and there are also some pages > on cs.utah.edu about Mach4 UK22. Are all features described for CMU Mach > part of Mach4, and are all features described for Mach4 available in GNU > Mach?
Yes and yes. CMU Mach 3.0 (MKnn) is no longer maintained by CMU. Utah Mach4 (UKnn) was derived from CMU Mach 3.0, but is no longer maintained by Utah. GNUmach was derived from Utah Mach4. > * Is the information on > http://www.cs.utah.edu/projects/flux/mach4-i386/html/mach4-UK22.html > applicable to GNU Mach? Partially, but not completely. GNUmach was derived from that version and has the features it talks about, but other things have since changed, and the way you build GNUmach is different. > * I also read a paper by Alessandro Forin, David Golub and Brian Bershad > entitled "An I/O System for Mach" which seems to cover e.g. displays and > terminals, which got me thinking about the current status of the serial > devices as mentioned previously on this list. Is the Mach 3.0 I/O system > not present in GNU Mach? (If you don't know what I/O I'm talking about, > the document can be found on > http://www.cs.cmu.edu/afs/cs/project/mach/public/www/doc/publications.html). Many research projects in the past were done based on Mach 3.0. There are many papers both describing the implementation techniques used in Mach at CMU and at Utah that are reflected in the GNUmach source base, and also many papers about projects that were not merged into the mainline CMU or Utah source base before it became GNUmach. That paper (from 1991) describes things done in the CMU implementation, and I think what it is describing is the state of earlier mainline CMU Mach 3.0 versions. But there has been much other work done since 1991, and specifically work using Linux device drivers at in Utah Mach4 (mostly by Shantanu Goel) and since in GNUmach (by Okuji Yoshinori, who is on this list and actively hacks on GNUmach). If you want to understand things by reading old papers, then you should probably read all the related papers up to the most recent Mach papers (from Utah in 95 or 96 probably) to see the progression. And still, you need to just read the source to see what has been done in GNUmach since.

