|
| ||||||||||||
| ||||||||||||
Основные возможности sysconsИтак, syscons с одной стороны работает непосредственно с "железом" (видео-контроллером и контроллером клавиатуры), а для ОС выглядит как некий аппарат, который и является терминалом.
Виртуальные терминалы. Прежде всего надо отметить, что syscons изображает из себя несколько "виртуальных терминалов" или "виртуальных консолей". Естественно,
пользователь может переключаться из одного такого терминала в другой,
с помощью соответствующих клавиш (подробнее смотри
"Переключатели виртуальных терминалов.")
или выводя на терминал специальные esc-последовательности.
Обычно с каждым виртуальным терминалом связана своя сессия и своя задача, выполняющаяся в этой сессии. Однако, задача, запущенная на первом (например) виртуальном терминале может работать и с другими терминалами (например, выводить часть своих сообщений на экран другого виртуального терминала). Обычно syscons поддерживает 16 виртуальных терминалов. Это число определяется при сборке ядра системы и может быть изменено при перегенерации ядра
(option MAXCONS). Правда, для того, чтобы можно было их все задействовать,
в директории /dev должно быть создано соответствующее количество "точек
входа" ("устройства" ttyv0 - ttyv9, ttyva-ttyvf). Дело в том, что в
"свеже-инсталлированной" системе таких устройств только 4 (ttyv0-ttyv3).
/dev/MAKEDEV vty* где * означает количество устройств, которое вам нужно (для чисел больше 9 используются буквы a-f, как для шестнадцатеричных цифр). Кроме того, чтобы реально переключиться на какой-нибудь из виртуальных терминалов, он должен быть активным. То есть на нем должна быть запущена хоть какая-нибудь задача. Для того, чтобы при старте системы каждый терминал получил свою задачу, на каждом из них запускается программка getty, которая дает возможность открыть сессию на этом терминале. Это задание (запустить getty на каждом терминале) записывается в файле /etc/ttys. Опять же, в "свеже-поставленной" системе в этом файле "охвачены" только три терминала. Поэтому, если вы хотите пользоваться и остальными, то в этом файле придется добавить "задания" для всех виртуальных терминалов. Только, если вы собираетесь запускать систему X-Window, не забудьте оставить для нее хотя бы один свободный терминал. Буфер экрана (history buffer). Каждый виртуальный терминал имеет буфер экрана, больший, чем размер физического экрана. Обычно физический размер экрана 25 строчек, хотя,
при желании, вы можете переключить syscons в режим при котором на экране
отображаются 43, 50 или 60 строчек, если, конечно, видеокарта поддерживает
такие режимы (подробнее об этом в "Режим отображения")
Команды терминала syscons.Драйвер syscons эмулирует "интеллектуальный" терминал, который кроме обычного вывода "символ за символом" понимает ряд команд в виде esc-последовательностей (цепочка из нескольких символов, начинающаяся с кода Esc - 27). С помощью таких последовательностей программа может менять положение курсора на экране, очищать часть текущей строки или часть экрана, менять атрибуты символов (яркость, цвет, подчеркивание, мерцание и т.п.). Список этих команд можно посмотреть в
"Приложение 1. Команды (esc-последовательности) syscons"(он в основном
соответствует командам стандартного "ANSI-терминала").
Управление драйвером syscons.Для изменения настроек syscons в системе существуют две утилиты - vidcontrol и kbdcontrol. Как понятно из их названий, первая меняет параметры, относящиеся к изображению на дисплее, а вторая - настройки клавиатуры. Описание этих утилит можно найти в соответствующих man'уалах. Я только кратко опишу их основные возможности (в разделах "Программа vidcontrol" и "Программа kbdcontrol"). Надо заметить, что обычно основные настройки syscons (русификация, тип курсора, "скринсейвер" и т.п.) делаются во время загрузки системы в соответствующем "стартовом скрипте" (/etc/rc.i386), а параметры, которые им требуются, прописываются в /etc/rc.conf. Поэтому, вы можете поэкспериментировать с настройками, запуская эти утилиты вручную, но "глобальные" изменения лучше делать редактированием соответствующих строчек в /etc/rc.conf. Работа с "мышью".К сожалению, на эту часть мне не хватило сил и времени. В свое оправдание скажу только, что
Надеюсь, что со временем я восполню этот пробел. Пока могу лишь посоветовать почитать на эту тему man moused и man sysmouse. Иван Паскаль pascal@tsu.ru |
|
CITForum © 1997–2025