e9ed2dc70f5cdeb23e31171e8da30f1ef3c5755b
2 * COPYRIGHT: GPL - See COPYING in the top level directory
3 * PROJECT: ReactOS Virtual DOS Machine
4 * FILE: dos/dos32krnl/memory.h
5 * PURPOSE: DOS32 Memory Manager
6 * PROGRAMMERS: Aleksandar Andrejevic <theflash AT sdf DOT lonestar DOT org>
10 #define _DOS_MEMORY_H_
12 /* TYPEDEFS *******************************************************************/
14 #define SEGMENT_TO_MCB(seg) ((PDOS_MCB)((ULONG_PTR)BaseAddress + TO_LINEAR((seg), 0)))
16 enum DOS_ALLOC_STRATEGY
24 typedef struct _DOS_MCB
34 /* VARIABLES ******************************************************************/
36 extern BYTE DosAllocStrategy
;
37 extern BOOLEAN DosUmbLinked
;
39 /* FUNCTIONS ******************************************************************/
41 WORD
DosAllocateMemory(WORD Size
, WORD
*MaxAvailable
);
42 BOOLEAN
DosResizeMemory(WORD BlockData
, WORD NewSize
, WORD
*MaxAvailable
);
43 BOOLEAN
DosFreeMemory(WORD BlockData
);
44 BOOLEAN
DosLinkUmb(VOID
);
45 BOOLEAN
DosUnlinkUmb(VOID
);
46 VOID
DosChangeMemoryOwner(WORD Segment
, WORD NewOwner
);
48 #endif // _DOS_MEMORY_H_