首页 > 其他分享 >存储常用的工具指令

存储常用的工具指令

时间:2022-08-28 23:11:15浏览次数:58  
标签:存储 rw 常用 dev 指令 4k 测试 devmem 0x97000000

1.      存储常用的工具指令

1.1.     dd

  进行数据的拷贝,主要的使用是

  dd if=/dev/zero of=/dev/sda bs=512KB count=10

1.2.     iostate

  查看当前io的的速率,一般查看速率前面的两秒是不准确的,每间隔3秒或者5秒可以更好的查看io的平均速率

  例如:iostate -t 3 -m

  以3秒的间隔,以m为单位进行io速率的显示

1.3.     iotop

  有时候系统中没有iostate指令,可以使用iotop指令代替查看当前的io速率

1.4.     devmem

  devmem的方式是提供给驱动开发人员,在应用层能够侦测内存地址中的数据变化,以此来检测驱动中对内存或者相关配置的正确性验证。

  Usage: devmem ADDRESS [WIDTH [VALUE]]

  读取:在地址0x97000000读取32bit值(WIDTH默认等于32, 可选值为[8, 16, 32, 64])

  /dev # devmem 0x97000000

  0x11111111

  读取:在地址0x97000000读取16bit值

  /dev # devmem 0x97000000 16

  0x1111

  写入:在地址0x97000000写入32bit值0x7777ABCD

  /dev # devmem 0x97000000 32 0x7777ABCD

  /dev # devmem 0x97000000

  0x7777ABCD

  注意:如果/dev下没有mem这个node,会出现错误:

  /dev # devmem 0x97000000

  devmem: can’t open ‘/dev/mem’: No such file or directory

  这时可以在Host系统中手动创建一个(例如在NFS root filesystem模式):

  host@host-laptop:~/embedded/tftpboot/nfsroot/dev$ sudo mknod mem -m666 c 1 1

  注意这里的权限是666,允许任何人任意读写,可以很好的配合程序debug。

  /dev # devmem 0x97000000

  0x7777ABCD

1.5.     lslbk

  列出所有可用块设备的信息,而且还能显示他们之间的依赖关系,但是它不会列出RAM盘的信息。

  使用过程中,直接输入lsblk即可

1.6.     lsscsi

  查看scsi设备信息,使用方法有很多种

1.7.     lspci

  查看当前的pci设别信息

1.8.     lscpu

  查看cpu的信息,可以看当前的cpu的厂商是什么

1.9.     lsusb

  使用不多,可以查看当前的usb设备信息

1.10. fio

  进行设别IO压力测试的很好的工具,目前测试部经常使用给的工具

  详细的解释看博客:https://www.cnblogs.com/raykuan/p/6914748.html

常用的参数:

  filename=/dev/emcpowerb 支持文件系统或者裸设备,-filename=/dev/sda2或-filename=/dev/sdb
  direct=1                 测试过程绕过机器自带的buffer,使测试结果更真实
  rw=randwread             测试随机读的I/O
  rw=randwrite             测试随机写的I/O
  rw=randrw                测试随机混合写和读的I/O
  rw=read                  测试顺序读的I/O
  rw=write                 测试顺序写的I/O
  rw=rw                    测试顺序混合写和读的I/O
  bs=4k                    单次io的块文件大小为4k
  bsrange=512-2048         同上,提定数据块的大小范围
  size=5g                  本次的测试文件大小为5g,以每次4k的io进行测试
  numjobs=30               本次的测试线程为30
  runtime=1000             测试时间为1000秒,如果不写则一直将5g文件分4k每次写完为止
  ioengine=psync           io引擎使用pync方式,如果要使用libaio引擎,需要yum install libaio-devel包
  rwmixwrite=30            在混合读写的模式下,写占30%
  group_reporting          关于显示结果的,汇总每个进程的信息
  此外
  lockmem=1g               只使用1g内存进行测试
  zero_buffers             用0初始化系统buffer
  nrfiles=8                每个进程生成文件的数量

常用的例子:

  fio -filename=/dev/emcpowerb -direct=1 -iodepth 1 -thread -rw=randread -ioengine=psync -bs=4k -size=1000G -numjobs=50 -runtime=180 -group_reporting -    name=rand_100read_4k

  100%随机,100%写, 4K

  fio -filename=/dev/emcpowerb -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=psync -bs=4k -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=rand_100write_4k

  100%顺序,100%读 ,4K

  fio -filename=/dev/emcpowerb -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=4k -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=sqe_100read_4k

100%顺序,100%写 ,4K

  fio -filename=/dev/emcpowerb -direct=1 -iodepth 1 -thread -rw=write -ioengine=psync -bs=4k -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=sqe_100write_4k

  100%随机,70%读,30%写 4K

  fio -filename=/dev/emcpowerb -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=4k -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=randrw_70read_4k

标签:存储,rw,常用,dev,指令,4k,测试,devmem,0x97000000
From: https://www.cnblogs.com/free-1122/p/16634390.html

相关文章

  • 【DB】存储过程
    1。什么是存储过程?存储过程(StoredProcedure)是在大型数据库系统中,一组为了完成特定功能的SQL语句集。他存储在数据库中,一次编译后永久有效,用户通过指定存储过程的名字并给......
  • 存储器详解
    存储器有五种类型,分别是寄存器、高速缓存、内存、磁盘、磁带。他们访问读取的时间和容量如下图:1.寄存器L1缓存用的是与cpu一样的材质制成,读取和cpu一样快,容量<1KB2.高......
  • C#中Linq常用用法
    1、linq中交集、并集、差集的用法简单的交集、并集、差集用法如下:List<string>ListA=newList<string>();List<string>ListB=newList<string>();List<string>......
  • 常用样式
       <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>css常用样式</title><styletype="text/css">div{color:red;......
  • 五--[BX]和loop指令
    用[0]表示一个内存单元时,0表示偏移地址,段地址默认在ds中,单元的长度(类型)由具体指令中的其他对象指出我们定义的描述性符号:“()”,表示一个寄存器或内存单元中的内容,比如(ax......
  • python常用的进制、字符串、字节之间的转换
    整数之间的进制转换:10进制转16进制:hex(16) ==> 0x1016进制转10进制:int('0x10',16) ==> 16类似的还有oct(),bin()  字符串转整数:10进制字符串:int('10......
  • Day2 常用Dos命令
    常用Dos命令 #盘符切换 #查看当前目录下所有文件dir #切换目录cdchangedirectory cd.. #清理屏幕cls(clearscreen) #退出终端exit #查看电脑ipipconfig ......
  • grep使用常用操作十五条
    grep的全部使用语法参照grep--help构造数据如下:test001.txt与test002.txt 日常工作常用的语法如下: 一、在单个文件中查询指定字符串grepabctest01/test01.txt......
  • C语言常用编译选项
    目录编译选项-Wall-Wextra-Werror-Werror=implicit-function-declaration-Werror=unused-variable参考编译选项当-Wxx时,指的是,针对某个类型产生告警,特殊的-Wall是对所有......
  • 11 - Pycharm常用快捷键大全
    Mac系统原则:工欲善其事必先利其器 1、快捷添加代码:  command+J      1、pycharm输入主函数方法if__name__=='__main__'快捷键  方法步骤: ......