首先 、用top命令查看
top - 16:15:05 up 6 days, 6:25, 2 users, load average: 1.45, 1.77, 2.14
Tasks: 147 total, 1 running, 146 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.2% us, 0.2% sy, 0.0% ni, 86.9% id, 12.6% wa, 0.0% hi, 0.0% si
Mem: 4037872k total, 4003648k used, 34224k free, 5512k buffers
Swap: 7164948k total, 629192k used, 6535756k free, 3511184k cached
查看12.6% wa
IO等待所占用的CPU时间的百分比,高过30%时IO压力高
其次、 用iostat -x 1 10
avg-cpu: %user 晌逗知 %nice %sys %iowait %idle
0.00 0.00 0.25 指局 33.46 66.29
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s rkB/s wkB/s avgrq-sz avgqu-sz await svctm %util
sda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
sdb 0.00 1122 17.00 9.00 192.00 9216.00 96.00 4608.00 123.79 137.23 1033.43 13.17 100.10
sdc 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
查看%util 100.10 %idle 66.29
如果 %util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶宴消颈。
idle小于70% IO压力就较大了,一般读取速度有较多的wait.
同时可以结合vmstat 查看查看b参数(等待资源的进程数)
vmstat -1
如果你想对硬盘做一个IO负荷的压力测试可以用如下命令
time dd if=/dev/zero bs=1M count=2048 of=direct_2G
此命令为在当前目录下新建一个2G的文件
我们在新建文件夹的同时来测试IO的负荷情况。
1、概念I/O系统,英文全称为“Input output system”,中文全称为“输入输出系碧帆统”,由输入输出控制系统和外围设备两部分组成,是计算机系统的重要组成部分。在计算机系统中,通常把处唯庆理器和主存储器之外的部分称为输入输出系统。
2、作用:对指定外设进行i/o *** 作,同时完成许多其他的控制。包括外设编址,数据通路的建立,向主机提供外设的状态信息等。
3、结构输入输出控制系统:在计算机中对外围设备实施控制的系统。主要功能是:向外围设备发送动作命令、控制输入输出数据的传送、检测外围设备的状态。输入输出设备必须通过该系统同中央处理器和主存储器交换数据。
输入输出控制系统按控制方式分为中央处理器程序控制、直接存储器存取控制、输入输出处理机控制三种。输入输出处理机控制又由通道控制方式和外围处理机控制方式组成。
4、应用:现代计算机系统中配置了大量的外围设备,即I/O设备。依据它们的工作方式的不同,通常进行如下分类。
(1)字符设备(character device),又叫做人机交互设备。用户通过这些设备实现与计算机系统的通信。它们大多是以字符为单位发送和接受数据的,数据通信的速度比较慢。例如,键盘和显示器为一体的字符终端、打印机、扫描仪、包括鼠标等,还有早期的卡片和纸带输入和输出机。含有显卡的图形显示器的速度相对较快,可以用来进行图像处理中的复杂图形的显示。
(2)块设备(block device),又叫外部存储器,用户通过这些设备实现程序和数据的长期保存。与字符设备相比,它们是以块为单位进行传输的,如磁盘、磁带和光盘等。块的常见尺寸为512~32768B之间。
(3)网络通信设备。这类设备主要有网卡、调制解调器等,主要用于与远程设备的通信。这类设备的传输速度比字符设备高,但比外部存储器低。这种分类的方法并不完备,有些设备并没有包括。例如,时钟既不是按块访问,也不是按字符访问,它所做的是按照预先规定好的时间间隔产生中断。但是这种分类足以使 *** 作系统构造出处指慧握理I/O设备的软件,使它们独立于具体的设备。
扩展资料:I/O接口的功能是负责实现CPU通过系统总线把I/O电路和 外围设备联系在一起,按照电路和设备的复杂程度,I/O接口的硬件主要分为两大类:
(1)I/O接口芯片
这些芯片大都是集成电路,通过CPU输入不同的命令和参数,并控制相关的I/O电路和简单的外设作相应的 *** 作,常见的接口芯片如定时/计数器、中断控制器、DMA控制器、并行接口等。
(2)I/O接口控制卡
有若干个集成电路按一定的逻辑组成为一个部件,或者直接与CPU同在主板上,或是一个插件插在系统总线插槽上。
按照接口的连接对象来分,又可以将他们分为串行接口、并行接口、键盘接口和磁盘接口等。
在 Linux 中,脊绝默认情况下所有的 socket 都是 blocking ,一个典型的读 *** 作流雹野兄程如下:
当用户进程调用了 recvfrom 这个系统调用,如上所述,会有两个阶段
在Linux中,可源袭以通过设置 socket使其变为non-blocking ,其流程如下:
IO效率可能随着文件描述符数目的增加而线性下降。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)