Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Theory 2.Architecture _Unix.doc
Скачиваний:
4
Добавлен:
01.05.2025
Размер:
239 Кб
Скачать
☆

6.9. Интерфейсы Unix

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

  • Bourn-shell - один из первых командных интерпретаторов для ОС Unix

  • C-shell - командный интерпретатор, синтаксис языка которого похож на язык программирования C;

  • Korn-shell - развитие Bourn-shell

Названные командные интерпретаторы являются базовыми, на их основе существует множество версий и вариаций. Все командные интерпретаторы ОС Unix объединяют общие основные свойства, такие как:

  • работа их в режиме интерпретации;

  • возможность перенаправления ввода-вывода и конвейеризации команд;

  • возможность порождения и параллельного выполнения процессов в одном сеансе;

  • полный набор алгоритмических возможностей.

Легкость порождения новых процессов в Unix и наличие в системе большого числа утилит, выполняющих прежде всего обработку текстов, делают язык командного интерпретатора не только языком управления системой, но и языком обработки данных. Обязательные возможности командного интерпретатора и обязательный набор утилит Unix-систем определяются стандартом POSIX. Если командный язык не используется как язык программирования, то коды управляющих процедур (скриптов) не зависят от варианта командного языка.

Со временем, однако, у ОС Unix стали появляться и WIMP-интерфейсы. Основой для создания таких интерфейсов является система X Window, разработанная в Массачусетском технологическом институте. Система X Window строится по схеме клиент/сервер. Основой системы является процесс X-сервер, который выполняется на компьютере конечного пользователя и "знает" ту конкретную аппаратуру отображения, которая установлена на данном рабочем месте. X-сервер принимает и выполняет запросы от X-клиентов - программ, выполняющихся на этом же компьютере или на удаленном. Взаимодействие X-клиента и X-сервера управляется событиями. Событием в системе X является вывод X-клиентом информации на терминал или поступление внешнего события, которое принимается X-сервером, и о котором X-сервер сообщает X-клиенту. Описание двустороннего взаимодействия X-сервера и X-клиента и формата пакетов, которыми они обмениваются, составляет X-протокол. Транспортный уровень для X-протокола прозрачен. Если клиент и сервер находятся на одном компьютере, то для обмена между ними используются средства локального взаимодействия, если на разных - любые сетевые средства. Система X представляет собой совокупность программ и библиотек, таким образом, при разработке интерфейса программист может и не знать деталей X-протокола.

Консорциумом OSF принят в качестве стандарта для разработки графических интерфейсов пакет Motif, построенный на базе X Window. Пакет включает в себя менеджер окон, набор вспомогательных утилит, а также библиотеку классов. В пакете имеются также широкие возможности для создания новых графических классов.

В большинстве промышленных Unix-систем в настоящее время используется построенный на основе OSF/Motif интерфейс CDE (Common Desktop Environment), в ОС Linux применяется большое количество различных интерфейсных систем, наиболее популярные из которых - KDE и Gnome.