Есть программа, которая читает/пишет на устройство /dev/disk/... Как только память заканчивается, она начинает жутко тормозить. Программа самописная, все операции записи через mmap, по завершению блока записи msync(ptr, MS_SYNC), и дескриптор файла открыт через O_SYNC. Cached не увеличивается, увеличивается только Buffers. Выполнение echo 3 > /proc/sys/vm/drop_caches ничего не меняет. Очищается Buffers моментально по закрытию процесса. Закрытие дескрипторов без закрытия процесса ничего не меняет. В этом Buffers не остается не сохраненных данных на диск. Какой командой из с++ или из командной строки можно заставить очиститься Buffers без закрытия процесса?