Xen

Поделись знанием:
(перенаправлено с «XEN»)
Перейти к: навигация, поиск
Xen

Xen с запущенными NetBSD и тремя дистрибутивами Linux
Тип

Сервер виртуализации

Разработчик

The Xen Project, XenSource, Inc.

Написана на

C[1]

Операционная система

Linux, OpenSolaris, BSD

Первый выпуск

2003 (2003)

Последняя версия

4.6[2] (14 октября 2015)

Лицензия

GNU GPL

Сайт

[xenproject.org ect.org]

XenXenК:Программное обеспечение, разработанное в 2003 году

Xen (произн. /ˈzɛn/) — кроссплатформенный гипервизор, разработанный в компьютерной лаборатории Кембриджского университета и распространяемый на условиях лицензии GPL. Основные особенности: поддержка режима паравиртуализации помимо аппаратной виртуализации, минимальность кода самого гипервизора за счёт выноса максимального количества компонентов за пределы гипервизора.





История

Xen начинался как исследовательский проект Кембриджского университета под руководством Иэна Прэтта (Ian Pratt), ставшего в дальнейшем основателем компании XenSource. Компания поддерживала разработку версии с открытым исходным кодом (xen) и параллельно продавала коммерческие версии программного обеспечения, называвшиеся XenServer и XenEnterprise.

Первый публичный релиз Xen выпущен в 2003 году. В октябре 2007 Citrix купила XenSource и осуществила переименование продуктов:

  • XenExpress в «XenServer Express Edition» (встроенная версия гипервизора стала называться «XenServer OEM Edition»)
  • XenServer в «XenServer Standard Edition»
  • XenEnterprise в «XenServer Enterprise Edition»

В дальнейшем они были переименованы в XenServer (Free), Essentials for XenServer Enterprise, и Essentials for XenServer Platinum.

22 октября 2007 Citrix завершила поглощение XenSource[3], и свободный проект переехал на сайт xen.org.

21 октября 2009 Citrix объявила, что коммерческие версии XenServer станут полностью свободными[4]. Саймон Кросби (Simon Crosby), главный инженер подразделения Citrix по виртуализации заявил: «XenServer 100 % бесплатен и его исходные коды будут полностью открыты в ближайшее время. Мы вообще не планируем получение прибыли [с этого]»[5]). Хотя существует свободная версия Citrix XenServer, для XenCenter (программного обеспечения для централизованного управления) не предоставляется исходных кодов, хотя она доступна бесплатно для загрузки.

15 апреля 2013 Xen перешел под крыло Linux Foundation [blog.xen.org/index.php/2013/04/15/xen-is-now-a-linux-foundation-collaborative-project/]

История версий

Версия Дата выпуска Примечания
1.0 2003.10.02[6][7]
2.0 2004.11.05[8] Живая миграция для паравиртуальных гостевых машин
3.0 2005.12.05[9][10]
  • Поддержка Intel-VT для гостевых систем HVM.
  • Поддержка архитектуры Intel IA64.

Версия 3.0.4 также добавила:

  • Поддержка расширения AMD-V .[11]
  • Поддержка архитектуры PowerPC.[12]
  • Поддержка графического фреймбуфера для паравиртуализированных гостевых систем.[13]
3.1 2007.05.18[14] Живая миграция для гостевых систем HVM, поддержка XenAPI
3.2 2008.01.17[15] «Проброс» PCI, режим «сна» ACPI S3.
3.3 2008.08.24[16] Улучшения «проброса» PCI и управление электропитанием.
3.4 2009.05.18[17] Содержит первую версию «Xen Client Initiative» (XCI).
4.0 2010.04.07[18] Позволяет использовать ядра Linux как dom0, с использованием нового механизма PVOps.[19]
4.1 2011.03.25[20] Поддержка более чем 255 процессоров, улучшение стабильности.([21]).
4.2 2012.09.17[22] Поддержка 4095 физических (и до 512 виртуальных) процессоров, поддержка нескольких сегментов PCI, улучшение безопасности и документации.([23]).
4.3 2013.07.09[24] Экспериментальная поддержка ARM. Учёт в планировщике особенностей архитектуры NUMA. Поддержка Open vSwitch.
4.4 2014.03.10[25] Поддержка ARM получила статус стабильной. Поддержка libxl библиотекой libvirt. Новый масштабируемый интерфейс для каналов событий. Поддержка создания вложенных виртуальных окружений на оборудовании Intel. Убрана поддержка x86 32-bit и ia64 (itanium) гипервизоров.
4.5 2015.01.15[26] Toolstack теперь переписан на С и называется xl или libxl, полностью заменив старый toolstack xend, который был написан на python.
4.6 2015.10.14[2]

Области применения

Технология виртуальных машин позволяет расширить функциональность оборудования следующими способами:

  • Виртуальная машина обладает производительностью, сравнимой с реальной.
  • Возможность миграции запущенной виртуальной машины между физическими машинами.
  • Хорошая поддержка оборудования (поддерживается большинство драйверов устройств Linux)
  • Возможность создания песочницы, перезагружаемые драйверы устройств.

Терминология

Основной концепцией гипервизора является домен. Доменом называется запущенная копия виртуальной машины. Если виртуальная машина перезагружается, то её домен завершается (в момент перезагрузки) и появляется новый домен. Более того, даже при миграции содержимое копируется из одного домена в другой домен. Таким образом, за время своей жизни практически все виртуальные машины оказываются по очереди в разных доменах. Xen оперирует только понятием домена, а понятие «виртуальной машины» появляется на уровне администрирования (прикладных программ, управляющих гипервизором).

Домены бывают нескольких типов. Самые известные dom0 и domU. dom0 — первый запущенный Xen домен, обычно он автоматически создаётся и загружается сразу после загрузки и инициализации гипервизора. Этот домен имеет особые права на управление гипервизором и по умолчанию всё аппаратное обеспечение компьютера доступно из dom0. Фактически, dom0 — это место жизни ПО, управляющего Xen . dom0 всегда один.

domU — рядовой домен (сокращение от User domain), содержащий в себе домен выполняющихся виртуальных машин. Обычно не имеет доступа к реальному оборудованию и является «полезной нагрузкой» системы виртуализации. В отличие от dom0, domU может быть множество (обычно несколько десятков).

stub-domain — домен, в котором запущена очень специализированная ОС, обеспечивающая работу с каким-либо оборудованием или бэк-эндом драйвера. Является развитием модели безопасности Xen.

domain builder (конструктор доменов) — программа, которая создаёт domU (загружает в него нужный код и сообщает гипервизору о необходимости запуска). Помимо конструирования домена, обычно занимается подключением и конфигурированием виртуальных устройств, доступных для виртуальной машины. Она же отвечает за процесс миграции виртуальной машины с хоста на хост.

Технологии

Паравиртуализация

Паравиртуализация — адаптация ядра исполняемой ОС для работы совместно с Xen, обычно сокращается до PV. Позволяет достичь очень высокой производительности за счёт отсутствия эмуляции «настоящего железа», простоты интерфейсов и учёта существования гипервизора при выполнении системных вызовов в коде ядра. Выполнение привилегированных операций запрещено, вместо них совершаются гипервызовы (англ. hypercalls) — обращения ядра гостевой ОС к гипервизору с просьбой о выполнении тех или иных операций. В большинстве случаев изменения при портировании ОС под Xen затрагивают только ядро ОС, хотя могут предполагать и незначительные изменения в системных библиотеках (например, libc). Процесс адаптации к Xen очень похож на портирование для новой платформы, однако значительно проще ввиду простоты реализации «гостевой» части драйвера (драйверы в Xen состоят из двух частей — одна исполняется вне виртуальной машины, вторая находится внутри неё. Часть драйвера в гостевой системе крайне примитивна и служит лишь транслятором запросов во вторую часть. Это сделано преднамеренно для простоты портирования ОС под Xen). В PV-режиме не поддерживаются «вложенные» режимы работы процессора, такие как real-86, virtual-86, переключение между 32-битным и 64-битным режимом, поддержка эмуляции аппаратной виртуализации и т. д. В связи с этим в PV-режиме отсутствует начальный фрагмент загрузки компьютера (с имитацией кода BIOS, загрузчика и т. д.), а ядро гостевой системы сразу же запускается в нужном режиме, подобно тому, как запускаются обычные программы. В связи с этим, в частности, сам Xen не может работать в PV-режиме (то есть невозможно запустить «вложенный» гипервизор в PV-режиме).

Аппаратная виртуализация

В режиме аппаратной виртуализации (HVM) гостевая ОС не «знает» про существование гипервизора. Xen с помощью модулей из QEMU эмулирует реальное аппаратное обеспечение и позволяет провести начальную загрузку ОС. По её окончании для нормальной производительности должны запускаться PV-драйверы, которые реализуют быстрый интерфейс с виртуальными устройствами, подобно тому, как это работает в PV-режиме). Поскольку большинство привилегированных операций эмулируется, возможен запуск Xen в HVM-режиме из-под Xen. В этом случае вложенный гипервизор сможет работать только в PV-режиме.

Минимизация функций гипервизора

Гипервизор Xen (для версии 3.4) реализует минимальный набор операций для управления оперативной памятью, состоянием процессора, таймерами реального времени и счётчиками тактов (TSC) процессора, прерываниями и контролем за DMA. Все остальные функции, такие как реализация дисковых и блочных устройств, создание и удаление виртуальных машин, их миграция между серверами и т. д. реализуется в управляющем домене. За счёт этого размер гипервизора получается весьма малым (для версии 3.4 размер двоичного кода всего гипервизора меньше 600 КБ), так же как и размер его исходного текста. По замыслу авторов это увеличивает устойчивость системы виртуализации, так как ошибка в компонентах вне гипервизора не приводит к компрометации/повреждению самого гипервизора и ограничивает повреждения только вышедшим из строя компонентом, не мешая работать остальным.

Все функции, связанные с обеспечением работы сети, блочных (дисковых) устройств, эмуляции видеоадаптеров и прочих устройств вынесены за пределы гипервизора. Большинство таких устройств состоит из двух частей: драйверы в domU и программы в dom0. Драйвер (чаще всего встроенный в ядро ОС или загружающийся в виде модуля) реализует минимальный объём работы, фактически, транслируя запросы от ОС в программу в dom0. Программа в dom0 выполняет основную часть работы. При этом программа чаще всего запускается в виде отдельного процесса для каждого обслуживаемого устройства. Сбой в такой программе ведёт к сбою только одного устройства (блочного, сетевого) и не затрагивает работу других копий программы (то есть не затрагивает сетевые/блочные устройства остальных доменов, или даже другие устройства того же самого домена).

Традиционно используется следующая терминология: frontend — часть модуля, находящегося в domU, backend — часть, находящаяся в dom0. Для некоторых типов устройств backend часть может быть различной при сохранении одной и той же frontend части. Например, драйвер блочного устройства может иметь backend в форме программы работы с VHD-образами, с блочными устройствами, с iscsi-инициатором и т. д.

Междоменное взаимодействие

Xen предоставляет доменам три механизма взаимодействия: один — с гипервизором (hypercalls), и два между доменами. Чаще всего, взаимодействие происходит между dom0 и domU, хотя модель допускает взаимодействие и между двумя domU.

Междоменное взаимодействие сводится к двум видам: events (события) и shared mem (общий доступ к памяти). Третий вариант — передача страницы памяти, является частным случаем общего доступа к памяти.

Events служат примерно для того же, для чего служат прерывания в архитектуре x86 или сигналы в Unix — быстрая синхронная или асинхронная передача сигнала о наступлении какого-то события. Общий доступ к памяти обеспечивает возможность передачи значительных объёмов информации, а события — скорость передачи.

События могут быть маскированными и немаскированными. Немаскированные события вызывают callback (вызов функции, адрес которой передан ранее) и позволяют обрабатывать событие сразу же по факту его возникновения. Маскированные события лишь устанавливают флаг о том, что событие произошло, а обработчик периодически смотрит, произошло ли событие (одно или более). Второй метод позволяет не вызывать callback по каждому событию и в случае частых событий существенно снижает время обработки. Напротив, первый вариант (с вызовом callback) позволяет увеличить скорость обработки события, которое, возможно, происходит не слишком часто, но требует немедленной реакции.

Миграция виртуальных машин

Xen (с помощью стека управления) поддерживает миграцию гостевых виртуальных машин по сети. Миграция паравиртуальных машин поддерживается с версии Xen 2, а HVM – с версии 3. Миграция может происходить с выключением гостевой системы, или прямо в процессе работы, так называемая «живая» миграция (англ. live migration) без потери доступности.

Необходимо, чтобы оба физические сервера Xen видели одно и то же хранилище, на котором находятся данные виртуальной машины. Это требуется потому, что при миграции виртуальной машины её файловая система не копируется, так как это требовало бы слишком много времени даже в случае быстрой сети. Общее хранилище может быть организовано на основе различных технологий SAN или NAS, например Fibre Channel, iSCSI или DRBD.

Toolstack

В связи с тем, что сам гипервизор (около 500—600 КБ) реализует только «ядро» системы, вся остальная функциональность выносится на прикладной уровень, работающий в dom0. Набор программ, реализующий функциональность за пределами Xen называют англ. toolstack (устоявшегося перевода не имеется, иногда используется термин «стек управления»).

Существуют две версии toolstack для Xen: основанная на xend (входит в большинство поставок Xen) и основанная на xapi (входит в состав Citrix XenServer и Xen Cloud Platform). Xend развивался одновременного с Xen, написан на Python и с самого начала шёл под открытой лицензией. Xapi был проприетарной разработкой Xensource (в дальнейшем Citrix), но в 2009 году был опубликован под лицензией GPL. Xapi написан на OCaml, на момент написания имел меньший набор возможностей, но работал более стабильно.

В версии 4.5 xend, написанный на python, был заменён на xl/libxl, написанном на C.

В обеих версиях toolstack присутствуют следующие утилиты:

  • xenstored — демон, реализующий интерфейс XenStore – простая древовидная база данных, напоминающая procfs . В xapi-toolstack XenStore переписан на ocaml, но реализует ту же самую функциональность.
  • xenconsoled — демон, обеспечивающий в dom0 доступ к консолям виртуальных машин. Xenconsoled реализует бэкэнд консольного устройства для domU и использует API unix98 для создания псевдотерминалов в dom0. Соответствие между номером псевдотерминала и виртуальной машиной записывается в XenStore.

Toolstack обеспечивает управление виртуальными машинами (создание/удаление, запуск/останов, миграция, подключение ресурсов и т.д). Кроме этого, инструментарий обеспечивает управление ресурсами для крупномасштабных систем: создаёт и поддерживает репозитории хранения образов дисков виртуальных машин (SR — storage repository), поддерживает пулы серверов для миграции виртуальных машин и может управлять сложными конфигурациями локальной сети, в том числе с поддержкой VLAN. Кроме того, поддерживается интерфейс удаленного управления XenApi на основе XML-RPC[27].

Использование

Xen с каждым днем поддерживает всё больше и больше платформ.

Хост-системы

Являясь гибридным гипервизором типа 1, Xen запускается непосредственно на аппаратной платформе, но для своей работы требует управляющей операционной системы в dom0. Xen поддерживает процессоры, начиная от Pentium II, имеются версии для архитектур x86-64, PowerPC, Itanium (до версии 4.4) и ARM (стабильна с версии 4.4). Загрузка Xen осуществляется начальным загрузчиком типа GRUB или подобным. Непосредственно после загрузки Xen запускает операционную систему в dom0.

В большинстве инсталляций в качестве ОС управляющего домена dom0 используется Linux. Долгое время поддержка Xen не была включена в официальное ядро Linux и существовала в виде набора патчей для ядра v2.6.18. Начиная с v2.6.37 в ядре Linux появился механизм pv_ops для взаимодействия с гипервизорами[28]. Данный механизм позволяет ядру работать как в паравиртуальном режиме, так и непосредственно на железе. Начиная с версии Xen 4.0 поддерживает механизм pv_ops для ядра Linux в dom0[29]. Ядра Linux 3.0 выше также полностью поддерживает Xen и для dom0 и для domU[30].

Также в качестве dom0 могут работать следующие операционные системы:

  • Основанные на OpenSolaris дистрибутивы могут работать как dom0 так и domU начиная с версии Nevada build 75 и выше.
  • На 2009 поддержка OpenBSD существовала, но требовала исправления некоторых ошибок перед релизом[31]
  • NetBSD 3.x. включает в себя поддержку dom0 для Xen 2, поддержка Xen 3.0 доступна начиная с NetBSD 4.0. Поддержка Xen 4 стартовала в NetBSD 5[32][33]

Гостевые системы

Большинство операционных систем могут быть запущены в режиме аппаратной виртуализации HVM, однако для достижения высокой скорости исполнения применяется технология паравиртуализации. Следующие гостевые операционные системы могут быть запущены в паравиртуальном режиме в domU:

  • Большинство дистрибутивов Linux
    • Debian Lenny, Debian Squeeze, Debian Wheezy
    • Ubuntu 10.04, 11.04, 12.04
    • RedHat Enterprise Linux 4, 5, 6 (версия 6 поддерживает Xen только в качестве гостя)
    • Oracle Linux 5, 6
    • Fedora 14, 15, 16
    • SLES 10, 11
  • NetBSD: NetBSD 2.0 поддерживает Xen 1.2, NetBSD 3.0 – Xen 2.0, NetBSD 3.1 – Xen 3.0, NetBSD 5.0 – Xen 3.3 [34]
  • FreeBSD[35]: i386 - в режимах PV и HVM, а amd64 пока только в режиме HVM.

Порты других операционных систем, таких как Plan 9 также находятся в работе. Ожидается, что для всех этих операционных систем будут выпущены официальные порты для Xen (как это случилось для NetBSD).

Операционные системы семейства Microsoft Windows могут быть запущены в режиме полной виртуализации HVM начиная с Xen 3 на процессорах с поддержкой аппаратной виртуализации. В этом случае виртуальные устройства (диски, сеть) эмулируются с помощью специальной версии QEMU. Для ускорения работы Windows могут применяться так называемые паравиртуальные драйверы. В отличие от Linux в паравиртуальном режиме, ядро системы Windows не подвергается изменениям и работает в режиме аппаратной виртуализации, однако драйверы устройств обращаются напрямую к Xen (через HyperCalls), минуя слой эмуляции QEMU. Существует разработка GPL'ed Paravirtualisation drivers for Windows, а продукты Citrix XenServer и Oracle VM содержат в своем составе подписанные паравиртуальные драйверы Windows.

Облачные системы

Xen широко применяется как компонент виртуализации в облачных вычислениях и при организации служб выделенных частных серверов. Такие хостинговые компании как Amazon Elastic Compute Cloud, Liquid Web, Fujitsu Global Cloud Platform,[36] Linode, SparkNode[37] и Rackspace Cloud используют Xen как гипервизор виртуальных машин.

В настоящее время[уточнить] сообщество Xen разрабатывает Xen Cloud Platform (XCP) — систему серверной виртуализации. Своё происхождение XCP ведет от бесплатной версии Citrix XenServer и выпускается полностью под GNU GPL.

Коммерческие продукты

На основе Xen создано несколько коммерческих продуктов для консолидации серверов. В частности это такие продукты как:

  • Citrix XenServer — коммерческий продукт, имеется также бесплатная версия XenServer, в которой отключены некоторые функции. Стек управления — на основе xapi, имеется внешняя программа управления Citrix XenCenter.
  • Virtual Iron С 2009 года права на продукт принадлежат корпорации Oracle, с июня 2009 года продукт не развивается и не поставляется заказчикам.
  • Sun xVM — первоначально Sun xVM hypervisor и Sun xVM Server — на основе кода гипервизора Xen для OpenSolaris. С мая 2009 года разработка xVM Server ведется в рамках проекта Xen/OpenSolaris.
  • Red Hat Enterprise Linux версии 5 (RHEL5) включает в себя опцию Virtualization на основе гипевизора Xen и стека управления xend. Для управления используются virt-manager или libvirt/virsh. В RHEL6 для виртуализации Xen не используется, вместо него применяется KVM, но имеется поддержка Xen в domU.
  • Oracle VM[38] — Продукт включает Oracle VM Server for x86 и Oracle VM Manager. Сервер и менеджер бесплатны и доступны для скачивания. Стек управления на основе xend Для управления сервером на него устанавливается специальный Oracle VM Agent (ovs-agent). Manager представляет собой клиент-серверное приложение на основе WebLogic и позволяет управлять серверами виртуализации из браузера.
  • Oracle Linux подобно Red Hat Enterprise Linux содержит виртуализацию на основе Xen для версии 5 и KVM для версии 6.
  • SUSE Linux Enterprise Server версий SLES10 и SLES11 поддерживают Xen или KVM на выбор.

Напишите отзыв о статье "Xen"

Примечания

  1. [freshmeat.net/projects/xen Xen | freshmeat.net]
  2. 1 2 [blog.xenproject.org/2015/10/13/xen-4-6/ Best Quality and Quantity of Contributions in the New Xen Project 4.6 Release]
  3. [www.citrix.com/English/NE/news/news.asp?newsID=683171 Citrix Systems » Citrix Completes Acquisition of XenSource]. Citrix Systems (12 июля 2007). [www.webcitation.org/65TL5wXqK Архивировано из первоисточника 15 февраля 2012].
  4. [www.virtualization.info/2009/10/citrix-to-fully-open-source-xenserver.html virtualization.info | Citrix to fully open source XenServer — UPDATED]
  5. «XenServer is 100 % free, and also shortly fully open sourced. There is no revenue from it at all.»
  6. [sourceforge.net/mailarchive/message.php?msg_id=5533663 SourceForge.net: Xen:]
  7. [lwn.net/Articles/52033/ The first stable Xen release [LWN.net]]
  8. [lwn.net/Articles/109789/ Xen 2.0 released [LWN.net]]
  9. [lwn.net/Articles/162841/ Xen 3.0 released [LWN.net]]
  10. [web.archive.org/web/20051210024853/www2.getxen.com/news/pr120505b.html XenSource: Press Releases]
  11. lists.xensource.com/archives/cgi-bin/mesg.cgi?a=xen-users&i=A95E2296287EAD4EB592B5DEEFCE0E9D4BA296%40liverpoolst.ad.cl.cam.ac.uk
  12. [lists.xensource.com/archives/html/xen-devel/2006-10/msg00733.html [Xen-devel] Xen 3.0.3 released! — Xen Source]
  13. [lists.xensource.com/archives/html/xen-devel/2006-12/msg00889.html [Xen-devel] FW: Xen 3.0.4 released! — Xen Source]
  14. [lists.xensource.com/archives/html/xen-announce/2007-05/msg00002.html [Xen-devel] Xen 3.1 released! — Xen Source]
  15. [vmblog.com/archive/2008/01/17/xen-3-2-0-officially-released.aspx Xen 3.2.0 Officially Released : VMblog.com — Virtualization Technology News and Information for Everyone]
  16. [www.h-online.com/newsticker/news/item/Xen-3-3-0-hypervisor-ready-for-download-737027.html Xen 3.3.0 hypervisor ready for download — The H: Security news and Open source developments]
  17. [community.citrix.com/display/ocb/2009/05/18/Xen.org+Announces+Release+of+Xen+3.4+Hypervisor Xen.org Announces Release Of Xen 3.4 Hypervisor | Citrix Blogs]
  18. [www.h-online.com/open/news/item/Virtualisation-Xen-is-looking-to-catch-up-by-releasing-version-4-974405.html Virtualisation: Xen is looking to catch up by releasing version 4 — The H Open Source: News and Features]
  19. www.xen.org/files/Xen_4_0_Datasheet.pdf
  20. [blog.xen.org/index.php/2011/03/25/xen-4-1-releases/ Xen 4.1 releases — blog.xen.org]
  21. [wiki.xensource.com/xenwiki/XenParavirtOps XenParavirtOps — Xen Wiki]
  22. [blog.xen.org/index.php/2012/09/17/xen-4-2-0-released/ Xen 4.2 Released — blog.xen.org]
  23. [wiki.xen.org/wiki/Xen_Release_Features Xen Release Features — Xen Wiki]
  24. [blog.xen.org/index.php/2013/07/09/xen-4-3-0-released/ Xen 4.3 released! — blog.xen.org]
  25. [blog.xen.org/index.php/2014/03/10/xen-4-4-released/ Xen 4.4 Released — blog.xen.org]
  26. [blog.xenproject.org/2015/01/15/less-is-more-in-the-new-xen-project-4-5-release/ Less is More in the New Xen Project 4.5 Release]
  27. [wiki.xensource.com/xenwiki/XenApi XenApi]
  28. [wiki.xensource.com/xenwiki/XenParavirtOps XenParavirtOps - Xen Wiki]
  29. [blog.xen.org/index.php/2009/09/22/xen-org-and-the-saga-of-the-pvops-dom0-kernel/ Xen.org and the Saga of the PVOps Dom0 Kernel – blog.xen.org]
  30. [blog.xen.org/index.php/2011/06/02/xen-celebrates-full-dom0-and-domu-support-in-linux-3-0/ Xen celebrates full Dom0 and DomU support in Linux 3.0 – blog.xen.org]
  31. [marc.info/?l=openbsd-misc&m=116955702618902 MARC: Mailing list ARChives]
  32. [www.netbsd.org/Ports/xen/ NetBSD/xen]
  33. [www.netbsd.org/ports/xen/howto.html NetBSD/xen Howto]
  34. [www.netbsd.org/ports/xen/ NetBSD/xen]
  35. [wiki.freebsd.org/FreeBSD/Xen FreeBSD/Xen port]
  36. Suzanne Tindal. [m.zdnetasia.com/fujitsu-s-global-cloud-launches-in-aus-62207108.htm Fujitsu's global cloud launches in Aus]. ZDNet Australia (28 февраля 2011). [www.webcitation.org/6BUMkIwM3 Архивировано из первоисточника 17 октября 2012].
  37. [sparknode.com/ sparknode.com]
  38. [www.oracle.com/ru/corporate/press/press-release-ru-sep7-2011-487691-ru.html Oracle представляет Oracle VM 3.0]

Ссылки

  • [www.cl.cam.ac.uk/Research/SRG/netos/xen/ Официальный сайт группы разработки в Университете Кэмбриджа]  (англ.)
  • [www.xensource.com Сайт Xen Source]  (англ.)
  • [www.virtualiron.com Сайт Virtual Iron] (англ.)
  • [www.vmgu.ru/citrix-xen Виртуализация Citrix Xen на vmgu.ru]
  • [xgu.ru/wiki/Xen Xen на Xgu.ru]
  • [wiki.debian.org/ru/Xen Xen в wiki проекта Debian]
  • [www.ixbt.com/cm/virtualization-xen.shtml Виртуальные машины на платформе Xen], ixbt.com, 13 сентября 2007
  • [mannix.ru/debian-linux/ustanovka-xen-na-debian-5-0-4-lenny-i-vozmozhnye-problemy.html Установка Xen на Debian]
  • [opensolaris.org/os/community/xen/ OpenSolaris Community: Xen]  (англ.)

Отрывок, характеризующий Xen

– Нет, ну что вы его, старика, расстроите! – сказала графиня, – да и негде повернуться у него. Уж ехать, так к Мелюковым.
Мелюкова была вдова с детьми разнообразного возраста, также с гувернантками и гувернерами, жившая в четырех верстах от Ростовых.
– Вот, ma chere, умно, – подхватил расшевелившийся старый граф. – Давай сейчас наряжусь и поеду с вами. Уж я Пашету расшевелю.
Но графиня не согласилась отпустить графа: у него все эти дни болела нога. Решили, что Илье Андреевичу ехать нельзя, а что ежели Луиза Ивановна (m me Schoss) поедет, то барышням можно ехать к Мелюковой. Соня, всегда робкая и застенчивая, настоятельнее всех стала упрашивать Луизу Ивановну не отказать им.
Наряд Сони был лучше всех. Ее усы и брови необыкновенно шли к ней. Все говорили ей, что она очень хороша, и она находилась в несвойственном ей оживленно энергическом настроении. Какой то внутренний голос говорил ей, что нынче или никогда решится ее судьба, и она в своем мужском платье казалась совсем другим человеком. Луиза Ивановна согласилась, и через полчаса четыре тройки с колокольчиками и бубенчиками, визжа и свистя подрезами по морозному снегу, подъехали к крыльцу.
Наташа первая дала тон святочного веселья, и это веселье, отражаясь от одного к другому, всё более и более усиливалось и дошло до высшей степени в то время, когда все вышли на мороз, и переговариваясь, перекликаясь, смеясь и крича, расселись в сани.
Две тройки были разгонные, третья тройка старого графа с орловским рысаком в корню; четвертая собственная Николая с его низеньким, вороным, косматым коренником. Николай в своем старушечьем наряде, на который он надел гусарский, подпоясанный плащ, стоял в середине своих саней, подобрав вожжи.
Было так светло, что он видел отблескивающие на месячном свете бляхи и глаза лошадей, испуганно оглядывавшихся на седоков, шумевших под темным навесом подъезда.
В сани Николая сели Наташа, Соня, m me Schoss и две девушки. В сани старого графа сели Диммлер с женой и Петя; в остальные расселись наряженные дворовые.
– Пошел вперед, Захар! – крикнул Николай кучеру отца, чтобы иметь случай перегнать его на дороге.
Тройка старого графа, в которую сел Диммлер и другие ряженые, визжа полозьями, как будто примерзая к снегу, и побрякивая густым колокольцом, тронулась вперед. Пристяжные жались на оглобли и увязали, выворачивая как сахар крепкий и блестящий снег.
Николай тронулся за первой тройкой; сзади зашумели и завизжали остальные. Сначала ехали маленькой рысью по узкой дороге. Пока ехали мимо сада, тени от оголенных деревьев ложились часто поперек дороги и скрывали яркий свет луны, но как только выехали за ограду, алмазно блестящая, с сизым отблеском, снежная равнина, вся облитая месячным сиянием и неподвижная, открылась со всех сторон. Раз, раз, толконул ухаб в передних санях; точно так же толконуло следующие сани и следующие и, дерзко нарушая закованную тишину, одни за другими стали растягиваться сани.
– След заячий, много следов! – прозвучал в морозном скованном воздухе голос Наташи.
– Как видно, Nicolas! – сказал голос Сони. – Николай оглянулся на Соню и пригнулся, чтоб ближе рассмотреть ее лицо. Какое то совсем новое, милое, лицо, с черными бровями и усами, в лунном свете, близко и далеко, выглядывало из соболей.
«Это прежде была Соня», подумал Николай. Он ближе вгляделся в нее и улыбнулся.
– Вы что, Nicolas?
– Ничего, – сказал он и повернулся опять к лошадям.
Выехав на торную, большую дорогу, примасленную полозьями и всю иссеченную следами шипов, видными в свете месяца, лошади сами собой стали натягивать вожжи и прибавлять ходу. Левая пристяжная, загнув голову, прыжками подергивала свои постромки. Коренной раскачивался, поводя ушами, как будто спрашивая: «начинать или рано еще?» – Впереди, уже далеко отделившись и звеня удаляющимся густым колокольцом, ясно виднелась на белом снегу черная тройка Захара. Слышны были из его саней покрикиванье и хохот и голоса наряженных.
– Ну ли вы, разлюбезные, – крикнул Николай, с одной стороны подергивая вожжу и отводя с кнутом pуку. И только по усилившемуся как будто на встречу ветру, и по подергиванью натягивающих и всё прибавляющих скоку пристяжных, заметно было, как шибко полетела тройка. Николай оглянулся назад. С криком и визгом, махая кнутами и заставляя скакать коренных, поспевали другие тройки. Коренной стойко поколыхивался под дугой, не думая сбивать и обещая еще и еще наддать, когда понадобится.
Николай догнал первую тройку. Они съехали с какой то горы, выехали на широко разъезженную дорогу по лугу около реки.
«Где это мы едем?» подумал Николай. – «По косому лугу должно быть. Но нет, это что то новое, чего я никогда не видал. Это не косой луг и не Дёмкина гора, а это Бог знает что такое! Это что то новое и волшебное. Ну, что бы там ни было!» И он, крикнув на лошадей, стал объезжать первую тройку.
Захар сдержал лошадей и обернул свое уже объиндевевшее до бровей лицо.
Николай пустил своих лошадей; Захар, вытянув вперед руки, чмокнул и пустил своих.
– Ну держись, барин, – проговорил он. – Еще быстрее рядом полетели тройки, и быстро переменялись ноги скачущих лошадей. Николай стал забирать вперед. Захар, не переменяя положения вытянутых рук, приподнял одну руку с вожжами.
– Врешь, барин, – прокричал он Николаю. Николай в скок пустил всех лошадей и перегнал Захара. Лошади засыпали мелким, сухим снегом лица седоков, рядом с ними звучали частые переборы и путались быстро движущиеся ноги, и тени перегоняемой тройки. Свист полозьев по снегу и женские взвизги слышались с разных сторон.
Опять остановив лошадей, Николай оглянулся кругом себя. Кругом была всё та же пропитанная насквозь лунным светом волшебная равнина с рассыпанными по ней звездами.
«Захар кричит, чтобы я взял налево; а зачем налево? думал Николай. Разве мы к Мелюковым едем, разве это Мелюковка? Мы Бог знает где едем, и Бог знает, что с нами делается – и очень странно и хорошо то, что с нами делается». Он оглянулся в сани.
– Посмотри, у него и усы и ресницы, всё белое, – сказал один из сидевших странных, хорошеньких и чужих людей с тонкими усами и бровями.
«Этот, кажется, была Наташа, подумал Николай, а эта m me Schoss; а может быть и нет, а это черкес с усами не знаю кто, но я люблю ее».
– Не холодно ли вам? – спросил он. Они не отвечали и засмеялись. Диммлер из задних саней что то кричал, вероятно смешное, но нельзя было расслышать, что он кричал.
– Да, да, – смеясь отвечали голоса.
– Однако вот какой то волшебный лес с переливающимися черными тенями и блестками алмазов и с какой то анфиладой мраморных ступеней, и какие то серебряные крыши волшебных зданий, и пронзительный визг каких то зверей. «А ежели и в самом деле это Мелюковка, то еще страннее то, что мы ехали Бог знает где, и приехали в Мелюковку», думал Николай.
Действительно это была Мелюковка, и на подъезд выбежали девки и лакеи со свечами и радостными лицами.
– Кто такой? – спрашивали с подъезда.
– Графские наряженные, по лошадям вижу, – отвечали голоса.


Пелагея Даниловна Мелюкова, широкая, энергическая женщина, в очках и распашном капоте, сидела в гостиной, окруженная дочерьми, которым она старалась не дать скучать. Они тихо лили воск и смотрели на тени выходивших фигур, когда зашумели в передней шаги и голоса приезжих.
Гусары, барыни, ведьмы, паясы, медведи, прокашливаясь и обтирая заиндевевшие от мороза лица в передней, вошли в залу, где поспешно зажигали свечи. Паяц – Диммлер с барыней – Николаем открыли пляску. Окруженные кричавшими детьми, ряженые, закрывая лица и меняя голоса, раскланивались перед хозяйкой и расстанавливались по комнате.
– Ах, узнать нельзя! А Наташа то! Посмотрите, на кого она похожа! Право, напоминает кого то. Эдуард то Карлыч как хорош! Я не узнала. Да как танцует! Ах, батюшки, и черкес какой то; право, как идет Сонюшке. Это еще кто? Ну, утешили! Столы то примите, Никита, Ваня. А мы так тихо сидели!
– Ха ха ха!… Гусар то, гусар то! Точно мальчик, и ноги!… Я видеть не могу… – слышались голоса.
Наташа, любимица молодых Мелюковых, с ними вместе исчезла в задние комнаты, куда была потребована пробка и разные халаты и мужские платья, которые в растворенную дверь принимали от лакея оголенные девичьи руки. Через десять минут вся молодежь семейства Мелюковых присоединилась к ряженым.
Пелагея Даниловна, распорядившись очисткой места для гостей и угощениями для господ и дворовых, не снимая очков, с сдерживаемой улыбкой, ходила между ряжеными, близко глядя им в лица и никого не узнавая. Она не узнавала не только Ростовых и Диммлера, но и никак не могла узнать ни своих дочерей, ни тех мужниных халатов и мундиров, которые были на них.
– А это чья такая? – говорила она, обращаясь к своей гувернантке и глядя в лицо своей дочери, представлявшей казанского татарина. – Кажется, из Ростовых кто то. Ну и вы, господин гусар, в каком полку служите? – спрашивала она Наташу. – Турке то, турке пастилы подай, – говорила она обносившему буфетчику: – это их законом не запрещено.
Иногда, глядя на странные, но смешные па, которые выделывали танцующие, решившие раз навсегда, что они наряженные, что никто их не узнает и потому не конфузившиеся, – Пелагея Даниловна закрывалась платком, и всё тучное тело ее тряслось от неудержимого доброго, старушечьего смеха. – Сашинет то моя, Сашинет то! – говорила она.
После русских плясок и хороводов Пелагея Даниловна соединила всех дворовых и господ вместе, в один большой круг; принесли кольцо, веревочку и рублик, и устроились общие игры.
Через час все костюмы измялись и расстроились. Пробочные усы и брови размазались по вспотевшим, разгоревшимся и веселым лицам. Пелагея Даниловна стала узнавать ряженых, восхищалась тем, как хорошо были сделаны костюмы, как шли они особенно к барышням, и благодарила всех за то, что так повеселили ее. Гостей позвали ужинать в гостиную, а в зале распорядились угощением дворовых.
– Нет, в бане гадать, вот это страшно! – говорила за ужином старая девушка, жившая у Мелюковых.
– Отчего же? – спросила старшая дочь Мелюковых.
– Да не пойдете, тут надо храбрость…
– Я пойду, – сказала Соня.
– Расскажите, как это было с барышней? – сказала вторая Мелюкова.
– Да вот так то, пошла одна барышня, – сказала старая девушка, – взяла петуха, два прибора – как следует, села. Посидела, только слышит, вдруг едет… с колокольцами, с бубенцами подъехали сани; слышит, идет. Входит совсем в образе человеческом, как есть офицер, пришел и сел с ней за прибор.
– А! А!… – закричала Наташа, с ужасом выкатывая глаза.
– Да как же, он так и говорит?
– Да, как человек, всё как должно быть, и стал, и стал уговаривать, а ей бы надо занять его разговором до петухов; а она заробела; – только заробела и закрылась руками. Он ее и подхватил. Хорошо, что тут девушки прибежали…
– Ну, что пугать их! – сказала Пелагея Даниловна.
– Мамаша, ведь вы сами гадали… – сказала дочь.
– А как это в амбаре гадают? – спросила Соня.
– Да вот хоть бы теперь, пойдут к амбару, да и слушают. Что услышите: заколачивает, стучит – дурно, а пересыпает хлеб – это к добру; а то бывает…
– Мама расскажите, что с вами было в амбаре?
Пелагея Даниловна улыбнулась.
– Да что, я уж забыла… – сказала она. – Ведь вы никто не пойдете?
– Нет, я пойду; Пепагея Даниловна, пустите меня, я пойду, – сказала Соня.
– Ну что ж, коли не боишься.
– Луиза Ивановна, можно мне? – спросила Соня.
Играли ли в колечко, в веревочку или рублик, разговаривали ли, как теперь, Николай не отходил от Сони и совсем новыми глазами смотрел на нее. Ему казалось, что он нынче только в первый раз, благодаря этим пробочным усам, вполне узнал ее. Соня действительно этот вечер была весела, оживлена и хороша, какой никогда еще не видал ее Николай.
«Так вот она какая, а я то дурак!» думал он, глядя на ее блестящие глаза и счастливую, восторженную, из под усов делающую ямочки на щеках, улыбку, которой он не видал прежде.
– Я ничего не боюсь, – сказала Соня. – Можно сейчас? – Она встала. Соне рассказали, где амбар, как ей молча стоять и слушать, и подали ей шубку. Она накинула ее себе на голову и взглянула на Николая.
«Что за прелесть эта девочка!» подумал он. «И об чем я думал до сих пор!»
Соня вышла в коридор, чтобы итти в амбар. Николай поспешно пошел на парадное крыльцо, говоря, что ему жарко. Действительно в доме было душно от столпившегося народа.
На дворе был тот же неподвижный холод, тот же месяц, только было еще светлее. Свет был так силен и звезд на снеге было так много, что на небо не хотелось смотреть, и настоящих звезд было незаметно. На небе было черно и скучно, на земле было весело.
«Дурак я, дурак! Чего ждал до сих пор?» подумал Николай и, сбежав на крыльцо, он обошел угол дома по той тропинке, которая вела к заднему крыльцу. Он знал, что здесь пойдет Соня. На половине дороги стояли сложенные сажени дров, на них был снег, от них падала тень; через них и с боку их, переплетаясь, падали тени старых голых лип на снег и дорожку. Дорожка вела к амбару. Рубленная стена амбара и крыша, покрытая снегом, как высеченная из какого то драгоценного камня, блестели в месячном свете. В саду треснуло дерево, и опять всё совершенно затихло. Грудь, казалось, дышала не воздухом, а какой то вечно молодой силой и радостью.
С девичьего крыльца застучали ноги по ступенькам, скрыпнуло звонко на последней, на которую был нанесен снег, и голос старой девушки сказал:
– Прямо, прямо, вот по дорожке, барышня. Только не оглядываться.
– Я не боюсь, – отвечал голос Сони, и по дорожке, по направлению к Николаю, завизжали, засвистели в тоненьких башмачках ножки Сони.
Соня шла закутавшись в шубку. Она была уже в двух шагах, когда увидала его; она увидала его тоже не таким, каким она знала и какого всегда немножко боялась. Он был в женском платье со спутанными волосами и с счастливой и новой для Сони улыбкой. Соня быстро подбежала к нему.
«Совсем другая, и всё та же», думал Николай, глядя на ее лицо, всё освещенное лунным светом. Он продел руки под шубку, прикрывавшую ее голову, обнял, прижал к себе и поцеловал в губы, над которыми были усы и от которых пахло жженой пробкой. Соня в самую середину губ поцеловала его и, выпростав маленькие руки, с обеих сторон взяла его за щеки.
– Соня!… Nicolas!… – только сказали они. Они подбежали к амбару и вернулись назад каждый с своего крыльца.


Когда все поехали назад от Пелагеи Даниловны, Наташа, всегда всё видевшая и замечавшая, устроила так размещение, что Луиза Ивановна и она сели в сани с Диммлером, а Соня села с Николаем и девушками.
Николай, уже не перегоняясь, ровно ехал в обратный путь, и всё вглядываясь в этом странном, лунном свете в Соню, отыскивал при этом всё переменяющем свете, из под бровей и усов свою ту прежнюю и теперешнюю Соню, с которой он решил уже никогда не разлучаться. Он вглядывался, и когда узнавал всё ту же и другую и вспоминал, слышав этот запах пробки, смешанный с чувством поцелуя, он полной грудью вдыхал в себя морозный воздух и, глядя на уходящую землю и блестящее небо, он чувствовал себя опять в волшебном царстве.
– Соня, тебе хорошо? – изредка спрашивал он.
– Да, – отвечала Соня. – А тебе ?
На середине дороги Николай дал подержать лошадей кучеру, на минутку подбежал к саням Наташи и стал на отвод.
– Наташа, – сказал он ей шопотом по французски, – знаешь, я решился насчет Сони.
– Ты ей сказал? – спросила Наташа, вся вдруг просияв от радости.
– Ах, какая ты странная с этими усами и бровями, Наташа! Ты рада?
– Я так рада, так рада! Я уж сердилась на тебя. Я тебе не говорила, но ты дурно с ней поступал. Это такое сердце, Nicolas. Как я рада! Я бываю гадкая, но мне совестно было быть одной счастливой без Сони, – продолжала Наташа. – Теперь я так рада, ну, беги к ней.
– Нет, постой, ах какая ты смешная! – сказал Николай, всё всматриваясь в нее, и в сестре тоже находя что то новое, необыкновенное и обворожительно нежное, чего он прежде не видал в ней. – Наташа, что то волшебное. А?
– Да, – отвечала она, – ты прекрасно сделал.
«Если б я прежде видел ее такою, какою она теперь, – думал Николай, – я бы давно спросил, что сделать и сделал бы всё, что бы она ни велела, и всё бы было хорошо».
– Так ты рада, и я хорошо сделал?
– Ах, так хорошо! Я недавно с мамашей поссорилась за это. Мама сказала, что она тебя ловит. Как это можно говорить? Я с мама чуть не побранилась. И никому никогда не позволю ничего дурного про нее сказать и подумать, потому что в ней одно хорошее.
– Так хорошо? – сказал Николай, еще раз высматривая выражение лица сестры, чтобы узнать, правда ли это, и, скрыпя сапогами, он соскочил с отвода и побежал к своим саням. Всё тот же счастливый, улыбающийся черкес, с усиками и блестящими глазами, смотревший из под собольего капора, сидел там, и этот черкес был Соня, и эта Соня была наверное его будущая, счастливая и любящая жена.
Приехав домой и рассказав матери о том, как они провели время у Мелюковых, барышни ушли к себе. Раздевшись, но не стирая пробочных усов, они долго сидели, разговаривая о своем счастьи. Они говорили о том, как они будут жить замужем, как их мужья будут дружны и как они будут счастливы.
На Наташином столе стояли еще с вечера приготовленные Дуняшей зеркала. – Только когда всё это будет? Я боюсь, что никогда… Это было бы слишком хорошо! – сказала Наташа вставая и подходя к зеркалам.
– Садись, Наташа, может быть ты увидишь его, – сказала Соня. Наташа зажгла свечи и села. – Какого то с усами вижу, – сказала Наташа, видевшая свое лицо.
– Не надо смеяться, барышня, – сказала Дуняша.
Наташа нашла с помощью Сони и горничной положение зеркалу; лицо ее приняло серьезное выражение, и она замолкла. Долго она сидела, глядя на ряд уходящих свечей в зеркалах, предполагая (соображаясь с слышанными рассказами) то, что она увидит гроб, то, что увидит его, князя Андрея, в этом последнем, сливающемся, смутном квадрате. Но как ни готова она была принять малейшее пятно за образ человека или гроба, она ничего не видала. Она часто стала мигать и отошла от зеркала.
– Отчего другие видят, а я ничего не вижу? – сказала она. – Ну садись ты, Соня; нынче непременно тебе надо, – сказала она. – Только за меня… Мне так страшно нынче!
Соня села за зеркало, устроила положение, и стала смотреть.
– Вот Софья Александровна непременно увидят, – шопотом сказала Дуняша; – а вы всё смеетесь.
Соня слышала эти слова, и слышала, как Наташа шопотом сказала:
– И я знаю, что она увидит; она и прошлого года видела.
Минуты три все молчали. «Непременно!» прошептала Наташа и не докончила… Вдруг Соня отсторонила то зеркало, которое она держала, и закрыла глаза рукой.
– Ах, Наташа! – сказала она.
– Видела? Видела? Что видела? – вскрикнула Наташа, поддерживая зеркало.
Соня ничего не видала, она только что хотела замигать глазами и встать, когда услыхала голос Наташи, сказавшей «непременно»… Ей не хотелось обмануть ни Дуняшу, ни Наташу, и тяжело было сидеть. Она сама не знала, как и вследствие чего у нее вырвался крик, когда она закрыла глаза рукою.
– Его видела? – спросила Наташа, хватая ее за руку.
– Да. Постой… я… видела его, – невольно сказала Соня, еще не зная, кого разумела Наташа под словом его: его – Николая или его – Андрея.
«Но отчего же мне не сказать, что я видела? Ведь видят же другие! И кто же может уличить меня в том, что я видела или не видала?» мелькнуло в голове Сони.
– Да, я его видела, – сказала она.
– Как же? Как же? Стоит или лежит?
– Нет, я видела… То ничего не было, вдруг вижу, что он лежит.
– Андрей лежит? Он болен? – испуганно остановившимися глазами глядя на подругу, спрашивала Наташа.
– Нет, напротив, – напротив, веселое лицо, и он обернулся ко мне, – и в ту минуту как она говорила, ей самой казалось, что она видела то, что говорила.
– Ну а потом, Соня?…
– Тут я не рассмотрела, что то синее и красное…
– Соня! когда он вернется? Когда я увижу его! Боже мой, как я боюсь за него и за себя, и за всё мне страшно… – заговорила Наташа, и не отвечая ни слова на утешения Сони, легла в постель и долго после того, как потушили свечу, с открытыми глазами, неподвижно лежала на постели и смотрела на морозный, лунный свет сквозь замерзшие окна.


Вскоре после святок Николай объявил матери о своей любви к Соне и о твердом решении жениться на ней. Графиня, давно замечавшая то, что происходило между Соней и Николаем, и ожидавшая этого объяснения, молча выслушала его слова и сказала сыну, что он может жениться на ком хочет; но что ни она, ни отец не дадут ему благословения на такой брак. В первый раз Николай почувствовал, что мать недовольна им, что несмотря на всю свою любовь к нему, она не уступит ему. Она, холодно и не глядя на сына, послала за мужем; и, когда он пришел, графиня хотела коротко и холодно в присутствии Николая сообщить ему в чем дело, но не выдержала: заплакала слезами досады и вышла из комнаты. Старый граф стал нерешительно усовещивать Николая и просить его отказаться от своего намерения. Николай отвечал, что он не может изменить своему слову, и отец, вздохнув и очевидно смущенный, весьма скоро перервал свою речь и пошел к графине. При всех столкновениях с сыном, графа не оставляло сознание своей виноватости перед ним за расстройство дел, и потому он не мог сердиться на сына за отказ жениться на богатой невесте и за выбор бесприданной Сони, – он только при этом случае живее вспоминал то, что, ежели бы дела не были расстроены, нельзя было для Николая желать лучшей жены, чем Соня; и что виновен в расстройстве дел только один он с своим Митенькой и с своими непреодолимыми привычками.
Отец с матерью больше не говорили об этом деле с сыном; но несколько дней после этого, графиня позвала к себе Соню и с жестокостью, которой не ожидали ни та, ни другая, графиня упрекала племянницу в заманивании сына и в неблагодарности. Соня, молча с опущенными глазами, слушала жестокие слова графини и не понимала, чего от нее требуют. Она всем готова была пожертвовать для своих благодетелей. Мысль о самопожертвовании была любимой ее мыслью; но в этом случае она не могла понять, кому и чем ей надо жертвовать. Она не могла не любить графиню и всю семью Ростовых, но и не могла не любить Николая и не знать, что его счастие зависело от этой любви. Она была молчалива и грустна, и не отвечала. Николай не мог, как ему казалось, перенести долее этого положения и пошел объясниться с матерью. Николай то умолял мать простить его и Соню и согласиться на их брак, то угрожал матери тем, что, ежели Соню будут преследовать, то он сейчас же женится на ней тайно.