BC/NW 2017 № 2 (31):3.1
ПРОБЛЕМАТИКА ОКОННЫХ СИСТЕМ, ОРИЕНТИРОВАННЫХ НА СЕТЕВОЕ ВЗАИМОДЕЙСТВИЕ, ДЛЯ UNIX СОВМЕСТИМЫХ ОПЕРАЦИОННЫХ СИСТЕМ
В.А. Суховерхий В.А., Абросимов Л.И.
Аннотация. На данный момент времени, большинство из существующих дистрибутивов Unix совместимых операционных систем, используют сетевую оконную систему X window system и дополнения для расширения функционала написанные с использованием фреймворков GTK+,QT с использованием API X Window System.
Оконная система X Windows System при широкой распространенности и предоставлении некоторого необходимого функционала, имеет большое количество недостатков, связанных с "возрастом" оконной системы, получившей свое последнее крупное обновление в конце 70-х годов.
Особенно актуальна проблематика сетевых оконных систем, при использовании Unix систем, для построения облачных сервисов, и при разработке интернет вещей.
В работе рассмотрена проблемы существующих решений среди сетевых оконных систем для Unix совместимых операционных систем и предложен разработанный вариант решения.
Ключевые слова: XWindow system, unix, network window system
1. Введение
На сегодняшний день, большинство дистрибутивов операционных систем, построенных на базе Unix совместимых операционных систем, используют в качестве оконной системы X Window System.
Оконная система X Windows System при сильной своей распространенности и
предоставлении некоторого необходимого функционала, имеет большое количество
недостатков связанных с "возрастом" оконной системы, получившей свое последнее
крупное обновление в конце 70-х годов.
Основные преимущества и недостатки оконной системы X Window System приведены
в таблице 1.
2. Рассмотрение особенностей применения сетевых оконных систем
Основной спектр ниш, в которых используются ЭВМ под управлением дистрибутива Unix совместимой операционной системой,использующей в качестве оконной системы X Window System, достаточно широк, но тем не менее основные ниши применения это в качестве серверного устройства или в качестве встраиваемого вычислителя.
Это выдвигает следующие требования перед эксплуатируемым оборудованием в данных сферах использования:
• Возможность удаленного взаимодействия
• Возможность распараллелить выполнение кода между клиентом и сервером
• Адаптивность графического интерфейса для различных видов клиентских устройств
• Свободное переключение между серверами
Использование любой известной на данный момент оконной системы приведет к столкновению со следующими недостатками в процессе эксплуатации дистрибутива любой современной операционной системы использующей ту или иную оконную системы.
К таким недостаткам можно отнести:
• Приоритет графической составляющей приложения над системной частью приложения.
• Ограниченность разработчика в выборе языка программирования и средств разработки
• Низкая защита от сбоев графического приложения
• Отсутствие оптимизации использования в качестве сетевого удаленного взаимодействия
Для устранения данных недостатков была разработана сетевая оконная система с применением веб технологий для Unix совместимых операционных систем.
Кроме устранения недостатков присущих остальным оконным системам, разработанная оконная система обеспечивает выполнение следующих функций:
• Возможность удаленного взаимодействия с оконной системой
• Возможность распараллелить выполнение кода между клиентом и
сервером
• Свободное переключение между серверами
• Возможность рендеринга графики с использованием видеокарты
• Адаптивность графического интерфейса для различных видов устройств
Приложения, работающие в среде выполнения разработанной сетевой оконной системе, можно разделить на два вида, веб приложения и нативные. Веб приложения представляют из себя приложения написанные на языках программирования адаптированных для веб разработки с использованиемязыка разметки HTML и запущенных как на удаленном электронно-вычислительном устройстве, так и на локальном. При отображении на экране пользователя (рабочая и служебная информация) отображаются в отдельном окне, отдельно для каждого веб приложения.
Нативные приложения можно разделить на приложения, работающие в текстовом терминале и имеющие графический интерфейс и адаптированные для работы в среде разработанной оконной системы с применением веб технологий.
Нативные приложения, предназначенные для работы в текстовом
режиме терминала, запускаются, через приложение терминал и работают в
отдельном окне, где эмулируется среда выполнения текстового терминала.
Нативные приложения, имеющие графический интерфейс и адаптированные для работы в среде разработанной оконной системы с применением веб технологий выполняются по средствам модуля ivs, разработанного, как часть сетевой оконной системы.
При запуске приложения, обладающим графическим интерфейсом, модуль оконной системы отправляет состояние и описание графического интерфейса в качестве параметра командной строки модулю ivs. После чего модуль ivs, создает файл процесса в папке "RP". Файл процесса содержит информацию о графическом состоянии процесса в актуальный момент времени выполнения приложения.
Далее часть разработанной сетевой оконной системы, отвечающая за рендеринг графического интерфейса, анализируя папку запущенных процессов, обнаружив новый файл запущенного процесса, создает новое окно, в котором производит отображение графическое интерфейса приложения согласно параметрам, содержащимся в файле запущенного процесса.
При взаимодействии с графическим интерфейсом приложения, отправляются данные через параметр командной строки приложению инициирующем запуск графического процесса. В зависимости от алгоритма работы графического приложения, приложение отправляет необходимые параметры модулю ivs для изменения графического состояния.
При нажатии на крестик окна, отправляется параметр "k", модулю ivs с названием процесса, после чего происходит удаление соответствующего файла процесса из папки запущенных процессов "RP". Вследствие чего, часть, отвечающая за рендеринг графического интерфейса, прекращает отрисовку соответствующего окна.
Данный подход, позволяет реализовать вышеперечисленные особенности разработанной сетевой оконной системы с применением веб технологий для юникс систем, и устранить недостатки существующих оконных систем.
3. Заключение
На данный момент, для устранения недостатков связанных с использованием сетевой оконной системы X Window System, была разработана сетевая оконная система с применением веб технологий для Unix совместимых операционных систем.
В дальнейшем планируется провести усовершенствование разработанной оконной системы, изменив представление информации о запущенных приложениях в виде ленточного интерфейса.
Также следующими шагами будет проведение экспериментальных испытаний подтверждающих устранение, недостатков присущих сторонним оконным системам, и разработка дистрибутива Unix совместимой операционной системы с использованием разработанной оконной системы и ее внедрение.
Литература
1. S. Garfinkel, D.Weise, S. Strassmann The UNIX-HATERS Handbook.
IDG Books Worldwide, Inc., 1994.
2. Робачевский А. М., Немнюгин С. А., Стесик О. Л. Операционная
система UNIX. — 2-е изд. — СПб.: БХВ-Петербург, 2010.
3. Эрик C. Реймонд. Искусство программирования для Unix = Art of
Unix Programming. — М.: «Вильямс», 2005.