+void smx_ctx_sysv_resume_parallel(smx_process_t process)
+{
+ smx_context_t context = process->context;
+ SIMIX_context_set_current((smx_context_t) context);
+ int rv;
+ rv = swapcontext(&((smx_ctx_sysv_t)context)->old_uc, &((smx_ctx_sysv_t) context)->uc);
+ SIMIX_context_set_current((smx_context_t) maestro_context);
+
+ xbt_assert((rv == 0), "Context swapping failure");
+}
+
+void smx_ctx_sysv_runall_parallel(xbt_dynar_t processes)
+{
+#ifdef CONTEXT_THREADS
+ xbt_parmap_apply(parmap, (void_f_pvoid_t)smx_ctx_sysv_resume_parallel, processes);
+#endif
+}
+
+smx_context_t smx_ctx_sysv_self_parallel(void)
+{
+ /*smx_context_t self_context = (smx_context_t) xbt_os_thread_get_extra_data();
+ return self_context ? self_context : (smx_context_t) maestro_context;*/
+ return SIMIX_context_get_current();