Учебное пособие: Оперциаонные системы ASP Linux и Windows

Хотя ОС Linux первоначально была разработана для ПК на базе Intel 386/486, сейчас она может работать на всех версиях Intel-овских микропроцессоров, начиная с 386 и кончая многопроцессорными системами на Pentium III (с Pentium IV возникли определенные трудности, но, судя по сообщениям в Интернете, они были вызваны ошибками в реализации процессора). Так же успешно Linux работает на различных клонах Intel от других производителей; в Интернете встречаются сообщения о том, что на процессорах Athlon и Duron от AMD Linux работает даже лучше, чем на Intel. Кроме того, разработаны версии для других типов процессоров — ARM, DEC Alpha, SUN Sparc, M68000 (Atari и Amiga), MIPS, PowerPC и других (отметим, что в настоящей книге рассматривается только вариант для IBM-совместимых компьютеров).

Дистрибутивы Linux

В любой операционной системе можно выделить 4 основных части: ядро, файловую структуру, интерпретатор команд пользователя и утилиты. Ядро — это основная, определяющая часть ОС, которая управляет аппаратными средствами и выполнением программ. Файловая структура — это система хранения файлов на запоминающих устройствах. Интерпретатор команд или оболочка — это программа, организующая взаимодействие пользователя с компьютером. И, наконец, утилиты — это просто отдельные программы, которые, ничем не отличаются от других программ, запускаемых пользователем, за исключением их основного назначения — они выполняют служебные функции.

Слово "Linux" обозначает только ядро. Поэтому правильнее было бы говорить "операционная система, основанная на ядре Linux". Ядро ОС Linux разрабатывается под общим руководством Линуса Торвальдса и распространяется свободно (на основе лицензии GPL), как и огромное количество другого программного обеспечения, утилит и прикладных программ. Одним из следствий свободного распространения ПО для Linux явилось то, что большое число разных фирм и компаний, а также просто независимых групп разработчиков стали выпускать так называемые дистрибутивы Linux.

Дистрибутив — это набор программного обеспечения, включающий все 4 основные составные части ОС, т. е. ядро, файловую систему, оболочку и совокупность утилит, а также некоторую совокупность прикладных программ. В мире существует уже более сотни различных дистрибутивов Linux, и все время появляются новые. На сегодняшний день заслуживают внимания только три дистрибутива: Red Hat Linux Cyrillic Edition, Linux Mandrake Russian Edition (и его потомок ALTLinux) и ASPLinux. Для данных дистрибутивов характерно:

· принадлежность к семейству дистрибутивов, строящихся на основе Red Hat Linux (Red Hat — это самый распространенный в мире дистрибутив).

· Эти дистрибутивы изначально русифицированы.

· В каждом из них имеется достаточно отлаженная процедура установки, автоматически распознающая большинство компонент аппаратного обеспечения, что очень облегчает процедуру инсталляции системы.

· Легко устанавливается (добавляется) дополнительное программное обеспечение, так как оно поставляется в RPM-пакетах (технология распространения ПО, аналог программы setup под Windows).

· Эти дистрибутивы поддерживаются сформировавшимися командами разработчиков и постоянно обновляются.

Нумерация версий.

Различают номера версий дистрибутивов и номера версий ядра. Обычно под версией Linux имеют в виду версию ядра (версии ядра развиваются последовательно, а не ветвятся и множатся, как дистрибутивы).

Версии ядра Linux принято обозначать тремя числами, разделенными точкой. Например, дистрибутив Black Cat версии 5.2 был построен на основе ядра версии 2.0.36, т. е. это был Linux версии 2.0.36. Версии ядра с нечетным значением второй цифры обычно не используются для создания дистрибутивов, потому что являются экспериментальными (отладочными). Версии с четной второй цифрой являются (считаются) устойчиво работающими.

Тема 1.2. Знакомство с графическим интерфейсом ASP Linux

1.2.1. Графический интерфейс ASP Linux

Работать с ОС Linux только через интерфейс командной строки довольно трудно. Все необходимые операции в данном случае выполняются путем запуска отдельных команд, перечень которых огромен, и которые надо помнить наизусть.

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

Для ОС 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.

К-во Просмотров: 553
Бесплатно скачать Учебное пособие: Оперциаонные системы ASP Linux и Windows