Кафедра Информационно-коммуникационных технологий

Создание базы данных функциональных аналогов Windows-программ для ОС Linux и разработка методики подбора ПО

 

МОСКВА 2009 г.


Аннотация

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


Введение

 

Актуальность выбранной темы

В настоящее время, особенно в условиях мирового экономического кризиса, многие компании сталкиваются с необходимостью снижения расходов, в том числе и расходов на программное обеспечение. Зачастую рассматривается вариант перехода на бесплатное, свободно распространяемое ПО, в связи, с чем остро встает вопрос оценки возможности такого перехода при сохранении требуемой функциональности и возникает задача минимизации издержек, связанных с переходом. Проблема оценки возможности перехода имеет давнюю историю. Существуют программы, оценивающие доступность драйверов Linux для конкретной аппаратной конфигурации. В Интернете составляются и постоянно поддерживаются в актуальном состоянии списки соответствий программ Windows и Linux. В ресурсах сети Интернет можно найти инструкции по переносу файлов при миграции с одной ОС на другую. Однако не существует программного средства, которое, по аналогии с оценкой аппаратных элементов системы осуществляет оценку программных составляющих системы. Очевидно, что такая программа может на основе анализа системы составлять скрипт для Linux, автоматически устанавливающий те программы, которые пользователь выбрал из предложенных в качестве замены установленных на его компьютере windows-программ.

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

Практическая значимость

Практическая значимость данной работы заключается в создании инструмента, позволяющего оценить возможность при переходе с ОС Windows на ОС Linux программных составляющих системы. Также автоматически устанавливающий те программы, которые пользователь выбрал из предложенных в качестве замены установленных на его компьютере windows-программ.

Обзор существующих методов и решений

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

Вспомогательные программы позволяю оценить возможность качественной адаптации после перехода. К примеру существуют программы, оценивающие доступность драйверов Linux для конкретной аппаратной конфигурации. Набор инструкций – это в большинстве случаев электронно-информационные ресурсы, в роле которых выступают форумы или сайты. Также хорошую поддержку оказывают сами разработчики ОС Linux, создавая качественную документацию на различных языках, в том числе и русском. Для данной темы существую, наборы списков соответствий, в которых сопоставлены аналоги программ ОС Windows с ОС Linux. По этим спискам можно понять, какую программу и на сколько качественно её можно заменить, но это всё нужно делать вручную, что требует определённых знаний и навыков, отсутствие чего ведёт к затрате времени. Исходя, из этого процесс возможности выбора и установки программ аналогов был автоматизирован при решении поставленной задачи.

 


1.  Технологические основы разработки

 

1.1  Как формируется список программ в ОС Windows

Windows Installer (установщик Windows) – подсистема Microsoft Windows, обеспечивающая установку программ (инсталлятор). Является компонентом Windows, начиная с Windows 2000; может доустанавливаться и на более ранние версии Windows. Вся необходимая для установки информация (иногда и вместе с устанавливаемыми файлами) содержится в установочных пакетах (installation packages), имеющих расширение.msi. Windows Installer был разработан в 1995–1998 годах и имел вначале кодовое название Darwin. Ранние версии назывались Microsoft Installer, отсюда стандартное расширение файла инсталляционного пакета – .msi. Windows Installer оказался значительным шагом вперёд по отношению к предыдущему инсталлятору Microsoft – Setup API (ACME Setup): в нём были введены возможности GUI, поддержка деинсталляции и отката в любой момент установки (включая откат во время деинсталляции), корректная работа с правами доступа в Windows и другие возможности, что сделало его сильной альтернативой различным существовавшим на рынке инсталляционным пакетам. Файл.msi представляет собой составной документ OLE (OLE compound document – в том же формате-контейнере хранятся документы Microsoft Word, Excel и т.д.), в котором содержится небольшая реляционная база данных – набор из нескольких десятков взаимосвязанных таблиц, содержащих различную информацию о продукте и процессе установки. При этом все строковые данные в базе хранятся вместе в отдельном потоке документа, а в таблицах базы на них имеются ссылки; таким образом, избегают дублирования строк, что значительно уменьшает размер базы.

Кроме базы, структура файла.msi предусматривает помещение туда пользовательских сценариев и вспомогательных DLL, если таковые требуются для установки, а также самих устанавливаемых файлов, запакованных в формате.cab. Файлы можно размещать и отдельно от пакета, в запакованном или распакованном виде (с сохранением структуры каталогов).

На этапе сбора информации Windows Installer собирает инструкции (либо путём взаимодействия с пользователем, либо программным путём) установить или удалить одну или несколько возможностей, входящих в продукт. Эти инструкции в дальнейшем формируют на основе базы данных внутренний сценарий, детально описывающий последующий этап выполнения.

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

В процессе установки Windows Installer использует реестр операционной системы, через ветку HKEY_LOCAL_MSSHINE которого можно выйти на список зарегистрированных в нём программ.

 

1.2Как устроен реестр в ОС Windows

 

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

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

Реестр Windows имеет многоуровневую структуру, состоящую из четырёх нисходящих логических ступеней. К первой, самой верхней в иерархии реестра, ступени относя так называемые ветви (Hive Keys), которые принято обозначать по их английскому наименованию аббревиатурой HKEY_, где за символом подчёркивания следует обычно название самой ветви. Всего в реестре Windows насчитывается пять ветвей:

·  HKEY_ CLASSES_ROOT – включает в себя ряд подразделов, в которых содержатся сведения о расширениях всех зарегистрированных в системе типов файлов.

·  HKEY_CURRENT_USER – содержится информация о пользователе, ведущем на компьютере текущий сеанс работы, который обслуживается реестром. В её подразделах находится информация о переменных окружения, группах программ данного пользователя, настройка «Рабочего стола», цветах экрана, сетевые соединения, принтерах и дополнительных настройках приложений.

·  HKEY_LOCAL_MSSHINE – эта ветвь, в которой содержится информация, относящаяся к операционной системе и оборудованию. Данная ветвь включает в себя наибольшее количество информации в системном реестре Windows/

·  HKEY_USER – содержит подразделы с информацией обо всех профилях пользователей данного компьютера.

·  HKEY_CURRENT_CONFIG – содержит подразделы с информацией обо всех профилях оборудования, используемого в данном сеансе работы. Профили оборудования позволяют выбрать драйвера поддерживаемых устройств для заданного сеанса работы.

Второй ступенью в иерархической системе реестра являются так называемые разделы, или ключи (Keys). В Windows нет какого-либо единого стандарта в обозначении ключей системного реестра, поэтому их имена были назначены разработчиками исходя из типа данных, представленных в нутрии ключа. Ключи отображаются в программе «Редактор» реестра в виде подпапок ветвей HKEY_. Функционально ключи можно разделить на две условные категории:

·  Определяемые системой, то есть те, имена которых назначены операционной системой.

·  Определяемые пользователем – имена этих ключей могут быть изменены администратором компьютера, и такие изменения не приведут к каким-либо фатальным последствиям.

Ступенью ниже в архитектуре реестра следует так называемые подразделы (Subkeys). Подразделы также не имеют жёстко установленных ассоциаций с какими-либо типами данных и не подчиняются никаким соглашениям, ограничивающих их наименования. Последней ступенью в иерархической структуре системного реестра является параметры (Values) – элементы реестра, содержащие саму информацию, определяющую работу операционной системы и компьютера в целом. Параметры представляют собой цепочку имя параметра – значение параметра и различаются согласно типу данных, хранимых в качестве значений.

 


Информация о работе «Создание базы данных функциональных аналогов Windows-программ для ОС Linux и разработка методики подбора ПО»
Раздел: Информатика, программирование
Количество знаков с пробелами: 40793
Количество таблиц: 1
Количество изображений: 2

Похожие работы

Скачать
114209
7
25

... и дальнейшего использования «Автоматизированной системы агентства недвижимости» на предприятии. 1.4      Постановка цели и подзадач автоматизации. Критерии достижения цели 1.4.1               Экономическая сущность задачи Экономической сущностью задачи автоматизации риэлтерской деятельности агентства недвижимости «Елена» является повышение результативности труда посредством автоматизации ...

Скачать
255323
33
27

... в помещении представлена на рисунке 4.1 Рисунок 4.1 - Схема размещения светильников в аудитории № 209. Заключение В работе проведено исследование использования программ дистанционного обучения для подготовки учебно-методической документации, описаны их положительные стороны и выявлены основные проблемы. В результате проведенного исследования разработано web-приложение "R@Learning ...

Скачать
249681
5
8

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

Скачать
515112
3
0

... СУБД; можно управлять распределением областей внешней памяти, контролировать доступ пользователей к БД и т.д. в масштабах индивидуальной системы, масштабах ограниченного предприятия или масштабах реальной корпоративной сети. В целом, набор серверных продуктов одиннадцатого выпуска компании Sybase представляет собой основательный, хорошо продуманный комплект инструментов, которые можно ...

0 комментариев


Наверх