Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Операционные оболочки



Графическая оболочка X- Window

X-сервер — программа, которая написана специально под конкретное физическое устройство (имеется в виду - монитор, графический контроллер, мышь и клавиатура), умеет на нем рисовать и понимать команды рисования по протоколу X Window System.

X-клиент — прикладная программа, обеспечивающая графический интерфейс с пользователем. Команды для рисования на экране передает X-серверу по протоколу X Window System.

X-терминал — ящик (монитор, графический контроллер, мышь, клавиатура, процессор и оперативная память), на котором запущена программа X-сервер. X-терминалом может служить самая обыкновенная графическая Unix рабочая станция, на которой X сервер выполняется, как одна из многих прикладных задач. Специализированный X-terminal - ящик, на котором запускается только X сервер, и ничего кроме. Можно использовать PC под MS-DOSом, на котором запущена DOS программа, реализующая X-сервер.

Xlib - библиотека C- функций, реализующих протокол X Window System. С помощью этой библиотеки можно писать графические программы - X-клиенты.

С помощью такого инструментария получается универсальный GAPI - (Graphical Application Programming Interface) - средство программирования графических приложений. Пользовательские графические программы при этом полностью независимы от железа, от конкретного графического контроллера. Для конкретного графического контроллера есть конкретный X-сервер.

Протокол X Window "понимает" компьютерную сеть. Поэтому Xсервер может быть запущен на одной машине, а X-клиент - на другой. То есть, картинка рисуется на одной машине, а программа, которая ее отображает - на другой.

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

Весь интерфейс программ в X-Window состоит из объектов (в X-Window их называют "widgets" - в дословном переводе "штучки").

У каждого объекта есть набор свойств: цвет символов, цвет фона, шрифт и т.д. Конкретный перечень свойств определяется типом объекта - кнопка, переключатель, строка ввода и т.д. (для обозначения типа используется термин класс объекта). Вот эти свойства объектов и называются ресурсами.

Некоторые свойства, такие, как состояние включено/выключено у объекта "переключатель", определяются и меняются в процессе работы программы.

Другие же, такие, как цвета, шрифты и надписи (например, названия пунктов меню), можно настраивать.

Ресурсы - это одна из самых базовых концепций X-Window, придающая системе большую гибкость, но одновременно, несмотря на элегантность, и одна из самых трудных для понимания. С понятием ресурсов также тесно связаны понятия "Actions" и "Translations" ("действия" и "соответствия"), часто встречающиеся в man-страницах, но мы их затрагивать не будем.

По своему назначению ресурсы в X-Window очень похожи на то, что обозначается тем же термином "ресурсы" в MS Windows. Но вся идеология работы с ресурсами в X в корне отличается.

В частности, в MS Windows ресурсы являются частью бинарного исполняемого файла (например, winword.exe), и могут указываться или при компиляции программы, или меняться при помощи специальных редакторов, которые позволяют модифицировать бинарный файл (что, вообще говоря, является работой для квалифицированного программиста, и зачастую противоречит законам об авторских правах).

В X-Window же ресурсы существуют отдельно от исполняемого кода программы, в виде текстовых файлов, и могут свободно меняться или в этих файлах, или даже при помощи ключей в командной строке.

Таким образом, если в MS Windows, к примеру, перевод всех сообщений некоей программы на русский язык является "хакерской" задачей, то в X-Window подобное действие -- вполне стандартно, доступно любому пользователю и описано в документации.

Графическая оболочка Windows

Windows — популярная графическая операционная оболочка. Windows 95-98 работает на базе MS DOS. Наряду с Windows существуют и другие операционные системы с аналогичным пользовательским интерфейсом для компьютеров различных классов. Следует назвать те концептуальные черты Windows, благодаря которым она получила широкое распространение и, по заявлению фирмы Microsoft, "изменит ваш способ работы с персональным компьютером":

- мультизадачный режим работы;

- оптимальное управление ресурсами компьютера;

- графический пользовательский интерфейс;

- наличие техники связывания и встраивания объектов других программ;

- возможность работы в сетевой среде;

- интерфейс мультимедиа.

Операционная система Windows является мультизадачной, т.е. она способна параллельно выполнять два или более программных приложений Windows.

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

Различают два типа мультизадачности: кооперативную и с разделением времени.

При кооперативном мультизадачном режиме, как, например, в Windows, операционная система не выполняет полноценный контроль за тем, как отдельные задачи распределяют ресурсы. Момент передачи управления системе здесь зависит от хода выполнения задачи. Таким моментом должен быть системный вызов, т.е. обращение к системе за какой-либо услугой, или системное событие (окончание ввода-вывода на внешнее устройство и пр.). Фоновым задачам дается время обработки при простое приоритетной задачи (ожидание нажатия клавиши и пр.).

При режиме с разделением времени, как, например, в OS/2 или Windows NT, каждая задача получает фиксированный квант времени процессора. По истечении этого кванта времени система вновь получает управление, чтобы выбрать другую задачу для активизации. Впрочем, если возникает системное событие (завершение ввода-вывода) или задача обращается к системе до истечения ее кванта времени, то это также служит причиной передачи управления системе и последующего переключения задач.

Для реализации мультизадачного режима Windows 3.1 использует основные ресурсы компьютера (процессор, оперативную память и программы) как разделяемые ресурсы, т.е. предоставляет их для совместного использования сразу нескольким приложениям (программам).

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

Для обеспечения визуального доступа к выполняемым приложениям экран Windows 3.1 также является разделяемым ресурсом, причем средством разделения является организация работы приложений в окнах.

Предоставляемый конкретной задаче разделяемый ресурс является для нее виртуальным ресурсом, так как задача не владеет им монопольно, она использует лишь часть ресурса как во времени, так и в количественном измерении ресурса.

Для переключения между приложениями используются функции специальной программы Windows, называемой Менеджером Задач. Менеджер Задач позволяет выполнить переключение между приложениями с помощью специальных комбинаций клавиш или выводит окно «Список Задач», где можно переключиться (вывести на передний план) или завершить какую-либо задачу.

Несмотря на то, что Windows 3.1 — многозадачная среда, в которой могут работать несколько приложений одновременно, ясно, что один пользователь в каждый момент времени может работать только с одним приложением. Принято говорить, что приложение, к которому относятся команды и действия мыши, а также клавиатуры, отображается в активном окне.

Активное окно — окно приложения, реагирующее в данный момент на действия пользователя и полностью отображаемое на рабочем столе Windows.

Технология связывания и встраивания объектов

Передача фрагмента данных от одного документа в другой представляет собой простейший способ обмена данными между приложениями. Выполняется эта операция через буфер обмена Windows. Эта операция является исходной для реализации долговременного связывания.

Буфер обмена можно представить как некоторое динамическое пространство оперативной памяти для временного размещения данных обмена. Каждое последующее занесение в буфер какой бы то ни было информации уничтожает предыдущее содержимое.

Для занесения информации в буфер обмена и ее извлечения оттуда приложения Windows имеют в своих меню команды КОПИРОВАТЬ, ВЫРЕЗАТЬ, ВСТАВИТЬ.

Для последующей работы с данными, занесенными в буфер обмена, в Windows в группе Главная можно использовать окно Папки Обмена. Это приложение позволяет просмотреть содержимое буфера, сохранить его в файле, очистить буфер или поместить его содержимое в Папку Обмена. Объект данных с содержимым очередного буфера получает название страницы в Папке Обмена. Пользователь сам выбирает имя для очередной страницы, a Windows сохраняет ее в файле с расширением.CLP.

Технология DDE

Для динамического обмена данными в Windows используется разработанная для этой цели фирмой Microsoft технология DDE — "Dynamic Data exchange", что означает "динамический обмен данными".

Технология DDE опирается на связь, установленную между фрагментами одного документа, а также между документами различных приложений. Наличие такого механизма связи позволяет автоматически актуализировать данные в документе-приемнике при изменениях в источнике данных.

Важно, что DDE-связь поддерживается, пока работают приложения, между которыми эта связь установлена. При изменениях в файле-источнике следует первым запускать приложение, обрабатывающее этот файл, а затем приложение с документом-приемником. В этом случае DDE-связь будет обновляться сразу же при внесении изменений в приложении-источнике.

При макропрограммировании в WordBasic есть возможность программным путем инициировать DDE-канал между двумя приложениями, послать по этому каналу серию команд, а также послать или запросить данные от одного приложения к другому.

Технология OLE

Для связывания документов в Windows используется разработанная для этой цели фирмой Microsoft технология OLE — "Object Linking and Embedding", что означает "связывание и встраивание объектов".

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

Однако не все приложения Windows 3.1 поддерживают технику OLE. Способные к этому приложения делятся на три группы:

- OLE-серверы (приложения - источники, родительские приложения) представляют собой приложения, из которых можно встраивать объекты или связывать их с другими приложениями;

- OLE-клиенты (приложения-приемники) представляют собой приложения, которые могут размещать в своих документах встроенные или связанные объекты из OLE-серверов. Такие документы называют составными;

- приложения, которые могут выполнять роль как сервера, так и клиента одновременно.

Для встраивания или связи могут использоваться объекты самых различных форматов: текст, таблицы, рисунки, звук и т.д. Данные, вставляемые из одного OLE-приложения в другое, получают статус объекта OLE уже тогда, когда они копируются в буфер промежуточного обмена. При последующей вставке из буфера или при использовании специальной команды вставки объекта последний размещается в составном документе. Объект хранит информацию о связи с родительским приложением, поэтому при двойном щелчке мышью на объекте его родительское приложение активизируется для последующей обработки объекта.

Существуют два варианта использования OLE:

- установление связи с объектом;

- внедрение (встраивание) объекта.

Основное различие между связыванием и внедрением объектов состоит в способе хранения данных.

При использовании связи механизм OLE действует как усовершенствованный по сравнению с Windows 3.0 механизм DDE. Для этой цели OLE нуждается лишь в данных о местоположении объекта и данных, необходимых для визуального (графического) представления объекта на экране. Очевидно, что приложение-клиент не в состоянии изменить эти данные, поскольку непосредственные данные объекта продолжают физически присутствовать в родительском приложении. После их актуализации в родительском приложении представление объекта в приложении-клиенте тут же меняется. Затем файл-источник следует сохранить, чтобы сохранились и актуализированные данные объекта.

Использование такого рода связи предпочтительно тем, что она не приводит к увеличению объема составного документа. Дополнительным преимуществом связывания является возможность установления множественных связей с одним объектом — один экземпляр объекта служит при этом источником данных для многих документов.

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

Существенно то, что для внедренной копии объекта связь с ее оригиналом не поддерживается. Это означает, что изменения, внесенные впоследствии в оригинальный объект, не отразятся на внедренной копии. Редактирование внедренного объекта возможно лишь путем вызова родительского приложения; приложение-клиент не в состоянии что-либо сделать с внедренным объектом, кроме его удаления или вырезки.

Двойной щелчок по внедренному объекту активизирует цепочку связи: приложение-клиент — приложение-сервер — внедренный объект. Любые команды приложения-сервера, прерывающие процесс редактирования объекта, закрывают цепочку связи между объектом и приложением-клиентом.

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





Дата публикования: 2015-10-09; Прочитано: 236 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.009 с)...