comparison src/nucleus/dm_extr.h @ 0:4e78acac3d88

src/{condat,cs,gpf,nucleus}: import from Selenite
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 16 Oct 2020 06:23:26 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:4e78acac3d88
1 /*************************************************************************/
2 /* */
3 /* Copyright Mentor Graphics Corporation 2002 */
4 /* All Rights Reserved. */
5 /* */
6 /* THIS WORK CONTAINS TRADE SECRET AND PROPRIETARY INFORMATION WHICH IS */
7 /* THE PROPERTY OF MENTOR GRAPHICS CORPORATION OR ITS LICENSORS AND IS */
8 /* SUBJECT TO LICENSE TERMS. */
9 /* */
10 /*************************************************************************/
11
12 /*************************************************************************/
13 /* */
14 /* FILE NAME VERSION */
15 /* */
16 /* dm_extr.h Nucleus PLUS 1.14 */
17 /* */
18 /* COMPONENT */
19 /* */
20 /* DM - Dynamic Memory Management */
21 /* */
22 /* DESCRIPTION */
23 /* */
24 /* This file contains function prototypes of all functions */
25 /* accessible to other components. */
26 /* */
27 /* DATA STRUCTURES */
28 /* */
29 /* None */
30 /* */
31 /* FUNCTIONS */
32 /* */
33 /* None */
34 /* */
35 /* DEPENDENCIES */
36 /* */
37 /* dm_defs.h Dynamic Management constants */
38 /* */
39 /* HISTORY */
40 /* */
41 /* DATE REMARKS */
42 /* */
43 /* 03-01-1993 Created initial version 1.0 */
44 /* 04-19-1993 Verified version 1.0 */
45 /* 03-01-1994 Moved include files outside of */
46 /* the file #ifndef to allow the */
47 /* use of actual data structures, */
48 /* modified function prototypes, */
49 /* resulting in version 1.1 */
50 /* */
51 /* 03-18-1994 Verified version 1.1 */
52 /* 04-17-1996 updated to version 1.2 */
53 /* 03-24-1998 Released version 1.3. */
54 /* 03-26-1999 Released 1.11m (new release */
55 /* numbering scheme) */
56 /* 05-01-2000 Corrected a prefix problem for */
57 /* DMC_Established_Memory_Pools, */
58 /* DMC_Memory_Pool_Information, */
59 /* DMC_Memory_Pool_Pointers by */
60 /* changing them to DMF_ */
61 /* 04-17-2002 Released version 1.13m */
62 /* 11-07-2002 Released version 1.14 */
63 /*************************************************************************/
64
65 #include "dm_defs.h" /* Include DM constants */
66
67
68 /* Check to see if the file has been included already. */
69
70 #ifndef DM_EXTR
71 #define DM_EXTR
72
73
74 /* Initialization functions. */
75
76 VOID DMI_Initialize(VOID);
77
78
79 /* Error checking functions. */
80
81 STATUS DMCE_Create_Memory_Pool(NU_MEMORY_POOL *pool_ptr, CHAR *name,
82 VOID *start_address, UNSIGNED pool_size,
83 UNSIGNED min_allocation, OPTION suspend_type);
84 STATUS DMCE_Delete_Memory_Pool(NU_MEMORY_POOL *pool_ptr);
85 STATUS DMCE_Allocate_Memory(NU_MEMORY_POOL *pool_ptr, VOID **return_pointer,
86 UNSIGNED size, UNSIGNED suspend);
87 STATUS DMCE_Deallocate_Memory(VOID *memory);
88
89
90 /* Core processing functions. */
91
92 STATUS DMC_Create_Memory_Pool(NU_MEMORY_POOL *pool_ptr, CHAR *name,
93 VOID *start_address, UNSIGNED pool_size,
94 UNSIGNED min_allocation, OPTION suspend_type);
95 STATUS DMC_Delete_Memory_Pool(NU_MEMORY_POOL *pool_ptr);
96 STATUS DMC_Allocate_Memory(NU_MEMORY_POOL *pool_ptr,
97 VOID **return_pointer, UNSIGNED size, UNSIGNED suspend);
98 STATUS DMC_Deallocate_Memory(VOID *memory);
99
100
101 /* Supplemental service routines */
102 STATUS DMS_Allocate_Aligned_Memory(NU_MEMORY_POOL *pool_ptr,
103 VOID **return_pointer, UNSIGNED size,
104 UNSIGNED alignment, UNSIGNED suspend);
105
106
107 /* Information retrieval functions. */
108
109 UNSIGNED DMF_Established_Memory_Pools(VOID);
110 STATUS DMF_Memory_Pool_Information(NU_MEMORY_POOL *pool_ptr,
111 CHAR *name, VOID **start_address, UNSIGNED *pool_size,
112 UNSIGNED *min_allocation, UNSIGNED *available,
113 OPTION *suspend_type, UNSIGNED *tasks_waiting,
114 NU_TASK **first_task);
115 UNSIGNED DMF_Memory_Pool_Pointers(NU_MEMORY_POOL **pointer_list,
116 UNSIGNED maximum_pointers);
117 #endif
118
119
120
121
122