Технология Intel Virtualization (Intel® VT): виртуализация ЦП и виртуализация памяти.
Технология Intel Virtualization (Intel® VT): виртуализация ЦП и виртуализация памяти.

1. Обзор технологии виртуализации Intel® VT.

В узком смысле Intel® VT в основном предоставляет технологии виртуализации для процессоров, наборов микросхем и сетей.

  • процессортехнология виртуализации (Intel VT-x): включает виртуализацию и технологию гибкой миграции (Intel VT FlexMigration), технология ускорения прерываний (Intel VT FlexPriority)、Памятьтехнология виртуализации (Intel EPT)
  • чипсеттехнология виртуализации (Intel ВТ-д): прямой I/O технология доступа
  • I/O технология виртуализации (Intel VT-c):включатьвиртуальная технология очереди устройств машины (VMDq), виртуальная технология прямого межсоединения машины (VMDc), технология сквозной передачи сетевых карт (SR-IOV/MR-IOV), прямая передача данных I/O Технология (ДДИО)

2. Виртуализация процессора

В настоящее время основными технологиями виртуализации ЦП являются VT-x/VT-i от Intel и AMD-V от AMD.

Существует два основных типа технологии виртуализации процессоров Intel:

  • VT-x: для X86 Архитектураизиз CPU технология виртуализации (Intel Virtualization Technologyfor x86), в основном IA-32 и Intel 64 процессоры серии.
  • VT-i: для процессоров архитектуры Itanium CPU технология виртуализации (Intel Virtualization Technology for латания), главным образом Itanium процессоры серии.

2.1 Платформа виртуализации серверов


Полная платформа виртуализации серверов включает в себя следующие части снизу вверх:

  • Базовые физические ресурсы: включая аппаратные ресурсы, такие как сетевые карты, процессоры, память и устройства хранения данных.,Вообще, Воля содержит физические ресурсы, а физическая машина называется для хоста (Host).
  • виртуальная КомпьютерMonitor (Виртуальный Machine Монитор, VMM): VMM находится в виртуальной Виртуальный уровень между базовыми аппаратными устройствами работает непосредственно на аппаратных устройствах и отвечает за абстрагирование аппаратных ресурсов. Верхний виртуальный уровень. машина предоставляет ресурсы, необходимые для работающей среды, и позволяет каждой виртуальной Все машины могут работать в одной системе, не мешая друг другу и независимо друг от друга.
  • абстракцияизвиртуальная Аппаратное обеспечение машины: то есть виртуальный уровень представляет собой виртуализацию аппаратных устройств. виртуальная Какие аппаратные средства может обнаружить машина, полностью зависит от VMM Решать. Виртуальное устройство может имитировать реальное устройство или может быть виртуальным устройством, не существующим в реальности, например VMware из vmxnet сетевая карта.
  • виртуальная машина: Относительно базовой физической машины, также называемой клиентом (Гость). Операционная система, на которой работает существующая система, называется операционной системой дляклиента (Guest OS)。каждыйвиртуальная Операционные системы компьютеров имеют собственное виртуальное оборудование и существуют в независимой виртуальной среде. проходить VMM механизм изоляции, каждая виртуальная Все признают, что машина работает как независимая из существующей системы.

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

При запуске виртуальной машины ядро ​​виртуальной машины в гипервизоре загружает VMM. Виртуальная машина работает непосредственно на VMM и взаимодействует с гипервизором через интерфейс VMM. В архитектурах KVM и Xen виртуальный уровень называется Hypervisor, то есть VMM = Hypervisor.

2.2 Иерархия инструкций ЦП


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

Различные типы процессоров разделены на разные уровни. Например, IBM PowerPC и SUN SPARC разделены на два уровня: Core и User, имеет дополнительный супервизор и всего три уровня.

Процессор X86, рассматриваемый в этой статье, разделен на 4 уровня: Ring0-Ring3. Нам нужно только обратить внимание на два уровня: уровень привилегий (Ring 0) и уровень пользователя (Ring1-Ring3).

Для невиртуализированных обычных операционных систем Ring 0 — это самый высокий уровень привилегий с прямым контролем доступа к физической памяти и аппаратным ресурсам ввода-вывода. Разрешения Ring 1, 2 и 3 последовательно уменьшаются. Они не могут выполнять набор команд на уровне системы ядра и имеют только права прямого управления доступом к виртуальной памяти. Соответственно, инструкции, выполняемые в кольце 0, называются «привилегированными инструкциями»; инструкции, выполняемые на других уровнях, называются «непривилегированными инструкциями».

Распространенные операционные системы, такие как Linux и Windows, работают на кольце 0, а приложения пользовательского уровня — на кольце 3. Если программа с низким уровнем привилегий выполняет привилегированную инструкцию, это вызовет «ловушку» (Trap) состояния ядра и выдаст исключение.

2.3 Виртуализация для платформ, отличных от X86


Когда этот механизм иерархической изоляции применяется к платформе виртуализации, чтобы соответствовать характеристикам «управляемости ресурсов» VMM (монитор виртуальной машины, монитор виртуальной машины), VMM должен находиться на уровне кольца 0, чтобы контролировать все аппаратные ресурсы и выполнять Привилегированные системные вызовы самого высокого уровня. Гостевая ОС операционной системы виртуальной машины будет понижена до уровня Ring 1, а приложения гостевой ОС будут работать на уровне Ring 3.

Таким образом, гостевая ОС будет вызывать «ловушку» при выполнении привилегированных инструкций. Если VMM сможет нормально перехватывать исключения, моделировать инструкции, выдаваемые гостевой ОС, и выполнять их, цель будет достигнута. Это механизм удаления и эмуляции привилегий, используемый серией IBM Power.

Мы вызываем некоторые операционные инструкции в операционной системе, которые включают вызов основных общедоступных ресурсов системы, в конфиденциальные инструкции. Большие серверные процессоры, такие как архитектуры PowerPC и SPARC, работают с набором инструкций RISC, и все конфиденциальные инструкции являются привилегированными. Таким образом, вышеупомянутые механизмы удаления привилегий и эмуляции могут использоваться для идеальной реализации виртуализации.

Однако для набора команд CISC для виртуализации используются упомянутые выше классические технологии.

2.4 Виртуализация платформы X86


Именно потому, что набор команд платформы x86 имеет вышеупомянутые недостатки, чтобы применить технологию виртуализации вычислений на платформе x86, основные поставщики виртуализации запустили множество технологий виртуализации, каждая из которых сосредоточена на том, «как захватывать и моделировать эти 19 деликатных указаний». Это предложение специально разработано.

В приведенной выше задаче задействованы три основных объекта: гостевая ОС, VMM и набор инструкций аппаратного ЦП. VMM — это недавно вставленный объект, и его удобнее всего модифицировать, но ОС и ЦП модифицировать сложнее. . Идеи решения, таким образом, делятся на 3 направления:

  • изменять ВММ: вот это CPU виртуализация (ЦП) Полная виртуализация), преимуществом является максимальная совместимость, ОС и CPU Нет необходимости в модификации, но недостатком является то, что она наименее эффективна.
  • изменять ОС: то есть CPU Половинавиртуализация (ЦП) Паравиртуализация), преимущество по сравнению с CPU Full-Virtualization Эффективность значительно повысилась, но недостатком является то, что она должна быть более эффективной. OS,потому чтодля Windows Ядро не является открытым исходным кодом и может быть основано только на Linux Ядро необходимо адаптировать, а это повлечет за собой риски масштабируемости и безопасности.
  • изменять CPU Набор инструкций: с аппаратной поддержкой (HVM: с аппаратной поддержкой). Virtualization машина), преимущество в том, что нет необходимости в модификации Guest ОС, совместимая Windows и Linux。

HVM (Hardware-Assisted Virtualization Machine, аппаратная виртуализация) стала основной технологией виртуализации в центрах обработки данных.

2.4.1 Полная виртуализация ЦП

Полная виртуализация ЦП подразделяется на три решения: эмуляция, сканирование и исправление и двоичная трансляция. Эмуляция является фундаментальным решением, тогда как сканирование и исправление и двоичная трансляция можно понимать как расширенные реализации эмуляции в системе X86.

Благодаря относительно простой реализации, полная виртуализация ЦП появилась еще в конце прошлого века и является самой ранней технологией виртуализации X86.

  • Эмуляция: Базовая из Emulation Основное приложение существует для кроссплатформенного моделирования виртуализации, Гость OS Базовые системные платформы различны, особенно наборы инструкций, которые сильно различаются в сценариях, таких как существование X86 Имитировать в системе PowerPC или ARM система. Основная идея заключается в том, VMM Воля Guest OS Инструкция считывается, эффект выполнения этой инструкции моделируется и возвращается. Она выполняется одна за другой снова и снова, без различия между пользовательскими инструкциями и конфиденциальными инструкциями, поскольку каждая инструкция попадает в симуляцию посредством моделирования. Ring0 , поэтому предыдущая проблема конфиденциальных инструкций может быть решена. Репрезентативным продуктом является Linux начальствоиз QEMU в настоящее время в основном используется во встроенных платформах в смежных областях разработки.
  • Scan-and-Patch:Scan-and-Patch из Основная идея - Воля Guest OS Сканировать каждый сегмент команды, существующий до выполнения, чтобы найти конфиденциальные инструкции, существующие VMM Генерируется соответствующая инструкция «из патча», а чувствительная инструкция «Воля» заменяет инструкцию для перехода, указывая на сгенерированную инструкцию «из патча». Таким образом, когда сегмент инструкции будет выполнен, переход будет выполнен VMM Запустите команду patch, чтобы смоделировать результат и вернуть его в Guest ОС, а затем последовательно продолжить выполнение. Репрезентативным продуктом является Oracle из Система виртуализации с открытым исходным кодом VirtualBox, в настоящее время в основном используется для виртуального существования на хосте. автоматизация моделирования, меньше использования сервера.
  • Binary Translation:Binary Translation Основная идея - Воля Guest OS сегмент изInstruction перед выполнением транслируется целиком, а Воля и другие чувствительные инструкции заменяются на для Ring0 Выполнить из, соответствующую привилегированной команде, затем выполнить из и одновременно перевести следующий сегмент команды, перекрестно иметь дело с. представлятьпродуктдля VMware Workstation и рано VMware из ESXi Система виртуализации серверов серии в настоящее время редко используется на серверах.

Полная виртуализация ЦП в настоящее время прекращается на серверах из-за проблем с производительностью. Основные репрезентативные продукты, такие как VirtualBox и VMware Workstation, в основном используются в некоторых средах разработки и тестирования для виртуализации хостов. Только QEMU, как базовый инструмент технологии виртуализации, широко используется в других продуктах виртуализации.

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

Пара-виртуализация ЦП представлена ​​Xen и Hyper-V, но два основных продукта виртуализации, VMware ESXi Server и Linux KVM, также поддерживают пара-виртуализацию. Технология пара-виртуализации на самом деле является общим термином для класса технологий. То, о чем мы хотим поговорить, — это паравиртуализация (CPU PV) ЦП.

Основные принципы реализации технологии CPU PV заключаются в следующем. Сначала VMM публикует некоторые из своих интерфейсных функций, называемых гипервызовами, а затем добавляет в гостевую ОС модификацию кода ядра на основе этих функций интерфейса для замены проблемных 17 конфиденциальных инструкций. выполнять операции системного вызова. Модифицированные вызовы инструкций обычно называются гипервызовами. Гостевая ОС может напрямую вызывать VMM через гипервызовы для выполнения системных инструкций. По сравнению с ранее упомянутым методом моделирования застревания эффективность обработки значительно повышается.

Однако способ, которым CPU PV изменяет код ядра операционной системы, накладывает множество ограничений на использование гостевой ОС. Например, только Hyper-V может поддерживать Windows Server в режиме паравиртуализации в качестве гостевой ОС. Кроме того, из-за KVM/. Xen/VMware/Hyper-V Каждый код Hypercalls вводит версию ядра Linux по-разному, поэтому при использовании Linux в качестве гостевой ОС вы также должны обратить внимание на версию ядра Linux каждого дистрибутива.

Платформа виртуализации

Требования к версии ядра Linux (гостевой ОС)

KVM

Kernel >= 2.6.20

VMware

Kernel >= 2.6.22

Xen

Kernel >= 2.6.23

Hyper-V

Kernel >= 2.6.32

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

2.4.3 Аппаратная виртуализация (технология Intel VT-x/VT-i)

Билл не может этого понять, поэтому Энди приходит на помощь. (Билл Гейтс — основатель Microsoft, а Энди Гроув — основатель Intel)

В ответ на ряд проблем виртуализации, вызванных конфиденциальными инструкциями, Intel и AMD в 2005 году выпустили VT-x/VT-i и AMD-V соответственно. Когда они могут поддерживать полную виртуализацию на уровне чипа, это то, что сейчас называется аппаратным обеспечением. Технология вспомогательной виртуализации (HVM: Аппаратная виртуализация).

И VT-x, и AMD-V пытаются вернуть гостевую ОС в кольцо 0, определяя новый режим работы, позволяя при этом VMM работать на более низком уровне, чем кольцо 0 (можно понимать как кольцо -1).

VT-x представляет два режима работы, которые вместе называются режимом работы VMX (Virtual Machine eXtension):

  • Корневой режим работы (VMX Root Operation): режим, в котором работает VMM.,В дальнейшем именуемый корневым режимом.
  • Нет Корневой режим работы (VMX Non-Root Эксплуатация): клиент работает в режиме «Из», далее «Нет корневого режима».

Режим работы с root/non-root различает исходную операцию CPU на корневую операцию, в которой находится VMM, и операцию без root, в которой находится виртуальная машина. Каждая операция имеет все уровни инструкций Ring0-Ring3.

существовать Intel корпоративный VT-x Решение, работающее в режиме без полномочий root Guest OS Можетккартинасуществовать Нет Платформа виртуализация также работает Ring 0 уровень, либо Ring 0 Выданная привилегированная команда по-прежнему Ring 3 Выдаваемые конфиденциальные инструкции будут перенесены в виртуальный уровень корневого режима.

Появление таких технологий, как VT-x и AMD-V, решило проблемы низкой производительности полной виртуализации процессора и плохой совместимости с гостевой ОС паравиртуализации при использовании двух предыдущих чисто программных решений для виртуализации X86.

Учитывая скорость обновления серверных процессоров каждые два-три года, нынешние основные серверы X86 уже могут поддерживать такие технологии, как VT-X/AMD-V. Таким образом, HVM стал основным направлением современной виртуализации серверов IAAS для облачных вычислений. Несколько основных продуктов VMM, Xen/VMware ESXi/KVM/Hyper-V, уже поддерживают функции HVM.

3. Виртуализация памяти

Большие операционные системы (например, Linux) используют виртуальную память для управления памятью, а виртуализация памяти требует виртуализации виртуальной памяти.

Технология виртуализации памяти в основном включает в себя два аспекта: преобразование адресов памяти и управление виртуализацией памяти.

Вы можете просмотреть соответствующий контент о виртуальной памяти. считатькомпьютерная система Lecture 1: виртуальная память Эта статья.

3.1 Преобразование адресов виртуализации памяти


существовать Linux Здесь используются виртуальные адреса OS , виртуальный адрес проходит через Page table Преобразование дает физический адрес.

Если эта операционная система работает на существующей виртуальной машине, на нуждающемся компьютере выполняются два преобразования адресов.

Гостевая ОС сначала преобразует GVA (гостевой виртуальный адрес) в GPA (гостевой физический адрес). С точки зрения VMM/гипервизора GPA — это промежуточный физический адрес (промежуточный физический адрес, IPA), а затем VMM/гипервизор преобразует GPA (гостевой физический адрес). Адрес) преобразуется в HPA (физический адрес хоста).

Для достижения вышеуказанных отношений сопоставления и преобразования существует два основных решения: программные решения (теневые таблицы страниц) и аппаратные решения (Intel-EPT и AMD-RVI).

3.1.1 Таблица теневых страниц (SPT)

Таблица теневых страниц (SPT) включает в себя следующие два отношения сопоставления:

  • GVA -> GPA,виртуальная операционная система машины отвечает за обслуживание виртуальной машины компьютерлогический адрес к виртуальной Физический адрес машины из сопоставления отношений, VMM Можеткотвиртуальная машинахозяинтаблица страницы Получите это сопоставление отношений.
  • GPA -> HPA,VMM Ответственный за обслуживание виртуальной Отображение связи между физическим адресом машины и физическим адресом физической машины.

С помощью этого двухуровневого метода сопоставления VMM для Guest OS Таблица каждой страницы (Гость Page Table, GPT) поддерживает теневую таблицу страниц и будет GVA -> HPA Отношения сопоставления записываются в таблицу теневых страниц. Тогда ВММ Запись в таблицу теневых страниц ММУ. При этом эффективно контролируются границы памяти, доступные виртуальной машине. И используйте TLB Кэширование содержимого таблицы теневых страниц может значительно повысить скорость доступа виртуальной машины к памяти.

Обслуживание таблицы теневых страниц приведет к большим затратам времени и пространства:

  • Затраты времени: в основном отражены в существовании Guest OS Не уведомляется автоматически при построении таблицы страниц. VMM,VMM придется подождать Guest OS При возникновении ошибки страницы (обязательно Guest OS Чтобы обновить таблицу домашней страницы), будет проанализирована причина отсутствия страницы, а затем будет завершена таблица теневых страниц.
  • Пространство над головой: в основном отражается на существовании VMM нуждаться Поддержка нескольких единицвиртуальная машина работает одновременно, каждая виртуальная машинаиз Guest OS Обычно каждый запущенный на нем процесс создает систему таблиц страниц, поэтому затраты пространства на теневую таблицу страниц будут быстро увеличиваться по мере увеличения количества процессов.

для компромисса накладных расходов по времени и пространству,В настоящее время обычно используется технология кэша таблицы теневых страниц (Shadow Page Table Cache), то есть VMM существует Память. Часть обслуживания недавно использовала таблицу теневых страниц.,Только если таблица «Когда существует теневая страница» не найдена в кеше,Просто создайте новую таблицу теневых страниц.

Все современные основные технологии виртуализации используют технологию кэширования теневых таблиц страниц.

3.1.2 Поддержка оборудования (Intel EPT/AMD RVI)

Для того, чтобы решить вышеуказанную проблему с накладными расходами, вызванную таблицей теневых страниц.,В дополнение к использованию технологии кэширования теневых таблиц страниц (хотя эта технология позволяет избежать некоторых затрат времени,Но накладные расходы на пространство по-прежнему значительны.,Intel и AMD Компании нацелены MMU Виртуализация предлагает свои собственные решения: Intel компаниясуществоватьNehalem микроархитектура CPU Расширенная таблица страниц (Расширенная Page Таблица, EPT) технология AMD; Компания Quad Core Opteron существует CPU Индекс быстрой виртуализации (Рапид Virtualization Индекс, RVI) технология.

RVI и EPT Хотя конкретные детали реализации существования различны, концепция построения существования полностью одинакова: через физику существования. MMU Сохраните две разные таблицы страниц в,Чтобы адрес Память из двух отображений завершился в существующем аппаратном обеспечении,Для достижения улучшенной производительности.

В частности, ММУ. Центральное управление управляет двумя таблицами страниц, первая из которых GVA -> GPA, определяется виртуальной машиной — второй; GPA -> HPA, прозрачный для виртуальных машин, состоит из VMM Решать. Согласно этим двум таблицам сопоставленных страниц, процессор в page walker Вы можете создать недавно посещенные key-value пара ключ-значение и существование TLB кэша (аналогично идее технологии кэширования таблицы теневых страниц).

Кроме того, исходная теневая таблица существует страниц Зависит от VMM поддерживается GPA -> Отношения сопоставления HPA состоят из набора новых структур данных, расширенной таблицы страниц (расширенная таблица страниц). Page Стол, также известный как для Nested Page Таблица) для сохранения. потому что GPA -> HPA из Отображение отношений Нет Постоянный,исуществоватьвиртуальная машину не нужно обновлять при создании и изменении таблицы страниц, поэтому VMM существоватьвиртуальная Нет необходимости вмешиваться, когда машина обновляет таблицу страниц. ВММ Не нужно идти в виртуальную машинаначальство Переключиться ниже,виртуальная машинаможет быть модифицирована самостоятельно GVA -> Таблица страниц ГПД.

Intel EPT Это Интел VT-x Обеспечить поддержку технологии «Из Памятьвиртуализации», основной принцип которой показан на рисунке ниже. существуют в оригинале CR3 Сопоставление адресов таблицы страниц основано на EPT. представлять EPT таблица страниц для реализации другого сопоставления. Например: предположим, что таблица страниц клиента и EPT Таблицы страниц все 4 таблица страниц уровня, ЦП Основной процесс выполнения трансляции адреса выглядит следующим образом:

клиент CR3 Регистр дает средний балл, итак, CP Упасс EPT Таблица страниц Воляклиент CR3 в GPA Конвертировать для HPA:CPU Найти первым EPT TLB, если соответствующей записи нет, ищите дальше EPT Таблица страниц, если она еще не существует, процессор тогда брось EPT Violation Исключение передано VMM иметь дело с.

CPU получать L4 После адреса таблицы страниц (имеется в виду HPA) процессор в соответствии с GVA и L4 Получить содержимое записи таблицы страниц L3 запись в таблице страниц средний балл. если L4 таблица страниц GVA Соответствующая запись в таблице отображается для «отсутствующей страницы», затем CPU производить Page Ошибка, переданная непосредственно операционной системе дело с.получать L3 запись в таблице страницGPA После этого процессор По запросу EPT Таблица страниц будет L3 из GPA Конвертировать для ГПА. Таким же образом процессор будет завершено последовательно L2、L1 Запрос таблицы страниц, получение GVA Соответствует GPA,затем сделайте окончательный запрос EPT таблица страницполучать HPA。

Как показано на рисунке выше, процессор нуждаться 5 запросы EPT таблица страниц,Каждыйзапросы Всенуждаться 4 Память посещает. Таким образом, наихудший сценарий всегда является общимнуждаться. 20 доступ к памяти. ЕПТ Аппаратное обеспечение увеличивается за счет EPT TLB Минимизируйте доступ к памяти.

3.2 Технология управления виртуализацией памяти


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

3.2.1 Технология повторного использования памяти

существоватьвиртуализация Памятьуправлять На ESXi ESXi реализует перераспределение хоста Память из цели: то есть несколько виртуальных Общий выделенный объем машины превышает фактическую мощность Память физической машины. Как показано на рисунке ниже, физический Память имеет только 4GB из Хост, может одновременно запускать три конфигурации Память. 2GB из Guest。

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

потому чтодля,Host Memory и Guest Memory Это не переписка один на один, через Host Memory Технология избыточного обеспечения может достичь определенного Host На некую виртуальную машина Память больше хоста Память, это и CPU виртуализация - это другое. Однако при использовании технологии чрезмерной настройки нуждаться учитывает проблемы с производительностью хоста и не может быть слишком большой. Как правило, пределом избыточного выделения является номер хоста. 50%. Чтобы добиться избыточного выделения памяти хоста, это должно быть достигнуто с помощью технологии мультиплексирования памяти.

В настоящее время широко используются три технологии повторного использования: технология совместного использования нулевых страниц, технология восстановления с помощью всплывающих окон и технология замены. Здесь мы в основном представляем технологию восстановления с помощью всплывающих окон.

3.2.2 Технология переработки воздушных шаров с эффектом памяти

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

Принцип следующий: Гипервизор Воспользовавшись преимуществами предустановленной виртуальной реальности пользователя машинав интерфейсный драйвер, "украсть" Guest OS из Памятьспособствовал(а) VMM для использования другими виртуальными машинами, отменено VMM «Украсть» пузыри в Память на конкретную виртуальную использование машины. Суть Память пузырей в том, что Воля более праздна, чем для и звиртуальная. машина Память выпущена в Память с более высоким уровнем использования извиртуальная машину, тем самым улучшая использование Память.

существоватьначальствокартина(a)середина,VMM К виртуальной виртуальной привязаны четыре страницы. машинаиз Памятьстраничное пространствосередина,Две страницы слева заняты приложениями,Две другие страницы, отмеченные звездочкой, находятся в свободном списке.

когда VMM Например, если вы хотите освободить память виртуальной машины, вы хотите освободить две страницы памяти, VMM воля Balloon водить машинуиз Настройки целевого размера раздутиядлядве страницы。

Balloon После достижения целевого значения расширения, оно будет существоватьвиртуальная. машина внутренне применяет две страницы из Память и вызывает виртуальную, как показано в пункте (b) выше. Интерфейс операционной системы компьютера указывает, что эти две страницы «закреплены», то есть их больше нельзя выделить.

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

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

Баллонным методом восстановления, несмотря на виртуальную нагрузка машины немного увеличилась, но VMM Но успешно система Воля Память давление передает каждую виртуальную машинаначальство。когда balloon Когда драйвер инициирует запрос Памятьиз, он инициируется виртуальной операционная система машины решает, следует ли использовать Волявиртуальную машинафизика Память обменяться навстречу balloon Диск из приложения Память запрос.

есливиртуальная У машины достаточно изсвободной Память, тогда balloon Драйверное приложение Память не повлияет на виртуальную влияет производительность машины;

есливиртуальная машина Память уже туго,Затемнуждаться Зависит отвиртуальная Операционная система «Машиниз» решает, какие страницы Память заменить, удовлетворяя balloon Драйвер по запросу. Таким образом, метод восстановления с помощью баллона умело использует различные виртуальные операционная система компьютера из Память механизма подкачки определяет, какие страницы следует выпустить на физическую машину, а не VMM решить.

Метод утилизации баллона требует, чтобы была установлена ​​операционная система виртуальной машины. balloon водить машину,существовать VMware из ESXi В продукте это VMware Tool。кроме того,Метод переработки воздушных шаров Переработка Памятьнуждаться на определенный период времени,Системные требования не могут быть выполнены немедленно.

(Конец текста)

end

Reference:

  • Intel® Virtualization Technology (Intel® VT)
  • Intel® Virtualization Technology
  • Технология виртуализации с аппаратной поддержкой процессора
  • Overview of the Intel VT Virtualization Features
  • Взгляд на виртуализацию с воздуха
  • Cloud Operating Systems
  • Ключевые технологии NFV: обзор виртуализации вычислений
  • Intel/AMD virtualization isolation and containment
  • NFVКлючевые технологии:считать Рассчитатьвиртуализация Из Памятьвиртуализация
boy illustration
Учебное пособие по Jetpack Compose для начинающих, базовые элементы управления и макет
boy illustration
Код js веб-страницы, фон частицы, код спецэффектов
boy illustration
【новый! Суперподробное】Полное руководство по свойствам компонентов Figma.
boy illustration
🎉Обязательно к прочтению новичкам: полное руководство по написанию мини-программ WeChat с использованием программного обеспечения Cursor.
boy illustration
[Забавный проект Docker] VoceChat — еще одно приложение для мгновенного чата (IM)! Может быть встроен в любую веб-страницу!
boy illustration
Как реализовать переход по странице в HTML (html переходит на указанную страницу)
boy illustration
Как решить проблему зависания и низкой скорости при установке зависимостей с помощью npm. Существуют ли доступные источники npm, которые могут решить эту проблему?
boy illustration
Серия From Zero to Fun: Uni-App WeChat Payment Practice WeChat авторизует вход в систему и украшает страницу заказа, создает интерфейс заказа и инициирует запрос заказа
boy illustration
Серия uni-app: uni.navigateЧтобы передать скачок значения
boy illustration
Апплет WeChat настраивает верхнюю панель навигации и адаптируется к различным моделям.
boy illustration
JS-время конвертации
boy illustration
Обеспечьте бесперебойную работу ChromeDriver 125: советы по решению проблемы chromedriver.exe не найдены
boy illustration
Поле комментария, щелчок мышью, специальные эффекты, js-код
boy illustration
Объект массива перемещения объекта JS
boy illustration
Как открыть разрешение на позиционирование апплета WeChat_Как использовать WeChat для определения местонахождения друзей
boy illustration
Я даю вам два набора из 18 простых в использовании фонов холста Power BI, так что вам больше не придется возиться с цветами!
boy illustration
Получить текущее время в js_Как динамически отображать дату и время в js
boy illustration
Вам необходимо изучить сочетания клавиш vsCode для форматирования и организации кода, чтобы вам больше не приходилось настраивать формат вручную.
boy illustration
У ChatGPT большое обновление. Всего за 45 минут пресс-конференция показывает, что OpenAI сделал еще один шаг вперед.
boy illustration
Copilot облачной разработки — упрощение разработки
boy illustration
Микросборка xChatGPT с низким кодом, создание апплета чат-бота с искусственным интеллектом за пять шагов
boy illustration
CUDA Out of Memory: идеальное решение проблемы нехватки памяти CUDA
boy illustration
Анализ кластеризации отдельных ячеек, который должен освоить каждый&MarkerгенетическийВизуализация
boy illustration
vLLM: мощный инструмент для ускорения вывода ИИ
boy illustration
CodeGeeX: мощный инструмент генерации кода искусственного интеллекта, который можно использовать бесплатно в дополнение к второму пилоту.
boy illustration
Машинное обучение Реальный бой LightGBM + настройка параметров случайного поиска: точность 96,67%
boy illustration
Бесшовная интеграция, мгновенный интеллект [1]: платформа больших моделей Dify-LLM, интеграция без кодирования и встраивание в сторонние системы, более 42 тысяч звезд, чтобы стать свидетелями эксклюзивных интеллектуальных решений.
boy illustration
LM Studio для создания локальных больших моделей
boy illustration
Как определить количество слоев и нейронов скрытых слоев нейронной сети?
boy illustration
[Отслеживание целей] Подробное объяснение ByteTrack и детали кода