Бастьен Ночера (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, использующий монотонное время (постоянно увеличивающаяся шкала времени), вместо определения таймаута (уменьшаемый счётчик).