Новые подходы к обучению ИТ-дисциплинам будущих учителей информатики
Сушков С. А.
Информационные технологии год за годом все глубже проникают во все сферы жизни современного общества, в том числе, и в сферу образования. Одной из таких технологий, невероятно перспективной и по-настоящему эффективной, является технология виртуализации.
В широком смысле, понятие виртуализации представляет собой сокрытие настоящей реализации какого-либо процесса или объекта от истинного его представления для того, кто им пользуется. Иными словами, происходит отделение представления от реализации чего-либо.
Сам термин «виртуализация» в компьютерных технологиях появился в шестидесятых годах прошлого века вместе с термином «виртуальная машина», означающим продукт виртуализации программно-аппаратной платформы. Со времени своего появления термины «виртуализация» и «виртуальная машина» приобрели множество различных значений и употреблялись в разных контекстах.
Понятие виртуализации условно можно разделить на две фундаментально различающиеся категории: виртуализация ресурсов и виртуализация платформ. Виртуализация ресурсов, в отличие от виртуализации платформ, имеет более широкий и расплывчатый смысл и представляет собой массу различных подходов, направленных на повышение удобства обращения пользователей с системами в целом. Далее мы будем опираться в основном на понятие виртуализации платформ, поскольку связанные с этим понятием технологии, являются наиболее динамично развивающимися и эффективными.
Под виртуализацией платформ понимают создание программных систем на основе существующих аппаратно-программных комплексов. Система, предоставляющая аппаратные ресурсы и программное обеспечение, называется хостовой (host), а симулируемые ей системы – гостевыми (guest). Есть несколько видов виртуализации платформ, в каждом из которых осуществляется свой подход к понятию «виртуализация», в основном они определяются тем, насколько полно осуществляется симуляция аппаратного обеспечения:
Полная эмуляция (симуляция). При таком подходе полностью виртуализуется все аппаратное обеспечение при сохранении гостевой операционной системы в неизменном виде. Это позволяет эмулировать различные аппаратные архитектуры. Например, можно запускать виртуальные машины с гостевыми системами для x86-процессоров на платформах с другой архитектурой. Основной минус данного подхода заключается в том, что эмулируемое аппаратное обеспечение существенно замедляет быстродействие гостевой системы, что делает работу с ней очень неудобной, поэтому, кроме как для разработки системного программного обеспечения, а также образовательных целей, такой подход мало где используется. Примерами продуктов для симуляции служат: Bochs, PearPC, QEMU.
Частичная эмуляция (нативная виртуализация). В этом случае виртуализуется лишь необходимое количество аппаратного обеспечения, чтобы виртуальная машина могла быть запущена изолированно. Такой подход позволяет запускать гостевые операционные системы, разработанные только для той же архитектуры, что и у хоста. Таким образом, несколько экземпляров гостевых систем могут быть запущены одновременно. Этот вид виртуализации позволяет существенно увеличить быстродействие гостевых систем по сравнению с полной эмуляцией и широко используется в настоящее время. К минусам данного вида виртуализации можно отнести зависимость виртуальных машин от архитектуры аппаратной платформы. Примеры продуктов для нативной виртуализации: VMware Workstation, Microsoft Virtual PC, VirtualBox, Parallels Desktop и другие, в том числе серверные решения (VMware Server, Microsoft Virtual Server, VMware ESX Server, Virtual Iron, Microsoft Hyper‑V) .
Паравиртуализация. При применении паравиртуализации не симулируется аппаратное обеспечение, вместо этого, используется специальный программный интерфейс (API) для взаимодействия с гостевой операционной системой. Такой подход требует модификации кода гостевой системы. Многие сомневаются в перспективах этого подхода виртуализации, поскольку в данный момент все решения производителей аппаратного обеспечения в отношении виртуализации направлены на системы с нативной виртуализацией, а поддержку паравиртуализации приходится искать у производителей операционных систем, которые слабо верят в возможности предлагаемого им средства.
Виртуализация уровня операционной системы. Гостевая система, в данном случае, разделяет использование одного ядра хостовой операционной системы с другими гостевыми системами. Виртуальная машина представляет собой окружение для приложений, запускаемых изолированно. Данный тип виртуализации применяется при организации систем хостинга, когда в рамках одного экземпляра ядра требуется поддерживать несколько виртуальных серверов клиентов. Примеры виртуализации уровня ОС: Linux-VServer, Virtuozzo, OpenVZ, Solaris Containers и FreeBSD Jails.
Виртуализация уровня приложений. Этот вид виртуализации не похож на все остальные: если в предыдущих случаях создаются виртуальные среды или виртуальные машины, использующиеся для изоляции приложений, то в данном случае само приложение помещается в контейнер с необходимыми элементами для своей работы: файлами реестра, конфигурационными файлами, пользовательскими и системными объектами. В результате получается приложение, не требующее установки на аналогичной платформе. При переносе такого приложения на другую машину и его запуске, виртуальное окружение, созданное для программы, разрешает конфликты между ней и операционной системой, а также другими приложениями. Примером такого подхода служат: Thinstall, Altiris, Trigence, Microsoft Application Virtualization (App-V).
Говоря о технологиях виртуализации, следует вспомнить, что они создавались в первую очередь для разработки и тестирования программных приложений. Но в сфере образования преподаватели и тренеры первыми оценили новую технологию и уже с успехом используют ее несколько лет для преподавания ИТ-дисциплин. Гораздо позже, после совершенствования аппаратного обеспечения, технология виртуализации стала привлекательной для рынка серверов, и заговорили об экономии и «консолидации».
Что мы можем получить в результате внедрения технологий виртуализации как в учебный процесс, так и в сферу его управления:
1. Экономия на аппаратном обеспечении. Как известно, учебные заведения всегда испытывают дефицит в средствах на развитие и поддержание ИТ-инфраструктуры. Существенная экономия на приобретении аппаратного обеспечения происходит при размещении нескольких виртуальных серверов на одном физическом сервере.
2. Возможность поддержания старых операционных систем в целях обеспечения совместимости. При выходе новой версии операционной системы, старую версию можно поддерживать на виртуальной машине. Это также позволяет проводить занятия при изучении архитектуры ПК, запускать различные операционные системы (например, DOS) и выполнять программный код на языках низкого уровня.
3. Возможность изолировать потенциально опасные окружения. Если какое-то приложение или компонент вызывает сомнения в его надежности и защищенности, можно использовать его на виртуальной машине без опасности повредить жизненно важные компоненты системы. В этом случае, виртуальная машина выступает в роли «лаборатории», которая полностью отдается под контроль учащегося.
4. Возможность создания требуемых аппаратных конфигураций. Иногда требуется использовать заданную аппаратную конфигурацию при проверке работоспособности приложений в определенных условиях. Кроме оперирования такими параметрами как объем ОЗУ, жесткого диска и т. п., можно создавать представления устройств, которых у вас нет. Например, многие системы виртуализации позволяют создавать виртуальные SCSI диски, виртуальные многоядерные процессоры и т. п. Это может пригодиться для создания различного рода симуляций.
5. Виртуальные машины предоставляют великолепные возможности по обучению работе с операционными системами. Можно создать репозиторий готовых к использованию виртуальных машин с различными гостевыми операционными системами и запускать их по мере необходимости в целях обучения. Их можно подвергать всяческим экспериментам, поскольку в случае порчи системы, её восстановление из сохраненного состояния займет пару минут.
6. На одном хосте может быть запущено одновременно несколько виртуальных машин, объединенных в виртуальную сеть. Такая особенность предоставляет безграничные возможности по созданию моделей виртуальной сети между несколькими системами на одном физическом компьютере. Особенно это необходимо, когда требуется смоделировать некую распределенную систему, состоящую из нескольких машин.
7. Виртуальные машины повышают мобильность. Папка с виртуальной машиной может быть перемещена на другой компьютер, и там виртуальная машина может быть сразу запущена.
8. Виртуальные машины более управляемы. При использовании виртуальных машин существенно повышается управляемость в отношении создания резервных копий, создания снимков состояний виртуальных машин («snapshot») и восстановлений после сбоев.
9. Виртуальные машины могут быть организованы в «пакеты приложений». Вы можете создавать несколько виртуальных окружений для конкретного варианта использования (например, для занятий по веб-дизайну, программированию, изучению офисных пакетов и т. п.), установив в них все требуемое программное обеспечение, и разворачивать их по мере необходимости. Кроме этого, используя такие программные средства как Thinstall и Altiris Software Virtualization Solution, преподаватель может создавать пакеты виртуальных приложений (так называемые «портируемые приложения»). Виртуальные приложения не занимают места в системном реестре или файловой системе, и могут быть запущены как в компьютерной аудитории, так и на домашнем компьютере учащихся не опасаясь конфликта между установленными приложениями.
Абсолютно новые функции предложила в текущем году компания VMWare в новой версии Workstation 6.5 и Player 2.5. Одной из самых заметных технологий является механизм Unity. Пользователи, работавшие ранее с платформой Parallels Desktop, узнают в этом механизме аналог функции Coherence. Эта возможность позволяет представлять окна приложений из гостевой системы Windows в хостовой системе, как будто бы приложения нативно были в ней запущено. Чтобы использовать данную возможность, необходимо нажать кнопку «Unity» на панели инструментов VMware Workstation.

Рис.1. Механизм Unity в VMware Player 2.5.
Механизм Unity позволяет не только располагать окна приложений запущенных в гостевой системе, но также удобно представляет эти приложения в панели задач хостовой системы. Окна MS Windows XP «SQL Query Analyzer» и «Калькулятор» в хостовой системе MS Windows Vista, показываемые в режиме Unity (см. рис. 1). VMware Workstation 6.5 позволяет отображать меню Пуск гостевой системы Windows при использовании механизма Unity.
Очень востребованной функцией является «Capture Movie». Она позволяет получать видеозапись всего происходящего на экране виртуальной машины, что в свою очередь существенно облегчает создание видео-пособий и руководств, т. к. не требует установки дополнительного программного обеспечения для записи (например, TechSmith Camtasia Studio или Adobe Captivate). Стоит, конечно, отметить и присутствующие недостатки встроенной функции записи:
1. Не позволяет параллельно записывать аудиодорожку с комментариями преподавателя.
2. Отсутствуют средства аннотирования, присущие вышеперечисленным специализированным средствам.
3. Запись производится исключительно в видео-файл с использованием кодека VMnc v2 собственной разработки VMware, который необходимо предварительно устанавливать на компьютер для просмотра.
Существенным прорывом технологий виртуализации в 2008 году можно назвать включение поддержки 3D-ускорения в виртуальных средах. Раньше множество образовательных программ было невозможно запустить в виртуальном окружении, т. к. там отсутствовала поддержка графических инструкций DirectX. Теперь же WMware Workstation 6.5 и бесплатный WMware Player 2.5 поддерживают ускорение вывода графики DirectX 9 в гостевых операционных системам Windows XP и Windows 2000, в т. ч. шейдеры второй версии.
Кроме поддержки 3D-графики, новые версии продуктов WMware выгодно отличаются включением технологией Virtual machine streaming.
Virtual machine streaming – это возможность загружать операционную систему и приложения гостевой машины из сети, не дожидаясь окончания загрузки всего образа. Это очень полезно, когда на компьютерах учащихся недостаточно объема на жестких дисках для размещения всех образов виртуальных машин. В этом случае образы виртуальных машин могут располагаться централизованно в сетевом файловом хранилище, а доступ к ним осуществляться по сети.
В новые версии WMware Workstation существенно упрощен процесс создания виртуальной машины - теперь вам предложат сразу выбрать образ диска для установки и ввести некоторую информацию для установщика Windows (серийный номер, имя, организацию и пароль для учетной записи администратора), которые будут затем автоматически вставлены при инсталляции.
Как мы с вами можем убедиться, сегодня виртуализация является одной из наиболее востребованных технологий в сфере преподавания ИТ-дисциплин, причем энтузиазм преподавателей постоянно подогревается выпуском распространяемых бесплатно продуктов Microsoft и VMware, что также очень важно в русле перехода на свободное программное обеспечение средних учебных заведений.
Перечислим основные препятствия на пути эффективного использования технологий виртуализации в образовательном процессе:
1. Повышенные требования к аппаратному обеспечению компьютеров в классе. Критичной характеристикой является объем оперативной памяти, которого должно хватать для удовлетворительной работы всех запущенных одновременно гостевых систем (на практике, как правило, требуется 2 ГБайта и более). Объем жесткого диска должен позволять хранить образы всех (в том числе и неактивных) гостевых систем.
2. Использование различными производителями программного обеспечения средств защиты и лицензионных ограничений, препятствующих работе программных продуктов в виртуальной среде.
3. Снижение производительности, иногда существенное, работы программного обеспечения в виртуальных средах. Это сужает круг программных приложений, которые можно было бы виртуализовать, заставляя исключать из него ресурсоемкие приложения.
4. Отсутствие четких методик преподавания с использованием виртуальных машин. Преподаватели, как правило, самостоятельно осваивают работу с различными средствами виртуализации, экспериментируют, постепенно перенося часть практических и лабораторных занятий в виртуальную среду.
Литература:
Оти, М. Технология виртуализации [Текст] / Майкл Оти // Windows IT Pro№1. - С. 88-91.
Самойленко, А. Виртуализация: новый подход к построению IT-инфраструктуры - 20http://www. /cm/virtualization. shtml)


