Source Tree

From M5

Jump to: navigation, search

Once you have obtained and unpacked the M5 sources, the root of your of your M5 source tree should have these directories:

  • build_opts - Default build options for each target (e.g., what set of build flags does the ALPHA_FS target imply)
  • configs - Sample script files that can be used to run M5 and as a starting place for your own configurations
  • ext - External packages used by M5 that are not commonly installed on systems
  • src - Source code for the simulator itself
    • arch - Architecture specific files as well as the ISA parsing code
      • alpha - Files specific to the Alpha architecture
        • freebsd - Files specific to the Alpha architecture and to the FreeBSD operating system
        • isa - ISA description files for the Alpha architecture
        • linux - Files specific to the Alpha architecture and to the Linux operating system
        • tru64 - Files specific to the Alpha architecture and to the Tru64 operating system
      • mips - Files specific to the MIPS architecture
        • isa - ISA description files for the MIPS architecture
        • linux - Files specific to the MIPS
      • sparc - Files specific to the SPARC architecture
        • isa - ISA description files for the SPARC architecture
        • linux - Files specific to the SPARC architecture and to the Linux operating system
        • solaris - Files specific to the SPARC architecture and to the Solaris operating system
    • base - General data structures and facilities that could be useful for another project
      • loader - Code for loading binaries and reading symbol tables
      • stats - Code for keeping statistics and writing the data to a file or a database
    • cpu - CPU models for the simulator
    • dev - I/O device models for the simulator
    • doxygen - Doxygen templates & output
    • kern - Operating system but architecture independent code (e.g. types of data structures).
      • linux - Linux specific architecture independent code
      • solaris -Solaris specific architecture independent code
      • tru64 - Tru64 specific architecture independent code
    • mem - Models for the memory system
    • python - Python code for configuration and higher level functions
    • sim - Simulator specific base functionality
    • alpha - Alpha console and palcode
    • mips - none yet
    • sparc - none yet
  • tests - Regression test framework
    • configs - Test configurations
    • test-progs - Binaries and inputs for test programs
    • quick, long - Actual regression tests, including reference ouputs, grouped by runtime
  • util - Random programs that are used in conjunction with M5 such as Python scripts to process data in an DB, submit jobs to a batch processing system, etc.

After you compile M5 (see Compiling M5), you will typically have one additional directory:

  • build - Default location for compiled M5 binaries and regression test output.
Personal tools