Choco OS  V.0.16.9.0
Join to the chocolate world
oc_processman.h
Go to the documentation of this file.
1 
28 #ifndef INC_KERNEL_OC_PROCESSMAN_H_
29 #define INC_KERNEL_OC_PROCESSMAN_H_
30 
31 #include <stdbool.h>
32 #include <oc_errors.h>
33 #include <oc_list.h>
34 #include <oc_process.h>
35 #include <oc_memman.h>
36 #include <oc_stdlib.h>
37 
43 #define _________________________________________MACROS_SECTION_____________________________________________________________________________
44 
45 
46 
47 #undef _________________________________________MACROS_SECTION_____________________________________________________________________________
48 
49 
55 #define _________________________________________TYPES_SECTION_____________________________________________________________________________
56 
59 
60 
61 
62 #undef _________________________________________TYPES_SECTION_____________________________________________________________________________
63 
70 #define _________________________________________FUNCTIONS_SECTION__________________________________________________________________________
71 
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 );
80 extern oC_ErrorCode_t oC_ProcessMan_GetUserProcesses ( oC_User_t User , 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 );
85 extern oC_Process_t oC_ProcessMan_GetProcessOfThread ( oC_Thread_t Thread );
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 );
99 
100 #undef _________________________________________FUNCTIONS_SECTION__________________________________________________________________________
101 
103 #endif /* INC_KERNEL_OC_PROCESSMAN_H_ */
identifier for allocations
Definition: oc_stdlib.h:159
Definition: oc_user.c:43
The file with list library.
The file with memory manager interface.
The file with interface for process mechanism.
static const oC_Allocator_t Allocator
Definition: oc_eth.c:152