Linux U盘检测与速度测试源码
dd命令测试
以下两条Shell分别测试写入和读取usb.zip的文件从/media/$(whoami)/w/目录,就是U盘的挂载点(硬盘测试也可以这样):
time dd if=/dev/zero of=/media/$(whoami)/w/usb.zip bs=1024 count=4000000
time dd if=/media/$(whoami)/w/usb.zip bs=128k | dd of=/dev/null
Linux C 下面读取文件夹要用到结构体struct dirent,在头#include <dirent.h>中,如下:
#include <dirent.h>
struct dirent
{
long d_ino; /* inode number 索引节点号 */
off_t d_off; /* offset to this dirent 在目录文件中的偏移 */
unsigned short d_reclen; /* length of this d_name 文件名长 */
unsigned char d_type; /* the type of d_name 文件类型 */
char d_name [NAME_MAX+1]; /* file name (null-terminated) 文件名,最长255字符 */
}
其中d_type表明该文件的类型:文件(8)、目录(4)、链接文件(10)等。
U盘速度测试源码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <dirent.h>
int readFileList(char *basePath){
DIR *dir;
struct dirent *ptr;
char base[100];
char wstr[100],rstr[100];
if ((dir=opendir(basePath)) == NULL)
{
perror("Open dir error...");
exit(1);
}
while ((ptr=readdir(dir)) != NULL){
if(strcmp(ptr->d_name,".")==0 || strcmp(ptr->d_name,"..")==0)
continue;
else if(ptr->d_type == 4){
printf("d_name:%s\n",ptr->d_name);
memset(wstr,'\0',sizeof(wstr));
strcpy(wstr,"time dd if=/dev/zero of=/media/$(whoami)/");
strcat(wstr,ptr->d_name);
strcat(wstr,"/usb.zip bs=1024 count=51200");
printf("Write Test:\n");
system(wstr);
memset(rstr,'\0',sizeof(rstr));
strcpy(rstr,"time dd if=/media/$(whoami)/");
strcat(rstr,ptr->d_name);
strcat(rstr,"/usb.zip bs=128 | dd of=/dev/null");
printf("Read Test:\n");
system(rstr);
}
else {
memset(base,'\0',sizeof(base));
strcpy(base,basePath);
readFileList(base);
}
}
closedir(dir);
return 1;
}
int main(int argc, char *argv[]){
printf("the current dir is :%s\n",argv[1]);
DIR *dir;
readFileList(argv[1]);
return 0;
}
执行时需要带路径,如./a.out /media/$(whoami)/
其中/media/$(whoami)/为Ubuntu下U盘挂载的路径
Linux U盘检测与速度测试源码相关推荐
- FastCopy和ExtremeCopy同盘移动文件速度测试比较评测
FastCopy和ExtremeCopy同盘移动文件速度测试比较评测 一般情况下我只用 <ExtremeCopy 专业版 2.3.4 绿色破解版> 这款软件来复制文件.而不会去使用Fast ...
- 车牌检测模型训练(含源码和数据集)
车牌检测模型训练(含源码和数据集) 本教程利用NVIDIA TAO进行车牌检测模型的训练: 模型框架:SSD 数据集: CRPD, 连接:https://github.com/yxgong0/CRPD ...
- uni-app云开发的网盘助手微信小程序源码抓取网盘资源引流好助手
uni-app云开发的网盘助手微信小程序源码抓取网盘资源引流好助手 这是一款uni-app开发的一款网盘小助手小程序源码 该源码主要用于用户输入关键词然后全网抓取百度网盘资源内容 另外呢该小程序还可以 ...
- Linux中mknod命令实现原理以及源码分析
本篇文章以mknod创建字符设备文件进行讲解 字符设备驱动的Demo例子可参考该篇文章 Linux 编写简单驱动并测试 1. mknod 命令 mknod /dev/hello c 520 0 该命令 ...
- 09 编译2022年最新的Linux kernel、U-Boot和BusyBox rootfs源码,并用QEMU模拟器运行
编译2022年最新的Linux kernel.U-Boot和BusyBox rootfs源码,并用QEMU模拟器运行 作者 将狼才鲸 创建日期 2022-11-26 Gitee源码和工程地址:才鲸嵌入 ...
- 基于YOLOv5行人车辆跟踪检测识别计数系统源码+数据集,实现出/入分别计数
yolov5 deepsort 行人 车辆 跟踪 检测 计数 下载地址:基于YOLOv5行人车辆跟踪检测识别计数系统源码+数据集 实现了 出/入 分别计数. 默认是 南/北 方向检测,若要检测不同位置 ...
- 视频教程-YOLOv3目标检测:原理与源码解析-计算机视觉
YOLOv3目标检测:原理与源码解析 大学教授,美国归国博士.博士生导师:人工智能公司专家顾问:长期从事人工智能.物联网.大数据研究:已发表学术论文100多篇,授权发明专利10多项 白勇 ¥78.00 ...
- java计算机毕业设计海南自贸港知识学习与测试源码+mysql数据库+系统+lw文档+部署
java计算机毕业设计海南自贸港知识学习与测试源码+mysql数据库+系统+lw文档+部署 java计算机毕业设计海南自贸港知识学习与测试源码+mysql数据库+系统+lw文档+部署 本源码技术栈: ...
- 戴眼镜检测和识别3:Android实现戴眼镜检测和识别(含源码,可实时检测)
Android实现戴眼镜检测和识别(含源码,可实时检测) 目录 Android实现戴眼镜检测和识别(含源码,可实时检测) 1.戴眼镜检测和识别方法 2.戴眼镜人脸检测 3.戴眼镜识别模型训练 4.戴眼 ...
- springboot风电检测物联网平台JAVA源码 iot物联网源码
springboot风电检测物联网平台JAVA源码 iot物联网源码,仅供测试学习使用. 此项目为模拟风电场监控项目,功能包括电厂信息,风机配置,数据统计,故障记录,风速统计,功率统计,机舱实时信息等 ...
最新文章
- WaitForSingleObject和WaitForMultipleObjects用法
- Dockerfile中通过ENV指定动态参数在RUN时传递参数(部署后台jar包时指定端口为例)
- (转)OpenLayers3基础教程——OL3 介绍interaction
- 25. Magento 创建新闻模块(5)
- Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks论文翻译
- pythonunicode编码_python unicode 编码整理
- IT痴汉的工作现状31-跳槽小贴士
- 零基础想要做好人物角色模型,先了解人体的构造!快来康康
- 开水果店的水果怎么保鲜,新手开水果店水果保鲜方法
- 散列表及散列冲突解决方案
- CUDA编程 -- 2向量加法
- mydumper 介绍及使用
- mysql5.1.35_在Windows上安装MySql 5.1.35 Noinstall版
- (2023)CUDA11.7+Python3.9+Pytorch GPU安装
- 你知道自己究竟“想要”什么,又该如何“做到”吗?--《认知觉醒》读书笔记
- android和Mac共享文件,这可能是 Mac 共享文件最详细的教程了
- Codeforces Contest 1144 E Median String —— 水题
- 微信分享第三方连接(H5页面)自定义缩略图、标题、描述(显示分享框,而不是链接)(微信JS-SDK)
- 计算机公式above,word表格中求和公式是SUM(ABOVE).请问:括号中ABOVE是什么意思呢?
- SAP SD:VL10A上清不掉的尾巴