Виртуализация: история и тренды развития

16.09.2014

В наши дни лидерами рынка виртуализации являются VMware, Microsoft, Citrix и Red Hat, однако эти компании не стояли у истоков технологии. В 1960-х годах прошлого века все начиналось с разработок специалистов таких компаний, как General Electric (GE), Bell Labs, IBM и др.

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

На заре

Виртуализация зародилась в качестве средства для расширения размеров оперативной памяти компьютеров в 60-х годах прошлого века.

В те времена речь шла о том, чтобы добиться возможности исполнения нескольких программ — первым суперкомпьютером, в котором процессы операционной системы были разделены, стал проект департамента электротехники Университета Манчестера под названием Atlas (финансировался компанией Ferranti Limited).

Суперкомпьютер Atlas

Atlas был самым быстрым суперкомпьютером своего времени. Частично это достигалось благодаря разделению системных процессов с помощью суперзвизора (компонент, отвечающий за контроль ключевых ресурсов — процессорного времени и т.д.) и компонента, осуществлявшего исполнение пользовательских программ.

Впервые в Atlas была использована виртуальная память (one-level store) — системное хранилище памяти было отделено от использовавшегося пользовательскими программами. Данные разработки стали первыми шагами по направлению к созданию уровня абстракции, использованного в дальнейшем во всех основных технологиях виртуализации.

Проект M44/44X

Следующим шагом в развитии технологий виртуализации стал проект корпорации IBM. Американские исследователи пошли дальше британских коллег и разработали концепцию «виртуальной машины», попытавшись разделить компьютер на отдельные небольшие части.

Основным компьютером был «научный» IBM 7044 (M44), на котором запускались виртуальные машины 7044 (40X) — на данном этапе виртуальные машины не симулировали полностью работу «железа».

CP/CMS

IBM работала над мейнфреймом S/360 — планировалось, что этот продукт станет заменой предыдущим разработкам корпорации. S/360 была однопользовательской системой, которая могла запускать несколько процессов одновременно.

Фокус деятельности корпорации начал меняться после 1 июля 1963 года, когда ученые Массачусетского технологического института (MIT) запустили проект MAC. Изначально сокращение системы было образовано от фразы Mathematics and Computation, показывая направленность разработки, но позднее под MAC стали понимать Multiple Access Computer («компьютер множественного доступа»).

Проект MAC получил грант от американского оборонного агентства DARPA в размере $2 млн — среди поставленных задач было проведение исследований в области операционных систем, искусственного интеллекта и теории вычислений.

Для решения некоторых из этих задач ученым MIT понадобилось компьютерное «железо», с помощью которого могли бы работать несколько пользователей одновременно. Запросы о возможности создания таких систем были отправлены в IBM, General Electric и некоторым другим вендорам.

IBM в то время не была заинтересована в создании подобного компьютера — в руководстве корпорации считали, что на рынке отсутствует спрос на такие устройства. В MIT, в свою очередь, не захотели использовать для исследований модифицированную версию S/360.

Потеря контракта стала настоящим ударом для IBM — особенно после того, как в корпорации узнали об интересе к многозадачным компьютерам со стороны Bell Labs.

Для удовлетворения нужд MIT и Bell Labs был создан мейнфрейм CP-40. Частным клиентам этот компьютер никогда не продавался и использовался лишь учеными, однако данная разработка является крайне важной вехой в истории виртуализации, поскольку именно она позднее эволюционировала в систему CP-67, которая стала первым коммерческим мейнфреймом с поддержкой виртуализации.

Операционная система CP-67 называлась CP/CMS — первые две буквы были сокращением от Control Program, а CMS — сокращением фразы Console Monitor System.

CMS была однопользовательской интерактивной операционной системой, а CP была программой, которая создавала виртуальные машины. Суть системы заключалась в запуске модуля CP на мейнфрейме — на нем запускались виртуальные машины, работающие на операционной системе CMS, с которой, в свою очередь, уже работали пользователи.

В данном проекте была впервые реализована интерактивность — ранее системы IBM могли только «съедать» поданные на вход программы и печатать результаты вычислений, в CMS появилась возможность взаимодействия с программами во время их работы.

Публичный релиз CP/CMS состоялась в 1968 году. В дальнейшем IBM создала многопользовательскую операционную среду на компьютерах IBM System 370 (1972 году) и System 390 (операционная система VM/ESA).

Проекты IBM оказали наибольшее влияние на развитие технологий виртуализации, однако были не единственными разработками в данном направлении. Среди подобных проектов были:

Зарегистрироваться