28 #ifndef INC_KERNEL_OC_PROCESSMAN_H_ 29 #define INC_KERNEL_OC_PROCESSMAN_H_ 32 #include <oc_errors.h> 36 #include <oc_stdlib.h> 43 #define _________________________________________MACROS_SECTION_____________________________________________________________________________ 47 #undef _________________________________________MACROS_SECTION_____________________________________________________________________________ 55 #define _________________________________________TYPES_SECTION_____________________________________________________________________________ 62 #undef _________________________________________TYPES_SECTION_____________________________________________________________________________ 70 #define _________________________________________FUNCTIONS_SECTION__________________________________________________________________________ 74 extern oC_ErrorCode_t oC_ProcessMan_TurnOn (
void );
75 extern oC_ErrorCode_t oC_ProcessMan_TurnOff (
void );
76 extern oC_ErrorCode_t oC_ProcessMan_AddProcess (
oC_Process_t Process );
77 extern oC_ErrorCode_t oC_ProcessMan_RemoveProcess (
oC_Process_t Process );
78 extern bool oC_ProcessMan_ContainsProcess (
oC_Process_t Process );
79 extern oC_ErrorCode_t oC_ProcessMan_GetList ( oC_List(
oC_Process_t) List );
81 extern oC_Process_t oC_ProcessMan_GetCurrentProcess (
void );
82 extern oC_Process_t oC_ProcessMan_GetProcess (
const char * Name );
83 extern oC_Process_t oC_ProcessMan_GetProcessById ( oC_UInt_t PID );
84 extern Allocator_t oC_ProcessMan_GetCurrentAllocator (
void );
86 extern void * oC_ProcessMan_RawAllocate ( oC_UInt_t Size ,
const char * Function, uint32_t LineNumber , AllocationFlags_t Flags );
87 extern bool oC_ProcessMan_RawFree (
void * Address , oC_UInt_t Size );
88 extern void * oC_ProcessMan_Allocate ( oC_UInt_t Size ,
const char * Function, uint32_t LineNumber , AllocationFlags_t Flags );
89 extern bool oC_ProcessMan_Free (
void * Address , AllocationFlags_t Flags );
90 extern void * oC_ProcessMan_SmartAllocate ( oC_UInt_t Size ,
const char * Function, uint32_t LineNumber , AllocationFlags_t Flags );
91 extern bool oC_ProcessMan_SmartFree (
void * Address , oC_UInt_t Size , AllocationFlags_t Flags );
92 extern void * oC_ProcessMan_KernelSmartAllocate ( oC_UInt_t Size ,
Allocator_t Allocator,
const char * Function, uint32_t LineNumber , AllocationFlags_t Flags );
93 extern bool oC_ProcessMan_KernelSmartFree (
void * Address , oC_UInt_t Size , AllocationFlags_t Flags );
94 extern void oC_ProcessMan_DeleteDeamon (
void * Parameter );
95 extern oC_ErrorCode_t oC_ProcessMan_RunDeleteDaemon (
void );
96 extern void oC_ProcessMan_ActivateDeleteDeamon (
void );
97 extern oC_UInt_t oC_ProcessMan_GetNextPid (
void );
98 extern void oC_ProcessMan_KillAllZombies (
void );
100 #undef _________________________________________FUNCTIONS_SECTION__________________________________________________________________________
identifier for allocations
The file with list library.
The file with memory manager interface.
The file with interface for process mechanism.
static const oC_Allocator_t Allocator