annotate vmalloc.h @ 211:5b419522dc7f

time stamp checks added
author Nina Engelhardt <nengel@mailbox.tu-berlin.de>
date Thu, 08 Mar 2012 19:02:16 +0100
parents c11b9dcf6d24
children 6db9e4898978
rev   line source
Me@178 1 /*
Me@178 2 * Copyright 2009 OpenSourceCodeStewardshipFoundation.org
Me@178 3 * Licensed under GNU General Public License version 2
Me@178 4 *
Me@178 5 * Author: seanhalle@yahoo.com
Me@178 6 *
Me@178 7 * Created on November 14, 2009, 9:07 PM
Me@178 8 */
Me@178 9
Me@178 10 #ifndef _VMALLOC_H
Me@178 11 #define _VMALLOC_H
Me@178 12
Me@178 13 #include <malloc.h>
Me@178 14 #include <inttypes.h>
Me@178 15 #include "VMS_primitive_data_types.h"
Me@178 16
Me@178 17 typedef struct _MallocProlog MallocProlog;
Me@178 18
Me@178 19 struct _MallocProlog
Me@178 20 {
Me@178 21 MallocProlog *nextChunkInFreeList;
Me@178 22 MallocProlog *prevChunkInFreeList;
Me@178 23 MallocProlog *nextHigherInMem;
Me@178 24 MallocProlog *nextLowerInMem;
Me@178 25 };
Me@178 26 //MallocProlog
Me@178 27
Me@178 28 typedef struct
Me@178 29 {
Me@178 30 MallocProlog *firstChunkInFreeList;
Me@178 31 int32 numInList; //TODO not used
Me@178 32 }
Me@178 33 FreeListHead;
Me@178 34
Me@178 35 void *
Me@178 36 VMS__malloc( size_t sizeRequested );
Me@178 37
Me@178 38 void *
Me@178 39 VMS__malloc_aligned( size_t sizeRequested );
Me@178 40
Me@178 41 void
Me@178 42 VMS__free( void *ptrToFree );
Me@178 43
Me@178 44 /*Allocates memory from the external system -- higher overhead
Me@178 45 */
Me@178 46 void *
Me@178 47 VMS__malloc_in_ext( size_t sizeRequested );
Me@178 48
Me@178 49 /*Frees memory that was allocated in the external system -- higher overhead
Me@178 50 */
Me@178 51 void
Me@178 52 VMS__free_in_ext( void *ptrToFree );
Me@178 53
Me@178 54
Me@178 55 MallocProlog *
Me@178 56 VMS_ext__create_free_list();
Me@178 57
Me@178 58 void
Me@178 59 VMS_ext__free_free_list( MallocProlog *freeListHead );
Me@178 60
Me@65 61 #endif