Кот /dev/zero | pv > /dev/null

cat /dev/zero | pv > /dev/null

Что именно здесь происходит и что определяет скорость этого процесса.

Даже на низкоуровневом оборудовании вы получаете пару скоростей передачи ГБ / с, как это.

1 ответ

cat /dev/zero дает вам поток нулевых символов. Когда вы открываете его и читаете из него, вы используете ядро. Ядро реализует /dev/zero в драйверах / char / mem.c.

Так далеко как cat или же pv обеспокоен тем, что в этом нет ничего особенного. Выбор использовать /dev/zero ничем не отличается от чтения /etc/passwd, Разница лишь в том, что вы читаете виртуальный файл, а не настоящий файл. Таким образом, работа, которую выполняет ядро, отличается - т.е. он не должен работать с файловой системой и т. Д.

Запись в /dev/null почти так же. pv не заботится о цели (в данном случае это ваша оболочка из-за перенаправления), и опять же, единственное отличие состоит в том, что запись отбрасывается, потому что это то, для чего используется драйвер ядра /dev/null снова в drivers/char/mem.c,

Скорость этого процесса будет зависеть от нагрузки системного ввода-вывода и процессора, а также от всего остального.

Другие вопросы по тегам