Navigation

  • index
  • next |
  • previous |
  • Memory Pool System 1.118.0 documentation »
  • Guide

GuideΒΆ

  • 1. Overview of the Memory Pool System
    • 1.1. Supported target platforms
    • 1.2. Technical introduction
    • 1.3. What next?
  • 2. Building the Memory Pool System
    • 2.1. Introduction
    • 2.2. Getting hold of the MPS Kit
    • 2.3. Compiling the MPS for your project
      • 2.3.1. Compiling for production
      • 2.3.2. Compiling for debugging
      • 2.3.3. Optimizing for your object format
      • 2.3.4. Compiling without the C library
    • 2.4. Building the MPS manual
    • 2.5. Building the MPS for development
      • 2.5.1. Prerequisites
      • 2.5.2. Platforms
      • 2.5.3. Running make
    • 2.6. Installing the Memory Pool System
      • 2.6.1. mpseventsql
  • 3. Garbage collecting a language with the Memory Pool System
    • 3.1. The Scheme interpreter
    • 3.2. Choosing an arena class
    • 3.3. Choosing a pool class
    • 3.4. Describing your objects
      • 3.4.1. Alignment
      • 3.4.2. The scan method
      • 3.4.3. The skip method
      • 3.4.4. The forward method
      • 3.4.5. The is-forwarded method
      • 3.4.6. The padding method
    • 3.5. Creating the pool
    • 3.6. Roots
    • 3.7. Threads
    • 3.8. Allocation
    • 3.9. Maintaining consistency
    • 3.10. Tidying up
    • 3.11. What next?
  • 4. The stretchy vector problem
  • 5. Debugging with the Memory Pool System
    • 5.1. General debugging advice
    • 5.2. Address space layout randomization
    • 5.3. Example: underscanning
    • 5.4. Example: allocating with wrong size
    • 5.5. What next?
  • 6. Tuning the Memory Pool System for performance
  • 7. Advanced topics
    • 7.1. Finalization
    • 7.2. Location dependency
    • 7.3. Weak hash tables
    • 7.4. Global symbol table
    • 7.5. Segregation of objects
  • 8. Implementing malloc and free

Logo

Previous topic

Memory Pool System

Next topic

1. Overview of the Memory Pool System

Downloads

All MPS Kit releases

Issues

All open issues

Contact us

mps-questions@ravenbrook.com

Navigation

  • index
  • next |
  • previous |
  • Memory Pool System 1.118.0 documentation »
  • Guide
© Copyright 2023, Ravenbrook Limited. Created using Sphinx 4.5.0.