No description
Find a file
Steve Reinhardt 1b841a871e - Add capability to auto-generate Param structs from
.mpy SimObject descriptions.  Structs are defined
in simobj/param/ObjectName.hh.
- Move compile-time python params (from CPPDEFINES) to
separate dict from run-time params (from os.environ).
The former are needed to generate proper param structs.
This also helps prevent users from messing things up
by setting the wrong environment vars (which could have
overridden compile-time settings in the old system).
- Other misc cleanup of m5 python package.

SConscript:
    Include simobj/SConscript
build/SConstruct:
    Fix type in comment
python/SConscript:
    Move CPPDEFINES dict-generating code to m5scons.flatten_defines
python/m5/__init__.py:
    - Generate a build_env SmartDict here to hold compile-time
    params (passed in via __main__.m5_build_env).
    - Move panic and env here from config.py.
python/m5/config.py:
    Move panic, env to top level (m5/__init__.py)
python/m5/objects/BaseCPU.mpy:
    Use build_env instead of env for compile-time params
python/m5/smartdict.py:
    Add some comments.
sim/sim_object.hh:
    Include auto-generated Param struct.  Not used yet,
    just here as proof of concept.
test/genini.py:
    Put -E arguments in build_env as well as os.environ

--HG--
extra : convert_revision : cf6f4a2565b230c495b33b18612d6030988adac5
2005-03-14 07:46:26 -05:00
arch Removed unecessary constructor call at each return. 2005-03-10 14:20:12 -05:00
base Fix stats incompatibility with g++ 3.4. 2005-03-01 00:41:19 -05:00
build - Add capability to auto-generate Param structs from 2005-03-14 07:46:26 -05:00
configs Added config files for splash2 benchmarks. Parameters: 2005-03-11 18:07:07 -05:00
cpu Merge zizzer:/z/m5/Bitkeeper/m5 2005-03-10 11:56:07 -05:00
dev fix typo in the fixed etherlink serialization. 2005-03-09 11:04:19 -05:00
docs footer.html: 2003-10-15 20:49:12 -04:00
kern Merger 2005-02-09 12:56:24 -05:00
python - Add capability to auto-generate Param structs from 2005-03-14 07:46:26 -05:00
sim - Add capability to auto-generate Param structs from 2005-03-14 07:46:26 -05:00
test - Add capability to auto-generate Param structs from 2005-03-14 07:46:26 -05:00
util Fix tracediff to work with new parameter and output directory structure. 2005-03-09 00:22:42 -05:00
Doxyfile Update for doxygen 1.3.6 2004-05-04 16:32:43 -04:00
LICENSE updated readme to reflect linux/scons changes 2004-07-28 17:56:36 -04:00
README updated readme to reflect linux/scons changes 2004-07-28 17:56:36 -04:00
SConscript - Add capability to auto-generate Param structs from 2005-03-14 07:46:26 -05:00

This is release m5_1.0_beta1 of the M5 simulator.

This file contains brief "getting started" information and release
notes.  For more information, see http://m5.eecs.umich.edu.  If you
have questions, please send mail to m5sim-users@lists.sourceforge.net.

WHAT'S INCLUDED (AND NOT)
-------------------------

Since you're reading this file, presumably you've managed to untar the
distribution.  The archive you've unpacked has three subdirectories:
 - m5: the simulator itself
 - m5-test: regression tests and scripts to run them
 - ext: less-common external packages needed to build m5
   (currently ply and libelf)

M5 is a capable, full-system simulator that current supports both Linux
2.4/2.6 and the proprietary Compaq/HP Tru64 version of Unix. We are able 
to distribute Linux bootdisks, but we are unable to distribute bootable
disk images of Tru64 Unix. If you have a Tru64 license and are interested 
in obtaining disk images, contact us at m5-dev@eecs.umich.edu.

WHAT'S NEEDED
-------------
-GCC(3.X)
-Python(2.2.2+)

WHAT'S RECOMMENDED
------------------
-MySQL (for statistics complex statistics storage/retrieval)
-Python-MysqlDB (for statistics analysis) 

GETTING STARTED
---------------

The following steps will build and test the simulator.  The variable
"$top" refers to the top directory where you've unpacked the files,
i.e., the one containing the m5, m5-test, and ext directories.

There are three different build targets and three optimizations in each level:
Target:
-------
ALPHA  - Syscall emulation simulation
KERNEL - Linux full system simulation
KERNEL_TLASER - Tru64 Unix full system simulation

Optimization:
-------------
m5.debug - debug version of the code with tracing and without optimization
m5.opt   - optimized version of code with tracing
m5.fast  - optimized version of the code without tracing and asserts

cd $top/m5/build
scons TARGET/OPTLEVL  # e.g. KERNEL/m5.opt, use -j N if you have a MP system
cd $top/m5-test
./do-tests.pl -B ALPHA	# test what you just built
./do-tests.pl -B KERNEL	# test what you just built
# wait for tests to run...
# should end with "finished do-tests successfully!"