The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"В systemd предложено включить средства для замены консоли, a..."
Отправлено opennews, 28-Ноя-13 11:42 
Дэвид Херрманн (David Herrmann), автор проекта kmscon (http://www.freedesktop.org/wiki/Software/kmscon/) (реализация консоли в пространстве пользователя) опубликовал (http://lists.freedesktop.org/archives/systemd-devel/2013-Nov...) серию патчей, позволяющих обеспечить работу окружения на базе systemd в системах с ядром, собранным без поддержки виртуальных терминалов (CONFIG_VT=n). Из дальнейших планов отмечена интеграция в системный менеджер systemd компонентов с реализацией системной консоли, загрузочной заставки и приглашения входа в систему.


В частности, в будущем предлагается перейти к конфигурации без встроенной в ядро поддержки виртуальных терминалов (CONFIG_VT=n). Организовать работу системы в режиме CONFIG_VT=n можно уже сейчас, например, с использованием kmscon в качестве консоли и systemd-logind для переключения сессий, требуются лишь незначительные доработки и реализация компонентов для работы в случае невозможности сразу перейти в полноценный графический интерфейс.


Для воплощения идеи в жизнь предложена специальная иблиотека sd-gfx, которая унифицирует поддержку всех операций с графикой, экраном и шрифтами, используемых при инициализации и запуске системы. По сути, библиотека sd-gfx продолжает развитие kmscon и заменяет собой код для работы с виртуальными терминалами, ранее реализованный на уровне ядра. На база данной библиотеки планируется подготовить несколько новых компонентов systemd:  


-  systemd-consoled - эмулятор терминала для замены штатных консолей (kernel-console, linux-console), предоставляемых при сборке ядра с опцией CONFIG_VT=y;
-  systemd-splashd - реализаций бесшовной графической заставки, отображаемой в процессе загрузки. Отмечается, что splashd не претендует для замены Plymouth и ограничится только интерфейсом для ввода пароля для шифрованного корневого раздела в условиях сборки ядра без поддержки виртуальных терминалов;
-   systemd-welcomed - экран приглашения входа  в систему, заменяющий собой agetty и /bin/login. После входа пользователя будет задействован systemd-consoled.
-  systemd-er - урезанная версия консоли systemd-consoled для экстренных ситуаций, например, для использования при выявления сбоя на ранних этапах загрузки. Например, в systemd-er отсутствует поддержка управления пользовательскими сеансами, разделения привилегий и т.п.

В качестве основных проблем с поддержкой виртуальных терминалов на уровне ядра отмечается необходимость в поддержании на уровне ядра дополнительных компонентов, усложняющих реализацию, дублирующих подсистемы пользовательского уровня, негативно сказывающихся на безопасности и надёжности (ошибка в коде терминала может привести к уязвимостям и крахам на уровне ядра). В частности, для обеспечения работы текстовых консолей в ядре требуется поддержка отдельной прослойки для управления клавиатурой и обработки ввода (упрощённый аналог XKB), жестко заданных фильтов для подсистемы hotplug, средства для выполнения графических операций, код для отображения шрифтов и обработки курсора, код эмуляции терминала и т.п.


Из доводов в пользу поддержания кода работы с терминалом в ядре упоминаются поддержка отладки на начальном этапе загрузки, вывод отчётов о крахах и отладка через kdb. В настоящее время актуальность данных доводов поставлена под вопрос, так как первые две задачи успешно могут быть решены через модули ядора fblog/drmlog, а для решения третьей задачи можно использовать kgdb или специально собрать ядро в режиме "CONFIG_VT=y".


URL: http://lists.freedesktop.org/archives/systemd-devel/2013-Nov...
Новость: http://www.opennet.ru/opennews/art.shtml?num=38543

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру