|
|
1.1 root 1: /* malloc.h - Quipu specific mallocing */
2:
3: /*
4: * $Header: /f/osi/h/quipu/RCS/malloc.h,v 7.0 89/11/23 21:57:06 mrose Rel $
5: *
6: *
7: * $Log: malloc.h,v $
8: * Revision 7.0 89/11/23 21:57:06 mrose
9: * Release 6.0
10: *
11: */
12:
13: /*
14: * NOTICE
15: *
16: * Acquisition, use, and distribution of this module and related
17: * materials are subject to the restrictions of a license agreement.
18: * Consult the Preface in the User's Manual for the full terms of
19: * this agreement.
20: *
21: */
22:
23:
24: #ifndef _QUIPUMALLOC_
25: #define _QUIPUMALLOC_
26:
27: extern unsigned mem_heap;
28: extern unsigned attr_index;
29:
30: /*
31: #define MALLOCSTACK
32: */
33:
34: /* HEAP Selection */
35: /* Two main heaps - general and database.
36: * Database is split into main critical part,
37: * and several parts for attribute values.
38: */
39: #define GENERAL_HEAP mem_heap = 0; /* general mallocing */
40: #define DATABASE_HEAP mem_heap = 1; /* critical database structures */
41: #define ATTRIBUTE_HEAP {if (mem_heap == 1) mem_heap = 2 + attr_index;}
42: /* non critical database structures */
43: #define RESTORE_HEAP {if (mem_heap >= 2) mem_heap = 1;}
44:
45: #define SET_HEAP(x) {if (mem_heap == 1) mem_heap = 2 + set_heap (x);}
46: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.