/[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 26 by dpavlin, Mon Oct 8 16:20:10 2007 UTC revision 28 by dpavlin, Mon Oct 8 16:20:26 2007 UTC
# Line 1  Line 1 
1  Release notes for Gavare's eXperimental Emulator (GXemul), 0.4.0.1  Release notes for Gavare's eXperimental Emulator (GXemul), 0.4.1
2  ==================================================================  ================================================================
3    
4  Copyright (C) 2003-2006  Anders Gavare.  Copyright (C) 2003-2006  Anders Gavare.
5    
# Line 10  hardware components are emulated well en Line 10  hardware components are emulated well en
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  The documentation lists the machines and guest operating systems that can  The documentation lists the machines and guest operating systems that can
13  be regarded as "working" in GXemul. The best supported guest operating  be regarded as "working" in GXemul. The best working guest operating
14  systems are probably NetBSD/pmax, NetBSD/cats, and OpenBSD/cats.  systems are probably NetBSD/pmax, NetBSD/cats, and OpenBSD/cats.
15    
16    
17  The most important change between release 0.3.8 and 0.4.0.1 is:  Changes between release 0.4.0.1 and 0.4.1 include, among other things:
18    
19      o)  The emulation of MIPS processors has been completely rewritten;      o)  Some bugs in the dynamic translation core have been fixed, making
20          it now uses the same portable dynamic translation system as the          all emulation modes (especially the MIPS mode) more stable.
         ARM and PowerPC emulation modes.  
21    
22          On Alpha and i386 hosts (and AMD64 hosts running in 32-bit mode),      o)  In the refactoring effort between 0.4.0 and 0.4.0.1, single-stepping
23          GXemul previously used translation into native code. This release          (and instruction tracing) of 64-bit programs was accidentally broken.
24          will perform worse than 0.3.8 on those host architectures.          Single-stepping in 64-bit mode could result in strange exceptions.
25            This has been fixed in 0.4.1.
26    
27          On all other hosts (including AMD64 running in native 64-bit mode),      o)  MIPS emulation performance has been improved somewhat:
         0.4.0 is likely to be faster than 0.3.8, when emulating MIPS.  
28    
29          I think that in the long term, moving towards full portability like          R3000: After removing some buggy code (hints for physical page
30          this is a good idea.          translations), it was possible to remove the workaround for R3000
31            caches which was needed in 0.4.0.1 to make Linux and Ultrix run.
32            This gives an overall speedup for R2000/R3000.
33    
34  (0.4.0 was a bit buggy and unstable; 0.4.0.1 is a quick-fix release.)          For non-R3000, there have been some speedups as well. After fixing
35            reference count bugs for 64-bit addressing in the dyntrans system,
36            workarounds/hacks in the tlbwr/tlbwi instructions and in the ASID
37            change helper function could be removed.
38    
39  There have also been many other changes, including, but not limited to:      o)  A new -s command line option is now available, for dumping
40            raw runtime data/statistics on every instruction to a file.
41    
42      o)  The "test machine" functionality is more well-defined than before,          Currently, the following kinds of data can be dumped:
         and some tutorial-like demos have been added. These could be useful  
         e.g. in operating system construction courses.  
43    
44      o)  NetBSD/sgimips 3.0 works now. This is most likely due to the rewrite          1. the program counter (virtual address)
45          of the MIPS emulation mode. Previous releases of GXemul only worked          2. the physical address representation of the program counter
46          with NetBSD/sgimips 2.1.          3. the internal dyntrans instruction call pointer, useful when
47               developing/optimizing the emulator
48    
49      o)  I have begun implementing rudimentary support for GDB remote serial          This data can then be analyzed by external tools.
         protocol connections. This means that you can run e.g. the Data  
         Display Debugger, and connect it to a GXemul instance.  
50    
51          No advanced GDB functionality is working yet, but starting and          (There was a -s command line option in previous releases of
52          stopping the emulated machine and single-stepping should work.          the emulator, but it did not work as intended, and was not
53            usable from dyntrans emulation modes.)
54    
55  Please read the HISTORY files for more details.  Please read the HISTORY files for more details.
56    
# Line 167  Thanks to (in no specific order) Joachim Line 170  Thanks to (in no specific order) Joachim
170  Juan Romero Pardines, Alec Voropay, Göran Weinholt, Alexander Yurchenko, and  Juan Romero Pardines, Alec Voropay, Göran Weinholt, Alexander Yurchenko, and
171  everyone else who has provided me with feedback.  everyone else who has provided me with feedback.
172    
 Special thanks to Alec Voropay for testing this release with Linux  
 kernels, and on Cygwin, and also thanks to Ondrej Palkovsky for testing  
 with HelenOS.  
   
173  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
174  or feedback in general, then mail me at anders(at)gavare.se.  or feedback in general, then mail me at anders(at)gavare.se.
175    

Legend:
Removed from v.26  
changed lines
  Added in v.28

  ViewVC Help
Powered by ViewVC 1.1.26