Russian Language English Language

5 Модели и методы для организации управления ВС

5.1 Проблемы переноса современных операционных систем с реальной аппаратной платформы на виртуальную

5.2 Система автоматизации управления MBS AXAPTA и ее место на рынке ERP-систем


Экспресс информация

Редколлегия журнала

Подписка на новости

Гостевая книга

Предоставление материалов

Письмо в редакцию

На начало


2004, Номер2 ( 5)



Place for sale
Проблемы переноса современных операционных систем с реальной аппаратной платформы на виртуальную.

 

 

 

 

 

Проблемы переноса современных операционных систем с реальной аппаратной платформы на виртуальную

 

 

П.А. Рахман

 

 

(Москва, Московский Энергетический Институт, Российская Федерация)

 

 

 

 

 

 

На сегодняшний день технология виртуальных машин является одним из наиболее эффективных подходов к повышению загрузки вычислительных ресурсов корпоративной сети. Однако, применение этой технологии требует переноса серверных систем с реальной аппаратной платформы на виртуальную и здесь возникают определенные трудности. Серверные системы представляют собой операционные системы [1], на базе которых функционирует некоторое множество серверного программного обеспечения, как встроенного в ОС, так и поставляемого в виде самостоятельных программных продуктов. Серверное программное обеспечение не взаимодействует напрямую с аппаратными средствами [2], а использует функции и сервисы ОС, поскольку операционная система – это, прежде всего механизм, обеспечивающий удобный интерфейс пользователям и его приложениям, нуждающихся в некоторых вычислительных ресурсах, системах хранения данных и устройствах ввода-вывода. Использование большинства компьютеров на уровне машинного языка затруднительно, особенно это касается ввода-вывода. Например, для организации чтения блока данных с гибкого диска программист может использовать 16 различных команд, каждая из которых требует 13 параметров, таких как: номер считывающей головки на диске, номер сектора на дорожке и т.п. Когда выполнение операции с диском завершается, контроллер возвращает 23 значения, отражающих наличие и типы ошибок, которые, очевидно, необходимо анализировать. Даже если не входить в курс реальных проблем  программирования ввода-вывода, ясно то, что среди программистов нашлось бы немного желающих непосредственно заниматься программированием этих операций. При работе с диском пользователю достаточно представлять его в виде некоторого набора файлов, каждый из которых имеет имя. Работа с файлом заключается в его открытии, выполнении чтения или записи, а затем в закрытии файла. Вопросы, подобные таким, как следует ли при записи использовать усовершенствованную частотную модуляцию или в каком состоянии сейчас находится двигатель механизма перемещения считывающих головок, не должны волновать пользователя. Точно так же, как операционная система ограждает пользователей от аппаратуры дискового накопителя и предоставляет ему простой файловый интерфейс, операционная система берет на себя все низкоуровневые процедуры, связанные с обработкой прерываний, управлением таймерами и распределение оперативной памяти и т.д. Соответственно, для предоставления пользователям и приложениям гибкого и удобного интерфейса операционная системы должна обеспечивать низкоуровневое взаимодействие с аппаратными средствами. Таким образом, современные операционные системы всегда содержат некоторую машинно-зависимую часть и в той или иной степени привязаны к тому оборудованию, на котором они установлены и сконфигурированы. Соответственно, машинно-зависимая часть ОС, как минимум содержит в себе некоторые ключевые системные драйверы, предназначенные для взаимодействия с конкретной аппаратной платформой, с контроллерами дисков и т.п.

 

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

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

·     Невозможность загрузки из-за различий контроллеров дисков. Большинство ОС при установке определяет тип контроллер дисков, конфигурацию дисков и устанавливает соответствующие специфичные драйверы устройств.

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

Вышеперечисленный список проблем отнюдь не является полным, он актуален в основном для семейства ОС MS Windows 2000. Соответственно, в других ОС проблем может меньше или наоборот больше. Так, например, ОС MS Windows 95/98 гораздо “более терпима” к замене материнской платы, нежели чем ОС MS Windows 2000. Как правило, после переноса системного диска на другой компьютер ОС MS Windows 95/98 без проблем загружаются и работают. В то же время, ОС MS Windows XP к вышеуказанным трем ключевым проблем добавляет еще, так называемую проблему активации – специальный механизм, предназначенный для защиты от нелицензионного копирования – после переноса системы на другой компьютер, ОС требует повторной активации, без которой она отказывается работать. Тем не менее, существуют определенные эвристические подходы, позволяющие решить вышеперечисленные проблемы. Такие подходы, как правило, требуют глубокого знания, как аппаратных средств, так и операционных систем. В частности, что касается аппаратных платформ фирмы Intel, то встречаются следующие основные типы платформ: стандартные однопроцессорные, однопроцессорные с поддержкой технологии ACPI (Advanced Configuration and Power Interface), стандартные мультипроцессорные и мультипроцессорные с поддержкой технологии ACPI. Что касается контроллеров жестких дисков, то встречаются контроллеры для дисков с интерфейсом подключения IDE, SCSI и Serial ATA. Кроме того, есть специфичные особенности контроллеров различных производителей материнских плат, что также зачастую делает их несовместимыми. Что касается, особенностей привязок букв к разделам жестких дисков, то это зависит в основном от конкретного семейства ОС, и существуют различные подходы по устранению проблем с привязками: до переноса системы на виртуальную платформу и после переноса. Как правило, информация подобного рода содержится в специальных системных файлах (реестре) ОС.

За годы эксплуатации серверных систем автором было разработана технология переноса серверных систем с реальной аппаратной платформы на виртуальную платформу для семейства ОС MS Windows 2000. Разработанная технология успешно применяется при развертывании и реорганизации серверных парков, и она показала высокую эффективность – перенос системы с применением разработанной технологии занимает 1-2 часа, в то время как развертывание и конфигурирование серверной ОС “с нуля” может занимать от 5-8 часов до нескольких дней.

 

 

ЛИТЕРАТУРА

 

1.     Олифер В. Г., Олифер Н.А. Сетевые операционные системы. – М.: 2001

2.     Михаил Гук. Аппаратные средства IBM PC. Энциклопедия, 2-е изд. – СПб.: Издательский дом “Питер”, 2002.