/[gxemul]/trunk/RELEASE
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/RELEASE

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2 by dpavlin, Mon Oct 8 16:17:48 2007 UTC revision 20 by dpavlin, Mon Oct 8 16:19:23 2007 UTC
# Line 1  Line 1 
1  Release notes for GXemul 0.3.1  Release notes for Gavare's eXperimental Emulator (GXemul), 0.3.7
2  ==============================  ================================================================
3    
4  Copyright (C) 2003-2005  Anders Gavare.  Copyright (C) 2003-2005  Anders Gavare.
5    
6    
7  GXemul is an experimental instruction-level machine emulator. It can be  GXemul is an experimental instruction-level machine emulator. Several
8  used to run binary code for (among others) MIPS-based machines. Several  emulation modes are available. In some modes, processors and surrounding
9  emulation modes are available. For some emulation modes, processors and  hardware components are emulated well enough to let unmodified operating
10  surrounding hardware components are emulated well enough to let unmodified  systems (e.g. NetBSD) run as if they were running on a real machine.
11  operating systems run as if they were running on a real machine.  
12    MIPS processors are emulated using either a simple binary translation
13  I have verified that the following "guest" operating systems can run  layer ("recompilation"), which is used on Alpha and i386 hosts, or by
14  inside the emulator:  traditional interpretation (very very slow, but works on any host platform).
15    
16    ARM and PowerPC processors are emulated using a newer dynamic translation
17    system. Performance is somewhere between traditional interpretation and
18    dynamic recompilation; however, the dynamic translation system used in
19    GXemul does NOT require platform-specific back-end code. In plain English,
20    this means that the dyntrans system works on any host platform.
21    
22    I have verified that the following "guest" operating systems can run inside
23    the emulator. Instructions on how to install and run these can be found in
24    the documentation.
25    
26      Guest operating system             Emulated machine      Guest operating system             Emulated machine
27      ----------------------             ----------------      ----------------------             ----------------
28      NetBSD/pmax 2.0 (and 1.6.2)        DECstation 5000/200      NetBSD/pmax 2.1 (and 1.6.2)        DECstation 5000/200
29      OpenBSD/pmax 2.8-BETA              DECstation 5000/200      OpenBSD/pmax 2.8-BETA              DECstation 5000/200
30      Ultrix 4.2-4.5                     DECstation 5000/200      Ultrix 4.2-4.5                     DECstation 5000/200
31      Sprite demo harddisk image         DECstation 5000/200      Sprite demo harddisk image         DECstation 5000/200
# Line 23  inside the emulator: Line 33  inside the emulator:
33      Redhat Linux 7.1 for mips          DECstation 5000/200      Redhat Linux 7.1 for mips          DECstation 5000/200
34      NetBSD/arc 1.6.2                   Acer PICA-61      NetBSD/arc 1.6.2                   Acer PICA-61
35      OpenBSD/arc 2.3                    Acer PICA-61      OpenBSD/arc 2.3                    Acer PICA-61
36      NetBSD/hpcmips 2.0                 NEC MobilePro 770, 780, 800, 880      NetBSD/hpcmips 2.1                 NEC MobilePro 770, 780, 800, 880
37        NetBSD/cobalt 2.1                  Cobalt
38  A couple of other emulation modes exist. Some of these modes are almost      NetBSD/evbmips 2.1                 Malta 5Kc/4Kc evaluation board
39  working well enough to run complete guest operating systems, but most are      NetBSD/sgimips 2.1                 SGI O2 ("IP32")
40  just skeletons. The modes that work are listed in the documentation.      NetBSD/cats 2.1                    CATS (ARM)
41        OpenBSD/cats 3.8                   CATS (ARM)
42  The emulator can also be used in other experiments; it does not have to      NetBSD/prep 2.1                    PReP (PowerPC Reference Platform)
43  run entire guest operating systems. It is important to remember, though,  
44  that GXemul does not simulate things smaller than an instruction; this  Some of these guest operating systems are easier to install and run than
45  means that pipe-line stalls, penalties caused by branch-prediction misses,  others. The best supported guest operating systems are probably NetBSD/pmax,
46  and other effects are not simulated.  NetBSD/cats and OpenBSD/cats.
47    
48  The two most visible changes from version 0.3 to 0.3.1 are:  The emulator can also be used in other experiments; it does not have to run
49    entire guest operating systems. However, as GXemul is an instruction-level
50    emulator, it does not simulate things smaller than an instruction. What this
51    means is that pipe-line stalls, penalties caused by branch-prediction misses
52    or cache misses, and other micro-architectural effects are not simulated.
53    
54    User-visible change between release 0.3.6.2 and 0.3.7 include:
55    
56        o)  The experimental PowerPC emulation mode is now working well enough
57            to allow NetBSD/prep 2.1 to be installed and run inside the emulator.
58            It is not 100% stable, and it is not optimized for performance yet,
59            but hopefully enough for simple experiments.
60    
61        o)  I finally took the time to implement a DEC 21143 NIC; this brings
62            network connectivity to NetBSD/cats. (The userland "NAT"-like
63            networking layer is still a bit buggy, and does not work with
64            everything. However, NetBSD/cats can now be installed via ftp.)
65    
66        o)  CD-ROM images can now in some cases be detected as ATAPI CD-ROMs
67            instead of IDE harddisks. It works for at least NetBSD, OpenBSD,
68            and Linux on CATS, and NetBSD on hpcmips.
69    
70    Internal (code related) changes include:
71    
72        o)  Cleanup of the PCI and ISA bus frameworks; in practice this means
73            that more code can be shared between different emulated machine
74            models than before, and that adding new machine types will become
75            easier.
76    
77          x)  Name change (from mips64emul to GXemul).      o)  Dyntrans updates; 32-bit PowerPC mostly, but also many performance
78            related updates for ARM.
79    
80          x)  NetBSD/hpcmips can now be installed and run from a harddisk  There have also been lots of other changes, too many and small to mention here.
             image on an emulated NEC MobilePro 770, 780, 800, or 880.  
   
 There have also been many other updates and bugfixes, as usual.  
   
 This release has a number of known bugs, listed in the BUGS file, but feel  
 free to drop me an email regarding other bugs.  
81    
82  Files included in this release are:  Files included in this release are:
83    
# Line 55  Files included in this release are: Line 87  Files included in this release are:
87    README                      Quick start instructions, for the impatient.    README                      Quick start instructions, for the impatient.
88    RELEASE                     This file.    RELEASE                     This file.
89    TODO                        TODO notes.    TODO                        TODO notes.
90    configure, Makefile.skel    sh and make scripts for building GXemul    configure, Makefile.skel    sh and make scripts for building GXemul.
91    doc                         Documentation.    doc                         Documentation.
92    experiments                 Experimental code. (Usually not needed.)    experiments                 Experimental code. (Usually not needed.)
93    src, devices, and include   Source code.    src                         Source code.
   tests                       Regression tests.  
94    
95  To build the emulator, run the ./configure script, and then run make.  To build the emulator, run the ./configure script, and then run make.
96    
# Line 67  Building the emulator should work on mos Line 98  Building the emulator should work on mos
98  is specifically known to NOT work is Ultrix/RISC inside the emulator; Ultrix  is specifically known to NOT work is Ultrix/RISC inside the emulator; Ultrix
99  chokes on the configure script and the default cc in Ultrix doesn't work.)  chokes on the configure script and the default cc in Ultrix doesn't work.)
100    
101  Regarding files in the include/ directory:  only some of these are written by  Regarding files in the src/include/ directory: only some of these are written
102  me, the rest are from other sources (such as NetBSD). The license text says  by me, the rest are from other sources (such as NetBSD). The license text says
103  that "All advertising materials mentioning features or use of this software"  that "All advertising materials mentioning features or use of this software"
104  must display acknowledgements. Even though I do NOT feel I mention features or  must display acknowledgements. Even though I do NOT feel I mention features or
105  use of the header files (the "software") in any advertising materials, I am  use of the header files (the "software") in any advertising materials, I am
# Line 131  them like this is in order: Line 162  them like this is in order:
162    
163      This product includes software developed by Marc Horowitz.      This product includes software developed by Marc Horowitz.
164    
165        This product includes software developed by Brini.
166    
167        This product includes software developed by Mark Brinicombe
168        for the NetBSD Project.
169    
170        This product includes software developed by TooLs GmbH.
171    
172        This product includes software developed by Manuel Bouyer.
173    
174    Also, src/include/alpha_rpb.h requires the following:
175    
176        Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University.
177        All rights reserved.
178    
179        Author: Keith Bostic, Chris G. Demetriou
180    
181        Permission to use, copy, modify and distribute this software and
182        its documentation is hereby granted, provided that both the copyright
183        notice and this permission notice appear in all copies of the
184        software, derivative works or modified versions, and any portions
185        thereof, and that both notices appear in supporting documentation.
186    
187  See individual files for license details, if you plan to redistribute GXemul  See individual files for license details, if you plan to redistribute GXemul
188  or reuse code.  or reuse code.
189    
190  Thanks to everyone who has provided me with feedback.  Thanks to (in no specific order) Joachim Buss, Juli Mallett, Juan Romero
191    Pardines, Alec Voropay, Göran Weinholt, Alexander Yurchenko, and everyone
192    else who has provided me with feedback.
193    
194  If you have found GXemul useful in some way, or feel like sending me comments  If you have found GXemul useful in some way, or feel like sending me comments
195  or feedback in general, then mail me at anders(at)gavare.se.  or feedback in general, then mail me at anders(at)gavare.se.

Legend:
Removed from v.2  
changed lines
  Added in v.20

  ViewVC Help
Powered by ViewVC 1.1.26