И похоже, что да: открытие блочного устройства с помощью O_DIRECT также обойдёт кеш страницы. Я нашел ответ в этой относительно старой документации для Oracle на Redhat 5 .
По умолчанию чтение и запись в блочные устройства являются буферизованными вводами / выводами. Oracle Database 10g R2 теперь автоматически открывает все блочные устройства, такие как диски SCSI, с помощью флага O_DIRECT, таким образом минуя кэш ОС.
Да, можно эмулировать:
https://github.com/intel/CommsPowerManagement/blob/master/sst_bf.md
секция Эмуляция SST -BF
Если на платформе нет подходящего ядра BIOS или Linux, SST -BF можно эмулировать, установив высокие минимальные и максимальные частоты для некоторых ядер. Обычно это 6 или 8 ядер на частоте 2,7 ГГц, а остальные ядра на частоте 2,1 ГГц на 20-ядерном процессоре.