/[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 12 by dpavlin, Mon Oct 8 16:18:38 2007 UTC revision 20 by dpavlin, Mon Oct 8 16:19:23 2007 UTC
# Line 1  Line 1 
1  Release notes for Gavare's eXperimental Emulator (GXemul), 0.3.5  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 used to  GXemul is an experimental instruction-level machine emulator. Several
8  run binary code for MIPS-based machines, regardless of host platform. Several  emulation modes are available. In some modes, processors and surrounding
 emulation modes are available. For some modes, processors and surrounding  
9  hardware components are emulated well enough to let unmodified operating  hardware components are emulated well enough to let unmodified operating
10  systems (e.g. NetBSD) run as if they were running on a real machine.  systems (e.g. NetBSD) run as if they were running on a real machine.
11    
12  (Non-MIPS emulation modes are also under development, but so far none of those  MIPS processors are emulated using either a simple binary translation
13  modes has reached the completeness required to run unmodified operating  layer ("recompilation"), which is used on Alpha and i386 hosts, or by
14  systems.)  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  I have verified that the following "guest" operating systems can run inside
23  the emulator:  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.2 (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 27  the emulator: Line 33  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.2               NEC MobilePro 770, 780, 800, 880      NetBSD/hpcmips 2.1                 NEC MobilePro 770, 780, 800, 880
37      NetBSD/cobalt 2.0.2                Cobalt      NetBSD/cobalt 2.1                  Cobalt
38      NetBSD/evbmips 2.0.2               Malta 5Kc/4Kc evaluation board      NetBSD/evbmips 2.1                 Malta 5Kc/4Kc evaluation board
39      NetBSD/sgimips 2.0.2               SGI O2 ("IP32")      NetBSD/sgimips 2.1                 SGI O2 ("IP32")
40        NetBSD/cats 2.1                    CATS (ARM)
41        OpenBSD/cats 3.8                   CATS (ARM)
42        NetBSD/prep 2.1                    PReP (PowerPC Reference Platform)
43    
44  Some of these guest operating systems are easier to install and run than  Some of these guest operating systems are easier to install and run than
45  others. The best supported mode is the DECstation 5000/200 emulation mode, with  others. The best supported guest operating systems are probably NetBSD/pmax,
46  NetBSD/pmax as the guest operating system.  NetBSD/cats and OpenBSD/cats.
   
 A couple of other emulation modes exist. Some of these modes are almost working  
 well enough to run complete guest operating systems, but most are just  
 skeletons. The modes that work are listed in the documentation.  
47    
48  The emulator can also be used in other experiments; it does not have to run  The emulator can also be used in other experiments; it does not have to run
49  entire guest operating systems. (However, GXemul does not simulate things  entire guest operating systems. However, as GXemul is an instruction-level
50  smaller than an instruction. What this means is that pipe-line stalls,  emulator, it does not simulate things smaller than an instruction. What this
51  penalties caused by branch-prediction misses or cache misses, and other  means is that pipe-line stalls, penalties caused by branch-prediction misses
52  micro-architectural effects are not simulated.)  or cache misses, and other micro-architectural effects are not simulated.
53    
54  The user-visible changes between release 0.3.4 and 0.3.5 are minor, and  User-visible change between release 0.3.6.2 and 0.3.7 include:
55  can be summarized as follows:  
56        o)  The experimental PowerPC emulation mode is now working well enough
57          o)  Updates to the (old) binary translation subsystem, resulting          to allow NetBSD/prep 2.1 to be installed and run inside the emulator.
58              in minor speed improvements.          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          o)  64-bit MIPS dmult/dmultu has been fixed.      o)  Dyntrans updates; 32-bit PowerPC mostly, but also many performance
78            related updates for ARM.
79    
80          o)  slt* instructions for 64-bit MIPS were incorrectly implemented  There have also been lots of other changes, too many and small to mention here.
             in the i386 backend. This has been fixed.  
   
 There have been many other bug fixes and updates, most of which are not  
 visible.  
81    
82  Files included in this release are:  Files included in this release are:
83    
# Line 143  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:  Also, src/include/alpha_rpb.h requires the following:
175    
176      Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University.      Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University.
# Line 156  Also, src/include/alpha_rpb.h requires t Line 184  Also, src/include/alpha_rpb.h requires t
184      software, derivative works or modified versions, and any portions      software, derivative works or modified versions, and any portions
185      thereof, and that both notices appear in supporting documentation.      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 (in no specific order) Joachim Buss, Juli Mallett, Juan RP, Alec  Thanks to (in no specific order) Joachim Buss, Juli Mallett, Juan Romero
191  Voropay, Göran Weinholt, Alexander Yurchenko, and everyone else who has  Pardines, Alec Voropay, Göran Weinholt, Alexander Yurchenko, and everyone
192  provided me with feedback.  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.12  
changed lines
  Added in v.20

  ViewVC Help
Powered by ViewVC 1.1.26