+
+/**
+ * \brief Registers a function to create a process.
+ *
+ * This function registers an user function to be called when a new process is created. The user function have to call the SIMIX_create_process function.
+ * \param function Create process function
+ *
+ */
+void SIMIX_function_register_process_create(void * function)
+{
+ xbt_assert0((simix_global->create_process_function == NULL), "Data already set");
+
+ /* Assign create process */
+ simix_global->create_process_function = function;
+
+ return ;
+}
+
+/**
+ * \brief Registers a function to kill a process.
+ *
+ * This function registers an user function to be called when a new process is killed. The user function have to call the SIMIX_kill_process function.
+ * \param function Kill process function
+ *
+ */
+void SIMIX_function_register_process_kill(void * function)
+{
+ xbt_assert0((simix_global->kill_process_function == NULL), "Data already set");
+
+ /* Assign kill process */
+ simix_global->kill_process_function = function;
+
+ return ;
+}