zoukankan      html  css  js  c++  java
  • vxworks下硬盘测速程序 分类: vxWorks 2014-02-27 10:15 537人阅读 评论(0) 收藏



    void speed(int buflen,int mod)
    {
    /*int mod = 0;*/
    int len=50;
    FILE *fp;
    unsigned int i=0,j=0,tmp,tmp2;
    float t=0.0;
    char *str = "/ata00/ch2.dat";
    char* data = (char*)malloc(buflen);
    if(mod ==0)
    {
    str ="/bd0/ch2.dat";
    len = 50;
    }
    else if(mod==1)
    str ="/ata00/ch2.dat";
    else
    str="/ata00:2/mx.dat";
     
    for(i=0;i<buflen;i++)
    {
    data[i] = i&0xff;
    }
     
    fp=fopen(str,"w+");
     if(fp==NULL)
       {
        logMsg("fopen error ",0,0,0,0,0,0);
        return;
       }
        /*printf("test '%s' speed %dM data writted! ",str,len);*/
    if(buflen>1024)
       logMsg("test '%s' speed %dM data writted(buflen:%dK)! ",str,len,buflen/1024,0,0,0);
    else
    logMsg("test '%s' speed %dM data writted(buflen:%d)! ",str,len,buflen,0,0,0);
        tmp = tickGet();
        i = 1024*len*1024/buflen;


        for(j=0;j<i;j++)
        {
             fwrite(data,buflen,1,fp);
        }
        fclose(fp);
        tmp = tickGet()-tmp ;
        t = tmp*1.0/60;
       /* printf("Write speed:%f MB/s  (%dM/%ds)",len*1.0/tmp,len,tmp);*/
        logMsg("Write speed:%3.2f MB/s  (%dM/%2.2fs) ",len*1.0/t,len,t,0,0,0);
       


       taskDelay(60*1);
        fp=fopen(str,"r+");
     
        tmp = tickGet();
        i = 1024*len*1024/buflen;


           for(j=0;j<i;j++)
           {
               fread(data,buflen,1,fp);
           }
        fclose(fp);
        tmp = tickGet()-tmp ;
        t = tmp*1.0/60;
       /* printf(" Read speed:%f MB/s  (%dM/%ds) ",len*1.0/tmp,len,tmp);*/
        logMsg(" Read speed:%3.2f MB/s  (%dM/%2.2fs) ",len*1.0/t,len,t,0,0,0);    





    void speed3()
    {//SATA
        int i=0;
        
        for(i=0;i<10;i++)
        speed(2<<i,4);
        
        for(i=0;i<10;i++)
       speed((2<<i)*1024,4);


    }
    void speed4()
    {//usb
        int i=0;
        
        for(i=0;i<10;i++)
    speed(2<<i,0);
        
        for(i=0;i<10;i++)
    speed((2<<i)*1024,0);
    }

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    使用Docker Swarm搭建分布式爬虫集群
    如果你不知道做什么,那就学一门杂学吧
    正则表达式re.sub替换不完整的问题现象及其根本原因
    Visual Studio 2019 正式版今日发布 key
    net core 记录自定义端口多个方式
    HTTP Error 500.0
    来自后端的逆袭 blazor简介 全栈的福音
    创建一个RAS 非对称 公私密钥示例
    树莓派安装window ioT
    WPF USB设备采集开源工具介绍
  • 原文地址:https://www.cnblogs.com/mao0504/p/4706663.html
Copyright © 2011-2022 走看看