extern int size_data_exe; //size of the data+bss segment of the executable
-void switch_data_segment(int);
+void smpi_switch_data_segment(int);
void smpi_get_executable_global_size(void);
void smpi_initialize_global_memory_segments(void);
void smpi_destroy_global_memory_segments(void);
const char* encode_datatype(MPI_Datatype datatype);
// TODO, make this static and expose it more cleanly
-extern void** mappings;
-extern int loaded_page;
+
+typedef struct s_smpi_privatisation_region {
+ void* address;
+ int file_descriptor;
+} *smpi_privatisation_region_t;
+
+extern smpi_privatisation_region_t smpi_privatisation_regions;
+
+extern int smpi_loaded_page;
int SIMIX_process_get_PID(smx_process_t self);