Бастьен Ночера (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, использующий монотонное время (постоянно увеличивающаяся шкала времени), вместо определения таймаута (уменьшающийся счётчик).
Наиболее интересные предложения:
Управление питанием:
Реализация спящего режима, не использующая раздел подкачки для сохранения содержимого ОЗУ;
Встроенная реализация гибридного режима сна - 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, использующий монотонное время (постоянно увеличивающаяся шкала времени), вместо определения таймаута (уменьшающийся счётчик).