--- trunk/RELEASE 2007/10/08 16:19:56 24 +++ trunk/RELEASE 2007/10/08 16:22:32 42 @@ -1,7 +1,7 @@ -Release notes for Gavare's eXperimental Emulator (GXemul), 0.4.0 +Release notes for Gavare's eXperimental Emulator (GXemul), 0.4.6 ================================================================ -Copyright (C) 2003-2006 Anders Gavare. +Copyright (C) 2003-2007 Anders Gavare. GXemul is an experimental instruction-level machine emulator. Several @@ -9,56 +9,37 @@ hardware components are emulated well enough to let unmodified operating systems (e.g. NetBSD) run as if they were running on a real machine. -The documentation lists the machines and guest operating systems that can -be regarded as "working" in GXemul. The best supported guest operating -systems are probably NetBSD/pmax, NetBSD/cats, and OpenBSD/cats. - - -The most important change between release 0.3.8 and 0.4.0 is: - - o) The emulation of MIPS processors has been completely rewritten; - it now uses the same portable dynamic translation system as the - ARM and PowerPC emulation modes. - - On Alpha and i386 hosts (and AMD64 hosts running in 32-bit mode), - GXemul previously used translation into native code. This release - will perform worse than 0.3.8 on those host architectures. - - On all other hosts (including AMD64 running in native 64-bit mode), - 0.4.0 is likely to be faster than 0.3.8, when emulating MIPS, at - least for R3000 emulation. +Processors (ARM, MIPS, PowerPC, and SuperH) are emulated using dynamic +translation. Unlike some other dynamically translating emulators, GXemul +does not need to generate native code, only a "runnable intermediate +representation", and will thus run on any host architecture. - I think that in the long term, moving towards full portability like - this is a good idea. +The documentation lists the machines and guest operating systems that can +be regarded as "working" in GXemul. The best working guest operating +systems are probably NetBSD/pmax and NetBSD/cats. -(Since the MIPS emulation mode has been rewritten from scratch, and I have -not really had much time over for debugging, there are most likely new -bugs in 0.4.0 that were not present in 0.3.8. However, I feel that it is -better to make a quick release now than to wait even longer.) -There have also been many other changes, including, but not limited to: +The changes between release 0.4.5.1 and 0.4.6 include, among other things: - o) The "test machine" functionality is more well-defined than before, - and some tutorial-like demos have been added. These could be useful - e.g. in operating system construction courses. + o) NetBSD/pmppc can now run in the emulator (with root-on-nfs), on + an emulated Artesyn PM/PPC board. - o) NetBSD/sgimips 3.0 works now. This is most likely due to the rewrite - of the MIPS emulation mode. Previous releases of GXemul only worked - with NetBSD/sgimips 2.1. + o) An instruction combination has been implemented for the idle loop + used by NetBSD/arm (cats, netwinder, and iq80321). In plain English, + this means that if the guest OS inside the emulator is not using + any CPU, the emulator should not use much CPU on the host either. - o) I have begun implementing rudimentary support for GDB remote serial - protocol connections. This means that you can run e.g. the Data - Display Debugger, and connect it to a GXemul instance. + o) Some minor SuperH emulation speed improvements. - No advanced GDB functionality is working yet, but starting and - stopping the emulated machine and single-stepping should work. + o) General code cleanup: Non-working (skeleton) emulation modes have + been removed, to make it easier to maintain the source code in + the long run, and many unused/legacy constructs have been removed. -Please read the HISTORY files for more details. +Please read the HISTORY file for more details. Files included in this release are: - BUGS List of known bugs for this release. HISTORY Detailed revision history / changelog. LICENSE Copyright message / license. README Quick start instructions, for the impatient. @@ -151,6 +132,12 @@ This product includes software developed by Ichiro FUKUHARA. + This product includes software developed by Marcus Comstedt. + + This product includes software developed by Bill Paul. + + This product includes software developed by Nivas Madhur. + Also, src/include/alpha_rpb.h requires the following: Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University. @@ -168,14 +155,6 @@ or reuse code. -Thanks to (in no specific order) Joachim Buss, Olivier Houchard, Juli Mallett, -Juan Romero Pardines, Alec Voropay, Göran Weinholt, Alexander Yurchenko, and -everyone else who has provided me with feedback. - -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. - If you have found GXemul useful in some way, or feel like sending me comments -or feedback in general, then mail me at anders(at)gavare.se. +or feedback in general, then mail me at anders(At)gavare.se.