cat /dev/zero | pv > /dev/null
这里到底发生了什么,是什么决定了这个过程的速度。
即使在低端硬件上,你也可以获得像这样的几个GB/s传输速度。
发布于 2017-01-24 15:09:17
cat /dev/zero给你一个零字符流.当您打开它并从中读取时,您使用的是内核。内核在/dev/zero中实现了司机/司机/备忘录c。
对于cat或pv来说,这并没有什么特别之处。选择使用/dev/zero与阅读/etc/passwd没有什么不同。唯一的区别是,您正在读取的是虚拟文件,而不是真正的文件。所以内核所做的工作是不同的--也就是说,它不需要对文件系统做任何事情,等等。
给/dev/null写信几乎是一样的。pv并不关心目标(在本例中,由于重定向,它是您的shell ),因此唯一的区别是,写被丢弃了,因为这是/dev/null的内核驱动程序所做的,在drivers/char/mem.c中也是如此。
这个过程的速度将取决于系统的I/O负载和处理器,就像其他任何东西一样。
https://serverfault.com/questions/828276
复制相似问题