Почему скорость dd значительно снижается после однократного выполнения Fallocate

Возможное решение с помощью awk


#!/usr/bin/awk -f
{ split($4, a, ","); printf("%s %s %s %d,%d\n", $1, $2, $3, a[1] / 2, a[2] + 500); }

Команда split помещает два целых числа в столбце $4 в массив a[]. Команда printf выводит в stdout. Три процентных пункта % предназначены для трех текстовых столбцов $1, $2 и $3. Два процентных пункта %d - это два целых числа. Измените вычисление обоих целых значений на свои нужды.

Сохраните его в файл (например, awktest) и установите разрешение на

chmod +x ./awktest
Запустите его с помощью
./awktest < input.txt > output.txt
.
0
02.12.2017, 22:38
1 ответ

Данные не записываются на диск напрямую. Ядро хранит кэш . ОЗУ намного быстрее, чем диск. Первый ddвыигрывает от этого кеша, поскольку он не заполнен. Однако последующий ddдолжен дождаться сброса кэша.

syncзапросить сброс всех грязных страниц на диск. В противном случае они сбрасываются через несколько десятков секунд.

Обычный диск не может обеспечить скорость 1,2 ГБ/с, даже SSD, а примерно 300 МБ/с.

2
28.01.2020, 02:32

Теги

Похожие вопросы