X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/abc6c695d534ee87fe91c84038ebbf6b9226575d..73f9260daacbea983884e90b7e366e9d1205d516:/examples/msg/io/file.c diff --git a/examples/msg/io/file.c b/examples/msg/io/file.c index 91c8ee80f8..6a6cc805a9 100644 --- a/examples/msg/io/file.c +++ b/examples/msg/io/file.c @@ -15,6 +15,11 @@ * - io/file.c Example with the disk resource */ +#define FILENAME1 "./doc/simgrid/examples/platforms/g5k.xml" +#define FILENAME2 "./doc/simgrid/examples/platforms/One_cluster_no_backbone.xml" +#define FILENAME3 "./doc/simgrid/examples/platforms/g5k_cabinets.xml" +#define FILENAME4 "./doc/simgrid/examples/platforms/nancy.xml" + #include #include #include "msg/msg.h" @@ -27,23 +32,34 @@ XBT_LOG_NEW_DEFAULT_CATEGORY(io_file, int host(int argc, char *argv[]) { - m_file_t file; - char* mount = bprintf("C:"); + msg_file_t file = NULL; + void *ptr = NULL; + char* mount = xbt_strdup("/home"); + size_t read,write; + + if(!strcmp(MSG_process_get_name(MSG_process_self()),"0")) + file = MSG_file_open(mount,FILENAME1,"rw"); + else if(!strcmp(MSG_process_get_name(MSG_process_self()),"1")) + file = MSG_file_open(mount,FILENAME2,"rw"); + else if(!strcmp(MSG_process_get_name(MSG_process_self()),"2")) + file = MSG_file_open(mount,FILENAME3,"rw"); + else if(!strcmp(MSG_process_get_name(MSG_process_self()),"3")) + file = MSG_file_open(mount,FILENAME4,"rw"); + else xbt_die("FILENAME NOT DEFINED %s",MSG_process_get_name(MSG_process_self())); - file = MSG_file_open(mount,"test.txt","rw"); - XBT_INFO("Host '%s' open %p",MSG_host_get_name(MSG_host_self()), file); + XBT_INFO("\tOpen file '%s'",file->name); - size_t read = MSG_file_read(mount,NULL,0,0,file); - XBT_INFO("Host '%s' read %zu", MSG_host_get_name(MSG_host_self()), read); + read = MSG_file_read(ptr,10000000,sizeof(char*),file); // Read for 10MB + XBT_INFO("\tHave read %zu on %s",read,file->name); - size_t write = MSG_file_write(mount,NULL,0,0,file); - XBT_INFO("Host '%s' write %zu", MSG_host_get_name(MSG_host_self()), write); + write = MSG_file_write(ptr,100000,sizeof(char*),file); // Write for 100KB + XBT_INFO("\tHave written %zu on %s",write,file->name); - int res = MSG_file_stat(mount,0,NULL); - XBT_INFO("Host '%s' stat %d",MSG_host_get_name(MSG_host_self()), res); + read = MSG_file_read(ptr,110000,sizeof(char*),file); // Read for 110KB + XBT_INFO("\tHave read %zu on %s",read,file->name); - res = MSG_file_close(mount,file); - XBT_INFO("Host '%s' close %d",MSG_host_get_name(MSG_host_self()), res); + XBT_INFO("\tClose file '%s'",file->name); + MSG_file_close(file); free(mount); return 0; @@ -51,24 +67,23 @@ int host(int argc, char *argv[]) int main(int argc, char **argv) { - int i,res; - MSG_global_init(&argc, argv); + int i,res; + MSG_init(&argc, argv); MSG_create_environment(argv[1]); xbt_dynar_t hosts = MSG_hosts_as_dynar(); MSG_function_register("host", host); - - XBT_INFO("Number of host '%lu'",xbt_dynar_length(hosts)); - for(i = 0 ; i