Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПЗ_А.Парамонов.doc
Скачиваний:
18
Добавлен:
08.09.2019
Размер:
7.82 Mб
Скачать

Специальный раздел

Исполнитель / Парамонов А. В. /

Консультант / к. п. н., доцент Федотова Е. Л. /

1.Специальный раздел

1.1.Исследовательская часть

1.1.1.Типы программных средств эмуляции

Эмуляция - воспроизведение программными или аппаратными средствами, либо их комбинацией работы других программ или устройств. В настоящее время существует несколько типов программных средств эмуляции. К основным типам программной эмуляции относятся:

  • эмуляция операционных систем;

  • эмуляция процессоров;

  • эмуляция устройств.

Эмуляция операционной системы основана на эмуляции основных ее функций, к которым относятся:

  • загрузка приложений в оперативную память и их выполнение;

  • стандартизованный доступ к периферийным устройствам;

  • управление оперативной памятью;

  • управление доступом к данным на энергонезависимых носителях;

  • пользовательский интерфейс;

  • сетевые операции, поддержка стека протоколов.

За счет эмуляции основных функций операционной системы возможно создание виртуальных машин, позволяющих устанавливать и загружать новые операционные системы в рамках текущей запущенной ОС. Виртуальные машины полезны пользователям, имеющим потребность в одновременно запущенных нескольких операционных системах. Для создания виртуальной машины предназначены такие известные продукты, как VMWare, VirtualPC, VirtualBox.

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

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

1.1.2.Обзор программных средств эмуляции Microsoft Device Emulator и Android Emulator

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

Microsoft Device Emulator [7] предоставляет возможности для эмуляции мобильных устройств, работающих под управлением операционных систем Windows CE и Windows Mobile. К основным функциям данного программного средства относятся:

  • Запуск кода, скомпилированного под процессор ARM, на платформе Intel x86. Т.о. большая часть приложений, которые загружаются в устройство, могут быть запущены непосредственно на ПК;

  • реализация технологии ActiveSync, позволяющей устанавливать синхронизированную связь между устройством и ПК (в данном случае связь между программным средством и запущенным приложением);

  • встраиваемость в такие среды разработки и отладки как Visual Studio 2005, Visual Studio 2008, Visual Studio .NET 2003 и Visual C++ 4.0;

  • реализация интерфейса GAPI (Game Application Programming Interface), позволяющего разрабатывать игры для мобильных устройств.

Рис. 1.1. Внешний вид Microsoft Device Emulator.

Как видно из функций программного средства, кроме эмуляции аппаратных модулей частично реализована эмуляция процессора и программного интерфейса, являющегося частью операционной системы. Microsoft Device Emulator позволяет достаточно гибко сконфигурировать эмулируемое аппаратное обеспечение, чтобы максимально точно воспроизвести устройство, на котором будет выполняться разрабатываемое приложение. В частности, он позволяет задать такие параметры устройства, как:

  • разрешение жидкокристаллического дисплея;

  • ориентация дисплея (горизонтальная или вертикальная);

  • внешний вид устройства (некоторые варианты внешнего вида программного средства изображены на рис. Рис. 1 .1);

  • размер оперативной памяти;

  • параметры батареи;

  • связь кнопок клавиатуры разработчика и устройства и др.

Системные требования, предъявляемые программным средством к системе разработчика, представлены в табл. Таблица 1 .1. Одновременно может быть запущено несколько экземпляров эмулятора. Каждый экземпляр отдельно требует 32 мегабайта оперативной памяти в сумме с количеством памяти, заданным при его конфигурации. В связи с тем, что одновременно может быть запущено несколько экземпляров эмулятора, вместе с ним поставляется дополнительное приложение Device Emulator Manager, с помощью которого можно управлять запущенными экземплярами. Данное приложение позволяет выполнять такие действия как запуск и завершение работы данного экземпляра программного средства, конфигурация каждого экземпляра, сохранение состояния экземпляров, синхронизация с эмулятором посредством ActiveSync.

Таблица 1.1