⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 config.h

📁 newos is new operation system
💻 H
字号:
///-*-C++-*-////////////////////////////////////////////////////////////////////// Hoard: A Fast, Scalable, and Memory-Efficient Allocator//        for Shared-Memory Multiprocessors// Contact author: Emery Berger, http://www.cs.utexas.edu/users/emery//// Copyright (c) 1998-2000, The University of Texas at Austin.//// This library is free software; you can redistribute it and/or modify// it under the terms of the GNU Library General Public License as// published by the Free Software Foundation, http://www.fsf.org.//// This library is distributed in the hope that it will be useful, but// WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU// Library General Public License for more details.////////////////////////////////////////////////////////////////////////////////#ifndef _CONFIG_H_#define _CONFIG_H_#ifndef _REENTRANT#define _REENTRANT		// If defined, generate a multithreaded-capable version.#endif#ifndef USER_LOCKS#define USER_LOCKS 1		// Use our own user-level locks if they're available for the current architecture.#endif#define HEAP_LOG 0		// If non-zero, keep a log of heap accesses.///// You should not change anything below here. /////// The base of the exponential used for size classes.// An object is in size class i if//        base^(b+i-1) * ALIGNMENT < size <= base^(b+i) * ALIGNMENT,// where b = log_base(ALIGNMENT).// Note that this puts an upper-limit on internal fragmentation://   if SIZE_CLASS_BASE is 1.2, then we will never see more than//   20% internal fragmentation (for aligned requests).#define SIZE_CLASS_BASE 1.2#define MAX_INTERNAL_FRAGMENTATION 2// The number of groups of superblocks we maintain based on what// fraction of the superblock is empty. NB: This number must be at// least 2, and is 1 greater than the EMPTY_FRACTION in heap.h.enum { SUPERBLOCK_FULLNESS_GROUP = 9 };// DO NOT CHANGE THESE.  They require running of maketable to replace// the values in heap.cpp for the _numBlocks array.#define HEAP_DEBUG 0		// If non-zero, keeps extra info for sanity checking.#define HEAP_STATS 0		// If non-zero, maintain blowup statistics.#define HEAP_FRAG_STATS 0	// If non-zero, maintain fragmentation statistics.// CACHE_LINE = The number of bytes in a cache line.#if defined(i386) || defined(WIN32)#define CACHE_LINE 32#endif#ifdef sparc#define CACHE_LINE 64#endif#ifdef __sgi#define CACHE_LINE 128#endif#ifndef CACHE_LINE// We don't know what the architecture is,// so go for the gusto.#define CACHE_LINE 64#endif#ifdef __GNUG__// Use the max operator, an extension to C++ found in GNU C++.#define MAX(a,b) ((a) >? (b))#else#define MAX(a,b) (((a) > (b)) ? (a) : (b))#endif#endif // _CONFIG_H_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -