Графический интерфейс в Linux строится на основе стандарта X Window System или просто "X", первоначальный вариант которого был разработан в 1987 году в Массачусетском технологическом институте. Начиная со второй версии этот стандарт поддерживался консорциумом X, созданным в январе 1988 г. с целью унификации графического интерфейса для ОС UNIX. С 1997 года консорциум X преобразован в X Open Group. В настоящее время действует версия 11 выпуск 6 стандарта на графическую подсистему для UNIX-систем, которая кратко обозначается как X11R6.
Свободно распространяемая реализация стандарта X11R6 для UNIX-систем с процессорами 80386/80486/Pentium (в том числе для ОС Linux) была создана группой программистов, которую вначале возглавлял Дэвид Вексельблат (David Wexelblat). Эта реализация известна как XFree86, и может использоваться не только в Linux, но и в System V/386, 386BSD, FreeBSD и других версиях UNIX для систем на базе процессоров Intel x86. В настоящее время выпущена уже 4-ая версия XFree86, однако, и 3-я версия еще широко используется и входит в состав основных дистрибутивов Linux.
Система X Window построена на основе модели "клиент/сервер". X сервер работает на компьютере пользователя (а не на каком-то удаленном "сервере") и обеспечивает вывод изображения на экран монитора. X-сервер работает непосредственно с "железом": видеосистемой, устройствами ввода и динамиком. Эта программа захватывает оборудование и предоставляет его возможности другим программам как ресурсы по особому протоколу, который называется X-протокол, или протокол сетевой связи (X Network Protocol). Специализированный компьютер, на котором исполняется исключительно X-сервер, называется (аппаратным) X-терминалом.
X-сервер не формирует изображение, он только "доставляет" графику видео-драйверу. Если запустить только X-сервер, вы увидите просто серый экран с крестиком курсора посредине. С помощью мыши крестик можно перемещать по экрану. На нажатие кнопок мыши и клавиш реакции не следует — сервер готов передавать эти сигналы своим клиентам, а клиенты пока не запущены. Хотя некоторые комбинации клавиш X перехватывает и обрабатывает, к ним относятся <Ctrl>+<Alt>+<Backspace> — завершение работы сервера, <Ctrl>+<Alt>+<+> и <Ctrl>+<Alt>+<-> — "горячее" переключение доступных видеорежимов, и <Control>+<Alt>+<F#> — переключение в другую виртуальную консоль.
Таким образом одного X-сервера недостаточно для работы, необходим запуск менеджера окон и хотя бы одной программы-клиента, которая будет формировать изображение. В роли "клиентов" X-сервера выступают приложения, работающие с X Window, например графический редактор GIMP, текстовый редактор Corel WordPerfect, эмулятор терминала xterm и другие.
Между клиентами и сервером стоят еще два очень важных компонента графического интерфейса: библиотека графических функций X-lib и менеджер окон (рис. 1.2.1.1). X-Lib содержит графические функции, которые обеспечивают выполнение низкоуровневых операций с графическими образами. Менеджер окон вызывает функции из X-Lib для управления дисплеем и выполнения любых преобразований изображений в окнах.
При запуске X-приложение передает управление менеджеру окон, который обеспечивает выполнение всех операций с окнами: прорисовку рамок, меню, иконок, полос прокрутки и других элементов окна, а также предоставляет возможность изменять вид и положение окна в процессе работы в соответствии с потребностями пользователя. Менеджер окон также вызывает соответствующие функции для программ-клиентов в тех случаях, когда пользователь взаимодействует с приложением с помощью клавиатуры и мыши.
Расширенные графические среды типа Motif, CDE, KDE, GNOME, GNUStep и т. д. не замещают перечисленные выше компоненты системы X Window, а расширяют и дополняют их. KDE, например, добавляет библиотеку графических функций Qt в дополнение к X-Lib. Motif имеет собственный набор графических функций. GNOME использует библиотеку GTk+, которая составляет основу GIMP. Кроме того, в GNOME используется также CORBA (The Common Object Request Broker Architecture — универсальная архитектура посредничества при запросе объектов) и библиотека Imlib для дальнейшего расширения возможностей графической подсистемы.
Рис. 1.2.1.1. Архитектура графической системы в Linux
Поскольку клиент и сервер являются отдельными процессами, они могут работать на разных компьютерах, взаимодействовуя по сети. Приложения можно запустить, например, на мейнфрейме, а картинка будет выводиться на экран персонального компьютера. Эта очень мощная особенность системы X Window является одним из основных отличий ее от MS Windows.
В Linux (и вообще в UNIX) нет жесткого деления между графическими и текстовыми программами, как в MS Windows или OS/2. С точки зрения системы нет разницы между программой, работающей в графике, и обычной. Программы для графического режима запускают как обычные программы, т. е. из командной строки, из Midnight Comander'а и т.п. Единственным необходимым условием для их работы является то, что должен работать X-сервер. При необходимости программа сама обращается к X-серверу.
На рис. 1.2.1.1 схематично представлена архитектура графической системы в Linux. Еще одним важным ресурсом графической подсистемы являются шрифты. Оперировать со шрифтами может как непосредственно X-сервер, так и специальная программа, которая называется сервер шрифтов.
Для каждого из типовых компонентов графической системы существует множество конкретных реализаций. В состав пакета XFree86 версии 3 входят несколько различных серверов, причем выбор конкретного сервера зависит от того, какие у вас видеоплата и монитор. Например, сервер XF86_Mono — это сервер для монохромных видео-режимов; XF86_S3 — сервер для карт, основанных на S3; XF86_S3V — сервер для S3 ViRGE и ViRGE/VX; XF86_SVGA — сервер для карт, работающих в режимах Super-VGA.
В четвертой версии XFree86 уже один X-сервер для большинства видеоадаптеров, называется он XFree86 и располагается в каталоге /usr/X11R6/bin/. Обычно на него делается ссылка с именем X, так что запустить X-сервер можно просто введя в командной строке букву X.
Различных менеджеров окон тоже существует очень много, например:
· fvwm — Free Virtual Window Manager.
· fvwm2 — улучшенный вариант fvwm, позволяющий, в частности, использовать различные темы рабочего стола и динамические меню.
· fvwm95 — менеджер окон с графическим интерфейсом в стиле Windows 95.
· IceWM — это оконный менеджер, который может эмулировать различные стандарты оконных систем (в частности, OS/2 Workplace Shell), имеет, по некоторым отзывам, довольно маленький обьем и быстро работает.
· Enlightenment — один из самых развитых менеджеров окон.
Разные менеджеры окон могут обеспечивать различный вид окон за счет использования различных рамок и оконных меню. Но все они используют одну и ту же базовую графическую утилиту X Window — X сервер.
Графический интерфейс в Linux строится по модульному принципу. Возможна самостоятельная сборка графического интерфейса из отдельных компонент. В настоящее время разработаны (и включены практически во все дистрибутивы) так называемые интегрированные графические среды. Наиболее известными представителями таких сред являются KDE и GNOME. При создании таких интегрированных графических сред различные и независимые разработчики используют единый подход, единую идеологию создания и оформления программных продуктов. В результате получается функционально полный пакет программ, в рамках которого решены практически все задачи управления компьютером и программной средой.
Основу интегрированной графической среды KDE (K Desktop Enviroment) образует расширенная библиотека графических функций Qt фирмы Troll Tech. С использованием этой библиотеки построены собственный оконный менеджер kwm, файл-менеджер kfm, центр управления KDE (аналог панели управления Windows) и множество других компонентов, вплоть до собственного офисного пакета KOffice.
В состав версии 2.1 KDE включен файловый менеджер Konqueror, который предоставляет уникальные возможности доступа к файлам. Кроме того, что он позволяет просматривать файлы большинства известных форматов на локальных дисках, он является и интернет-браузером, по своим возможностям вполне сравнимым с Internet Explorer или Netscape Navigator.
Другой графической средой того же класса, что и KDE, является пакет GNOME (GNU Network Object Model Environment), который разрабатывается в рамках проекта GNU, а значит, относится к классу свободно распространяемого ПО (KDE до недавнего времени не полностью соответствовал этому понятию, потому что библиотека Qt распространялась не на условиях GPL; хотя сейчас ситуация изменилась и KDE тоже является свободно распространяемым). GNOME строится на основе библиотеки графических функций GTK+.
Существуют и другие разработки интегрированных графических сред, которые, однако, пока не достигли той степени развития, как KDE или GNOME, например, Xfce, dfm и другие.
До недавнего времени установка и настройка графического интерфейса Linux представляла собой довольно непростую задачу. Однако программы инсталяции последних версий дистрибутивов Linux (например, русифицированой версии Red Hat Linux 7.1) уже вполне успешно с ней справляются, автоматически определяя тип монитора и видеоадаптера и выбирая подходящее разрешение экрана.
Графическая среда KDE
KDE — это интегрированная графическая оболочка для Linux (и других версий UNIX), которая в настоящее время включает в себя более 100 графических приложений и поддерживает более 40 различных языков. Она разрабатывается в рамках движения Open Source, т. е. распространяется с открытыми исходными кодами. KDE позволяет совместить современную функциональность, удобство использования и отличный дизайн с технологическими преимуществами операционной системы класса UNIX.
Внешний вид
Внешним видом экрана после запуска KDE представлен на рис. 1.2.1.2.1
Рис. 1.2.1.2.1. Внешний вид графической среды KDE
Экран можно условно поделить на две части.
Панель в нижней части экрана служит для запуска приложений и переключения между рабочими столами. На паанели расположен значок с изображением буквы "К". Этот значок (аналог кнопки Start в Windows) служит для вызова иерархического меню, через которое можно запустить любое приложение из числа входящих в состав KDE, даже если значок приложения отсутствует на панели.
Вся оставшаяся поверхность экрана, на которой располагается некоторое число значков ("иконок"), которые тоже могут использоваться для запуска соответствующих им приложений. — это рабочий стол (Desktop)
KDE поддерживает несколько рабочих столов, переключаться между которыми можно с помощью пронумерованных клавиш, расположенных на панели (на рис. 1.2.1.2.1 изображены четыре такие клавиши, хотя это число можно изменить).
Правее переключателя рабочих столов располагается поле, которое называется панелью задач (taskbar). Оно служит для отображения перечня запущенных в данный момент приложений и переключения между ними. Каждому запущенному приложению соответствует кнопка, щелчок по которой переводит данное приложение в активное состояние.
Для тех, кто привык работать в Windows, может показаться непривычным то, что для запуска приложения достаточно щелкнуть по значку ("иконке") только один раз. Но к этому быстро привыкаешь, а и при желании можно настроить оболочку на два щелчка.
В правом конце панели задач находятся часы и небольшая вертикально вытянутая кнопка с треугольником-стрелкой. Такая же кнопка имеется и в левом конце панели. Щелчок по любой из этих кнопок приводит к тому, что панель сворачивается, как бы убегая за границу соответствующей стороны экрана. Видимой остается только такая же кнопка с треугольником. Щелчком по этой кнопке можно вернуть панель на экран.
Если вы подведете указатель мыши к любому значку или кнопке на панели задач и выждете некоторое время, появится подсказка, поясняющая назначение значка или название соответствующей задачи. А если щелкнуть правой кнопкой мыши по любому элементу на экране, в том числе и по пустому полю, появляется меню, в котором можно выбрать одно из действий, применимых к данному элементу. В частности, щелчок по пустому полю приводит к появлению меню настроек рабочего стола.
Панель можно настраивать по своему усмотрению. Но описанием способов настройки мы пока заниматься не будем. Давайте вначале посмотрим на главное меню KDE.
Главное меню KDE
Доступ к главному меню KDE получаем, щелкнув по значку с буквой "K" (рис. 1.2.1.2.2).
Некоторые элементы меню имеют треугольник после названия. Это говорит о том, что данный элемент вызывает вложенное меню следующего уровня.
В меню RDE имеются аналоги команд, имеющихся в главном меню Windows: Поиск файла, Помощь, Запустить программу…
Команды Каталог и Домашний каталог служат для быстрого перехода в нужный каталог и просмотра его содержимого с помощью файлового менеджера Konqueror.
В верхней части главного меню появляется отделенный горизонтальной чертой список часто запускаемых или недавно вызывавшихся команд.
Смысл подавляющего числа команд меню не требует особых пояснений — они вызывают соответствующее приложение. Рассмотрим такие приложения как Центр управления и Настройки панели.
Рис 1.2.1.2.2. Главное меню KDE
Центр управления KDE
Типичный вид окна при работе с Центром управления KDE изображен на рис. 1.2.1.2.3: слева расположено меню, а справа — поле вкладок, каждая из которых обычно служит для настройки какого-то конкретного элемента графической среды.
Рис. 1.2.1.2.3. Один из экранов Центра управления KDE (щелкните по рисунку для просмотра)
Настройка фона или темы рабочего стола выполняется с помощью команд Фон и Менеджер тем меню Внешний вид и интерфейс главного меню Центра управления. На приведенных выше рисунках вы можете видеть результат. Одновременно можно выбрать основные цвета (команда Цвета) и стиль оформления графических элементов (команда Стиль).
Рис. 1.2.1.2.4. Задание шрифтов для разных элементов экрана
. На рис. 1.2.1.2.4 вы видите правую панель Центра управления, соответствующую команде Шрифты, которая позволяет выбрать шрифты, которыми будут выводиться различные надписи
Для изменения какого-либо шрифта надо щелкнуть по экранной кнопке Выбрать. Появится окно, изображенное на рис. 1.2.1.2.5, в котором и осуществляется такой выбор. После того, как выбор шрифта произведен, нужно щелкнуть по кнопке Ok. Для того, чтобы изменения вступили в силу, надо нажать кнопку Применить на панели Центра управления (рис. 1.2.1.2.4). Это касается не только шрифтов, но и любых других изменений, производимых с помощью Центра управления.
Рис. 1.2.1.2.5. Окно выбора шрифтов
Вид и содержание главного меню KDE тоже можно настраивать (см. рис. 1.2.1.2.6.) Как видно из рис. 1.2.1.2.6. состав и содержание элементов меню здесь изменить невозможно. Для этого можно вызвать отдельную программу — Редактор меню KDE, что делается через команду Настройка панели | Редактор меню того же главного меню.
Рис. 1.2.1.2.6. Настройка главного меню
Окно программы Редактор меню KDE представлено на рис. 1.2.1.2.7. Здесь можно как создать новую команду меню, так и новое подменю, указать название приложения и имя запускаемого файла, а также назначить запуск программы от имени другого пользователя.
Рис. 1.2.1.2.7. Редактор меню KDE
На вкладке Расширенные можно назначить "горячую" клавишу, по которой можно будет вызывать приложение, не прибегая к помощи меню и мыши.
Дата: 2019-05-28, просмотров: 307.