-XBT_PUBLIC(double) simcall_file_read(void* ptr, size_t size, size_t nmemb, smx_file_t stream);
-XBT_PUBLIC(size_t) simcall_file_write(const void* ptr, size_t size, size_t nmemb, smx_file_t stream);
-XBT_PUBLIC(smx_file_t) simcall_file_open(const char* storage, const char* path, const char* mode);
-XBT_PUBLIC(int) simcall_file_close(smx_file_t fp);
-XBT_PUBLIC(int) simcall_file_stat(smx_file_t fd, s_file_stat_t *buf);
-XBT_PUBLIC(int) simcall_file_unlink(smx_file_t fd);
-XBT_PUBLIC(xbt_dict_t) simcall_file_ls(const char* mount, const char* path);
-
+/***************************** File **********************************/
+XBT_PUBLIC(void *) simcall_file_get_data(smx_file_t fd);
+XBT_PUBLIC(void) simcall_file_set_data(smx_file_t fd, void *data);
+XBT_PUBLIC(sg_size_t) simcall_file_read(smx_file_t fd, sg_size_t size, sg_host_t host);
+XBT_PUBLIC(sg_size_t) simcall_file_write(smx_file_t fd, sg_size_t size, sg_host_t host);
+XBT_PUBLIC(smx_file_t) simcall_file_open(const char* fullpath, sg_host_t host);
+XBT_PUBLIC(int) simcall_file_close(smx_file_t fd, sg_host_t host);
+XBT_PUBLIC(int) simcall_file_unlink(smx_file_t fd, sg_host_t host);
+XBT_PUBLIC(sg_size_t) simcall_file_get_size(smx_file_t fd);
+XBT_PUBLIC(xbt_dynar_t) simcall_file_get_info(smx_file_t fd);
+XBT_PUBLIC(sg_size_t) simcall_file_tell(smx_file_t fd);
+XBT_PUBLIC(int) simcall_file_seek(smx_file_t fd, sg_offset_t offset, int origin);
+XBT_PUBLIC(int) simcall_file_move(smx_file_t fd, const char* fullpath);
+/***************************** Storage **********************************/
+XBT_PUBLIC(sg_size_t) simcall_storage_get_free_size (smx_storage_t storage);
+XBT_PUBLIC(sg_size_t) simcall_storage_get_used_size (smx_storage_t storage);
+XBT_PUBLIC(xbt_dict_t) simcall_storage_get_properties(smx_storage_t storage);
+XBT_PUBLIC(void*) SIMIX_storage_get_data(smx_storage_t storage);
+XBT_PUBLIC(void) SIMIX_storage_set_data(smx_storage_t storage, void *data);
+XBT_PUBLIC(xbt_dict_t) SIMIX_storage_get_content(smx_storage_t storage);
+XBT_PUBLIC(xbt_dict_t) simcall_storage_get_content(smx_storage_t storage);
+XBT_PUBLIC(const char*) SIMIX_storage_get_name(smx_storage_t storage);
+XBT_PUBLIC(sg_size_t) SIMIX_storage_get_size(smx_storage_t storage);
+XBT_PUBLIC(const char*) SIMIX_storage_get_host(smx_storage_t storage);