Difference between revisions of "Documentation"

From gem5
Jump to: navigation, search
(Running M5)
(Infrastructure)
Line 26: Line 26:
 
# [[Utility Code]]
 
# [[Utility Code]]
 
# [[Pseudo Instructions]]
 
# [[Pseudo Instructions]]
 +
# [[Serialization]]
  
 
== Memory System ==
 
== Memory System ==

Revision as of 14:47, 19 March 2011

Getting Started

  1. Introduction - A quick introduction to gem5.
  2. Source Code - Information about the source code itself.
  3. External Dependencies - Things you'll need that aren't part of gem5 itself.
  4. Build System - How to run or modify gem5's build system.

Running M5

  1. Running M5
  2. Getting a Cross Compiler - Need to build a binary and don't have a machine that runs that ISA? This page can help.
  3. Regression Tests
  4. SimObjects
  5. Configuration Scripts
  6. Simulation Scripts Explained
  7. Summary gem5 Capabilities
  8. m5ops -- Instructions to control the simulation

Development

  1. Debugging
  2. Coding Style
  3. Tools and Contributing
  4. Source Code Documentation

Infrastructure

  1. Events
  2. Statistics
  3. Utility Code
  4. Pseudo Instructions
  5. Serialization

Memory System

  1. General Memory System
  2. Classic Memory System
  3. Ruby

Full System

  1. Devices
    1. IDE Devices
    2. NIC Devices
    3. Timers
    4. UARTs and serial terminals
  2. Disks and Disk Images
  3. Interrupts

Syscall Emulation

  1. SE Mode

CPUs and Execution

  1. Execution Basics
  2. Architectural State
  3. Address Translation
  4. CPU Models
    1. Simple CPU Model
    2. Out-of-Order CPU Model
    3. In Order CPU Model
    4. Adding a New CPU Model

ISA Implementations

  1. Multiple ISA Support
  2. ISA Parser
  3. Alpha Implementation
  4. ARM Implementation
  5. MIPS Implementation
  6. Power Implementation
  7. SPARC Implementation
  8. X86 Implementation
  9. Defining ISAs