Рефераты. Оперциаонные системы ASP Linux и Windows

Для ОС Linux существуют средства, обеспечивающие дружественный к пользователю графический интерфейс, который на первый взгляд очень похож на широко известный графический интерфейс Microsoft Windows, но его внутреннее устройство принципиально отличается.

 

1.2.1.1. XFree86 и его составные части

Графический интерфейс в 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) уже вполне успешно с ней справляются, автоматически определяя тип монитора и видеоадаптера и выбирая подходящее разрешение экрана.

 

1.2.1.2. Графическая среда KDE

KDE — это интегрированная графическая оболочка для Linux (и других версий UNIX), которая в настоящее время включает в себя более 100 графических приложений и поддерживает более 40 различных языков. Она разрабатывается в рамках движения Open Source, т. е. распространяется с открытыми исходными кодами. KDE позволяет совместить современную функциональность, удобство использования и отличный дизайн с технологическими преимуществами операционной системы класса UNIX.

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.