Разработчики GNOME подготовили пожелания по улучшению ядра Linux

Бастьен Ночера (Bastien Nocera), разработчик Totem, Rhythmbox и gvfs, входящий в управляющий комитет GNOME Foundation, опубликовал список пожеланий, отражающий возможности, которые разработчикам GNOME хотелось бы видеть в ядре Linux. Ожидается, что подобная публикация позволит разработчикам ядра понять потребности разработчиков пользовательских окружений. Среди возможностей ядра Linux, создание которых было продиктовано необходимостью решения проблем с десктоп-окружениями упоминаются inotify, memfd и kdbus. Наиболее интересные предложения:

Управление питанием: Реализация спящего режима, не использующая раздел подкачки для сохранения содержимого ОЗУ; Встроенная реализация гибридного режима сна (HybridSuspend, непонятно, что под этим подразумевается, начиная с ядра 3.6 поддерживается режим «Suspend to both», обеспечивающий переход в ждущий режим после предварительного сохранения образа памяти на диск — если аккумулятор заряжен работа восстанавливается как при ждущем режиме, если память обесточилась — как при спящем); Режим сна без разрыва сетевых соединений (Connected stand-by); Получение информации о событии, инициировавшем выход из спящего/ждущего режима; Явное определение нулевого уровня подсветки экрана: 0 — нет подсветки или минимально возможный уровень подсветки?; Документирование средств управления питанием для USB-устройств (например, как подать питание для зарядки устройства через USB-порт); VFS, файловые системы: Обновление времени изменения для всей цепочки директорий, например, если изменено время модификации /foo/bar/baz, то оно также должно измениться и для директории /foo. Данное изменение существенно упростит отслеживание источника изменений и организацию резервного копирования; Реализация API, похожего на FSEvents из OS X, агрегирующего события об изменениях в привязке к дереву директорий, а не отдельным файлам, и направляющим уведомления приложениям, пожелавшим получать данные об изменениях в определённых директориях; Поддержка отслеживания операций перемещения и переименования в fanotify; Возможность формирования потока информации об изменениях во всех ФС; Разное Обработчик событий исчерпания памяти в системе (OOM killer), работающий в пространстве пользователя; Компоненты, необходимые для реализации контейнеров отдельных десктоп-приложений (интеграция в ядро overlayfs и kdbus); Включение по умолчанию средств для сжатия памяти в определённых аппаратных конфигурациях (zram, zcache, zswap); childfd для контроля за файловыми дескрипторами дочернего процесса; Вариант epoll_wait, использующий монотонное время (постоянно увеличивающаяся шкала времени), вместо определения таймаута (уменьшаемый счётчик).

Полный текст статьи читайте на OpenNet