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

2016-07-30СтудИзба

Описание файла

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

Онлайн просмотр документа "49939"

Текст из документа "49939"

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

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

МОСКВА 2009 г.

Аннотация

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

Введение

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

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

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

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

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

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

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

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

  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. Как устроен реестр в ОС 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) – элементы реестра, содержащие саму информацию, определяющую работу операционной системы и компьютера в целом. Параметры представляют собой цепочку имя параметра – значение параметра и различаются согласно типу данных, хранимых в качестве значений.

    1. Каким образом устанавливаются программы в ОС Linux

В ОС Linux существует два способа установки программного обеспечения:

1. Установка из исходных текстов: Этот способ заключается в том, что программа распространяется не в собранном виде, а в виде исходных кодов. Данный метод называется традиционным потому, что он был первым способом установки программ до появления менеджера RPM или аналогичных ему (apt–get). Как правило, исходный текст располагается в архиве. Обычно файл, содержащий исходный текст, имеет двойное расширение: например, tag.gz или tar.bz2. Это означает, что данный файл сжат двумя архиваторами: сначала tar, а потом gzip. Распаковывать архив нужно по принципу стека: сначала внешним архиватором, а потом внутренним. Следующий этап – это непосредственная установка программы. После успешного завершения распаковки, нужно перейти в каталог, содержащий исходные тексты и ввести три команды:

/configure – конфигурирует устанавливаемую программу для работы с системой. Также она проверяет, может ли устанавливаемая программа работать в данной системе. После успешного завершения будет создан файл Makefile. В котором указаны необходимые параметры для работы программы make.

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

make install – устанавливает программу и файлы справочной системы в соответствующие каталоги.

Одним из плюсов этого типа установки является его быстродействие.

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Нашёл ошибку?
Или хочешь предложить что-то улучшить на этой странице? Напиши об этом и получи бонус!
Бонус рассчитывается индивидуально в каждом случае и может быть в виде баллов или бесплатной услуги от студизбы.
Предложить исправление
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5140
Авторов
на СтудИзбе
441
Средний доход
с одного платного файла
Обучение Подробнее