Введение

Введение

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

В нашей стране UNIX был не очень распространен, и тому были свои причины. Во-первых, это существовавшая направленность на использование небольшого количества типов ЭВМ. В основном это были ЕС и СМ, на которых функционировали специально, под конкретную архитектуру разработанные, ОС, такие как ОС ЕС (IВМ 360/370), ОС РВ (RSХ-11) и РАФОС (RТ-11). Во-вторых, созданные у нас во второй половине 80-х версии UNIX (МОС для ЕС, ИНМОС и ДЕМОС для СМ) несколько запоздали. Аппаратура, на которой предполагалась их эксплуатация, морально устарела и в настоящее время практически не используется. В-третьих, до недавнего времени свободно распространяемые версии UNIX (в первую очередь Linux) не имели удобного графического интерфейса, столь привычного пользователям операционных систем семейства Windows.

Графические интерфейсы UNIX имеют давнюю историю. Первые программные разработки в этом направлении появились более 20 лет назад. Стандартом стала распределенная система X Window, которая позволяет рисовать на экране дисплея графические изображения, поддерживает концепцию окон и унифицирует работу с различными устройствами ввода-вывода на основе библиотеки Xlib. Для того чтобы облегчить программирование с применением Xlib (X11) и упростить создание пользовательских интерфейсов, существует несколько пакетов, из которых наиболее широко распространены X Toolkit Intrinsics (Xt), Athena (Xaw) и Motif (Xm). В последние годы появились два новых пакета: GTK+ и Qt, лежащих в основе популярных среди пользователей Linux графических интерфейсов GNOME и KDE.

Именно о программировании пользовательского интерфейса UNIX в системе X Window и будет идти речь в данной книге.