设为首页 加入收藏

TOP

disksim使用总结(一)
2013-05-03 18:18:33 来源: 作者: 【 】 浏览:89
Tags:disksim 使用 总结

    在ubuntu10.10下安装了disksim-3.0,runvalid也运行通了,然后在spc里面下载了一个Financial1的Trace文件,连接为:traces.cs.umass.edu/index.php/Storage/Storage也按照disksim的使用手册做了如下事情:

    1.在Disksim-3.0/Src/Disksim_global.h中增加了一行

    [cpp]

    #define FIN1 10

    2.在Disksim-3.0/Src/Disksim_iotrace.c中的iotrace_set_format函数中相应部位增加如下代码:

    [cpp]

    else if(strcmp(formatname,"fin1")==0)

    {

    disksim->traceformat = FIN1;

    }

    3.在Disksim-3.0/Src/Disksim_iotrace.c中增加了一个iotrace_financial1_get_ioreq_event函数如下:

    [cpp]

    static ioreq_event * iotrace_financial1_get_ioreq_event (FILE *tracefile, ioreq_event *new)

    {

    char line[201];

    char op;

    if (fgets(line, 200, tracefile) == NULL) {

    addtoextraq((event *) new);

    return(NULL);

    }

    if (sscanf(line, "%d,%d,%d,%c,%lf\n", &new->devno, &new->blkno, &new->bcount, &op, &new->time) != 5) {

    fprintf(stderr, "Wrong number of arguments for I/O trace event type\n");

    fprintf(stderr, "line: %s", line);

    ddbg_assert(0);

    }

    if(op=='w')

    new->flags=WRITE;

    else

    new->flags=READ;

    new->buf = 0;

    new->opid = 0;

    new->busno = 0;

    new->cause = 0;

    return(new);

    }

    4.在Disksim-3.0/Src/Disksim_iotrace.c的iotrace_get_ioreq_event函数的switch中增加如下代码:

    [cpp]

    case FIN1:

    temp = iotrace_financial1_get_ioreq_event(tracefile, temp);

    break;

    然后运行如下命令时:/src/disksim ascii.parv /myout/fin1.outv fin1 /home/he/下载/Financial1.spc 0

    出现了如下错误:

 
 

    很明显是访问地址越界(我也知道是ascii.parv这个地方出现了问题),但是需要怎么修改呢?对着disksim_users邮件列表看了一封一封的邮件(自己是新手,实在不知道解决问题的思路,只好出此下策),好不容易看到了3、4封跟我差不多的问题的邮件,但是都没有大牛回复,很是伤心,最后黄博让我跟那些提问的人发邮件问他们是怎么解决的,截止到目前为止,两个回复如下:
 
 

 
    感谢大牛们的回答,两个答案都是为了使trace文件中的请求访问地址在你的逻辑磁盘地址之内,不过我觉得第一种修改trace文件的方法就不能保证你的测试用例与别人一致,结果就不让人信服,所以我还是选择第二种方法修改磁盘配置信息的parv文件。
    1.根据在邮件列表中所浏览到的信息,修改parv文件并不是自己从0开始写一个parv文件,而是可以复制一个parv文件(我就是复制的ascii.parv)这个文件

   

首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C++字符串高效查找替换 下一篇双向链表的实现

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: