Более сильный laptop_mode в Linux

У меня может быть более сильный режим ноутбука в Linux?

Я хочу вращать вниз жесткий диск и предотвратить его для вращения, даже если что-то хочет считать что-то не в кэше. В целом я хочу иметь эти режимы:

  1. Нормальный
  2. Текущий режим ноутбука
  3. Более сильный режим ноутбука: вращайтесь только когда потребности считать что-то некэшируемое (и кэшировать его). Никакой spinups для записи чего-то, если действительно давление памяти (Исключение: явная "синхронизирующая" команда в консоли). Ядру позволяют сохранить процессы в D-сне в течение 10 секунд для этого.
  4. Принудительный режим ноутбука: не вращайтесь, период. Продолжайте нарушать процессы в D-сне, если я не выключаю этот режим. Как существует бомба вместо жесткого диска.

Я также хочу иметь прослеженные времена доступа (смонтируйте-o atime), но я не хочу, чтобы жесткий диск был spinned только для обновления их.

Есть ли некоторые настройки или патчи ядра, которые могут стать ближе к этому?

Я могу быть, должен записать специальный io планировщик для "принудительного режима ноутбука"? Например. echo suspend > /sys/block/sda/queue/scheduler заблокировать диск и echo cfq > /sys/block/sda/queue/scheduler разблокировать его снова?

6
задан 17.03.2010, 19:11

1 ответ

Быстро кодированный "принудительный режим ноутбука" как io планировщик. Протестированный сначала в UML, затем на моем ноутбуке даже без перезагрузки.

http://vi-server.org/vi/0001-block-Introduce-hung-iosched.patch

Когда я выхожу echo hung > /sys/block/sda/queue/scheduler, сопровождаемый hdparm -y /dev/sda остановки жесткого диска и не делают резюме.

Когда я должен считать что-то, что я просто делаю"echo cfq > /sys/block/sda/queue/scheduler.

Также я вижу, какие процессы желают вызвать spinup (они - D-сон). reiserfs и pdflush подвешиваются. Затем syslogd.

Предотвратить синхронизацию пытается, я временно отключаю синхронизации echo 0 > /proc/sys/fs/sync-enable. Это должен быть более или менее безопасный данный жесткий диск, уже заперт. Это обеспечивается http://vi-server.org/vi/0001-fs-Introduce-sync-enable-flag.patch.

1
ответ дан 07.12.2019, 16:36

Теги

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