/* * This file is part of the Jikes RVM project (http://jikesrvm.org). * * This file is licensed to You under the Eclipse Public License (EPL); * You may not use this file except in compliance with the License. You * may obtain a copy of the License at * * http://www.opensource.org/licenses/eclipse-1.0.php * * See the COPYRIGHT.txt file distributed with this work for information * regarding copyright ownership. */ package org.mmtk.utility.heap.layout; /** * VM-Independent parameters of the Virtual Memory Layout. * <p> * MUST NOT have a dependency on the VM class(es), because the constants * defined in this class are intended to be accessible to the VM, and we * mustn't create a circular dependence. */ public class HeapParameters { /** * log_2 of the maximum number of spaces a Plan can support. */ public static final int LOG_MAX_SPACES = 4; /** * Maximum number of spaces a Plan can support. */ public static final int MAX_SPACES = 1 << LOG_MAX_SPACES; /** * In a 64-bit addressing model, each space is the same size, given * by this constant. At the moment, we require that the number of * pages in a space fit into a 32-bit signed int, so the maximum * size of this constant is 41 (assuming 4k pages). */ public static final int LOG_SPACE_SIZE_64 = 41; }