Xen

Скриншот программы:
Xen
Детали программы:
Версия: 4.11.0 обновление
Дата загрузки: 17 Aug 18
Тип распространения: Бесплатная
Популярность: 32

Rating: nan/5 (Total Votes: 0)

Xen - это абсолютно бесплатный и открытый монитор виртуальной машины для компьютерных платформ x86, разработанный с нуля для поддержки выполнения нескольких гостевых операционных систем в изолированных средах на одной машине. Это один из самых мощных решений для виртуальных машин для Linux, UNIX и POSIX.


Особенности с первого взгляда

Ключевые особенности включают поддержку EFI (Extensible Firmware Interface), поддерживает до 4095 хост-процессоров на 64-битной аппаратной платформе, поддерживает ядра dom0, сжатые методом сжатия xz, поддерживает переназначение прерываний на устройство, а также множество Сегменты PCI.

Среди других поддерживаемых архитектур Xen хорошо работает на X86-64, ARMv7 + расширениях виртуализации, а также на совершенно новой архитектуре ARMv8. Xen также поддерживает несколько операционных систем на базе ядра Linux, включая Red Hat Enterprise Linux, SuSE, Debian, OpenMandriva и многие другие, а также различные варианты BSD.

Начало работы с Xen

Xen можно найти в основных репозиториях программного обеспечения современных дистрибутивов GNU / Linux, что означает, что он может быть легко установлен из вашего приложения Software Center. Он в основном распространяется как исходный пакет, который может быть оптимизирован для конкретной операционной системы / аппаратной архитектуры.

Если вы снова используете хардкор-пользователя Linux и хотите установить Xen из источников, загрузите последнюю версию с сайта Softoware или официального сайта проекта (см. ссылку на главную страницу в конце статьи), сохраните его на своем Домашний каталог и используйте инструмент менеджера архива для извлечения его содержимого.

Откройте приложение эмулятора терминала, перейдите к месту, где вы извлекли архивные файлы (например, cd /home/softoware/xen-4.5.0 - замените & lsquo; softoware & rsquo; с вашим именем пользователя), запустите & lsquo; ./configure & amp; & amp; & amp; сделать & Rsquo; команду для конфигурирования и компиляции программы, за которой следует установка & lsquo; sudo make install & rsquo; чтобы установить его в системе после успешного процесса компиляции.

Что нового в этой версии:

  • c30ab3d97c: SUPPORT.md: добавьте отсутствующую информацию о продолжительности жизни
  • 5f6000a985: адаптировать SUPPORT.md для соответствия 4.11
  • f9e1bddbc8: SUPPORT.md: исправить опечатку
  • 3614c7d949: SUPPORT.md: Документируйте новое правило упорядочения текста
  • 6f8e8bae87: SUPPORT.md: переместить описания до состояния.
  • 2e02212848: docs / Makefile: формат SUPPORT.md в верхний слой
  • 73c8c2c211: docs / Makefile: ввести GENERATE_PANDOC_RULE_RAW
  • c07d2195b0: docs / gen-html-index: документы поддержки на уровне верхнего уровня
  • 0609dd1c5e: docs / gen-html-index: Извлечение заголовков из документов HTML
  • a3459c741e: SUPPORT.md: Синтаксис: укажите заголовок, а не ложную пустую область
  • de3ccf0790: SUPPORT.md: Синтаксис: исправить опечатку «Штаты»
  • f7a7eeac29: SUPPORT.md: Синтаксис: исправить некоторые списки маркеров
  • cba8690ea8: x86: исправить медленный путь int80 после добавления XPTI
  • d27de97cd1: libxl: укажите формат вставленного cdrom
  • 656c14780c: x86 / msr: исправить поведение эмуляции MSR_PRED_CMD
  • 8d37ee1d10: x86 / VT-x: Исправить определение EFER.LMA в vmcs_dump_vcpu ()
  • 696b24dfe1: x86 / HVM: подавление завершения ввода / вывода для вывода порта
  • 41015e7945: x86 / pv: исправить ошибочные сегменты для записи в 32-битной записке
  • 4f12a18bc2: x86 / XPTI: уменьшить .text.entry
  • 649e617335: x86: состояние с включенным протоколом XPTI
  • bd26592fdf: x86: отключить XPTI, когда RDCL_NO
  • afece29fe9: x86 / pv: исправить передачу записей в файл% dr7
  • 2e34343fb2: xen / arm: Relax ARM_SMCCC_ARCH_WORKAROUND_1 обнаружение
  • d9756ca980: xen / arm: vpsci: исправить логику, чтобы запустить AArch32 vCPU в режиме Thumb.
  • e2ee191d3d: xen / arm: vpsci: ввести и использовать PSCI_INVALID_ADDRESS
  • 2efc116c68: xen / arm: psci: Консолидация печати версии PSCI
  • 51742fbc08: xen / arm: vpsci: удалить параметр 'ver' из do_common_cpu
  • 4fcd9d14b1: xen / arm64: Убейте PSCI_GET_VERSION как вариант-2 для решения
  • 1ef0574d3b: xen / arm64: Добавить ARM_SMCCC_ARCH_WORKAROUND_1 Поддержка упрощения BP
  • ee109adca7: xen / arm: smccc: внедрить встроенный примитив SMCCC v1.1
  • b2682eddc2: xen / arm: psci: обнаружение версии SMCCC
  • 9746779afb: xen / arm: smccc: добавить макросы SMCCC_VERSION, SMCCC_VERSION_ {MINOR, MAJOR}
  • 1d99ad5b35: xen / arm64: печать сообщения на процессор с использованием метода упрощения BP
  • 9beb8a4461: xen / arm64: выполнить быстрый путь для обработки SMCCC_ARCH_WORKAROUND_1
  • ef4b4d7ab0: xen / arm: Adapt smccc.h, чтобы иметь возможность использовать его в коде сборки
  • df71252060: xen / arm: vsmc: выполнить SMCCC_ARCH_WORKAROUND_1 Поддержка упрощения BP
  • 7f9ebebcec: xen / arm: vsmc: Внедрить SMCCC 1.1
  • 4eb96e3eda: xen / arm: vpsci: Добавить поддержку PSCI 1.1
  • 3087ba8278: xen / arm: psci: исправить определения PSCI
  • 76a6dddcf8: xen / arm: vpsci: Перемещение функции PSCI с vsmc.c на vpsci.c
  • 0f92968bcf: x86 / vlapic: очистить бит TMR после приема прерывания, вызванного краем, в IRR
  • 9e9185f661: SUPPORT.md: укажите поддержку различных форматов изображений.
  • e87e798673: SUPPORT.md: уточните, что протокол PV-клавиатуры включает поддержку мыши.
  • 6131a2c0ed: cpufreq / ondemand: исправить гонку при отключении процессора.
  • 47621a4ed1: x86: удалить CR-чтение из пути выхода к горю.
  • 489cfbc1b9: x86: немного уменьшить накладные расходы на ленту Meltdown
  • 860f470ba1: x86 / xpti: не отображайте страницы защиты стека
  • 8462c575d9: x86 / xpti: скрыть почти все .text и все .data / .rodata / .bss сопоставления
  • cee48d83cb: x86: игнорирование попыток загрузки гостевого микрокода
  • 20db434e90: ocaml: сборка исправлений.
  • 0d2f9c89f7: Объединить ветку 'merge-comet-staging-4.10-v1' в staging-4.10
  • a1189f93ef: libxl / pvh: заставить гостей PVH использовать остановку xenstore
  • c37114cbf8: x86 / HVM: не создавайте неправильное впечатление о том, что WRMSR преуспевает
  • 5ede9f9600: x86 / PV: исправление за один раз в контроле пределов бит-карты ввода-вывода
  • 7e0796d3fe: grant: освободить доменную блокировку на пути «map» в cache_flush
  • b9aa790d31: x86 / pv: Избегать утечки значений других пользователей MSR_TSC_AUX в контекст PV
  • 4867afbc95: x86 / nmi: запустить сторожевой таймер NMI на CPU0 после загрузки SMP
  • 3deb58f832: x86 / srat: исправить конец вычисления в узлах_cover_memory ()
  • 3376822f15: x86 / hvm / dmop: копировать только то, что нужно / от гостя.
  • 37dd90787e: x86 / entry: используйте 32-битные xors rater, чем 64-битные xors для очистки GPR.
  • 296705818c: x86 / emul: исправить декодирование переопределений сегментов в режиме 64 бит
  • 0857b09aae: x86 / spec_ctrl: исправить несколько ошибок в SPEC_CTRL_ENTRY_FROM_INTR_IST
  • 4195d40e31: x86 / srat: исправить окончание pfn check в valid_numa_range ()
  • ab62fc3171: x86: уменьшить накладные расходы IP-сети Meltdown.
  • 0e10f28586: x86 / NMI: инвертировать условие в nmi_show_execution_state ()
  • a05fc8e5be: x86 / emul: исправить эмуляцию invlpga
  • 083bd83354: ignores: update .hgignore
  • b0e975c822: игнорировать: обновить список игнорируемых файлов git
  • def29407de: прошивка / прокладка: лучшая фильтрация промежуточных файлов при настройке дерева Xen
  • 8c3bbc7c2b: прошивка / прокладка: лучшая фильтрация файлов зависимостей при настройке дерева Xen
  • cee8bb62ff: build: удалить цели, связанные с шайбой.
  • 08a941bdac: shim: разрешить создание только прокладки с компоновщиком, не совместимым с build-ID.
  • 7dc817b750: прошивка / прокладка: избегайте ошибки mkdir во время установки дерева Xen.
  • 21080841ae: прошивка / прокладка: правильно обрабатывать ошибки во время установки дерева Xen.
  • dc4a23b115: прошивка / прокладка: обновить Makefile
  • da7543dd32: x86 / shim: не используйте 32-разрядное сравнение по логической переменной
  • 9fd27db52a: xen / pvshim: исправить перенаправление гиперссылок GNTTABOP_query_size с помощью SMAP
  • 6d9b6bf418: Отменить «x86 / boot: карта больше, чем первая 16MB»
  • 79f04299ca: x86: переместить pvh_info
  • 9ce99ad413: xen / shim: адрес RSDP для драйвера ACPI
  • 186c2f57bd: libxl: сообщение, связанное с нижней строкой, до уровня DEBUG
  • 357bf02e49: x86 / shim: использовать кредитный планировщик
  • 81306edf86: x86 / guest: очистить гость / xen.h
  • 14e1a434f4: libxl: удалить пробелы, введенные в 62982da926
  • b869742c99: xen / pvshim: switch shim.c для использования typesafe mfn_to_page и virt_to_mfn
  • d691e41793: xen / pvshim: исправить проблемы с кодированием
  • ee478f4737: xen / pvshim: изменить порядок кода replace_va_mapping
  • f05a7c5148: xen / pvshim: идентификационные штырьки vCPUs для pCPU
  • 7027acfc1f: инструменты: исправить сборку после bdf693ee61b48
  • bc513e82ed: Не создавайте xen-shim для 32-битного узла сборки
  • af63193017: Отменить «x86 / guest: использовать область vcpu_info из shared_info»
  • a44e83b712: x86 / shim: зафиксировать изменения shim.config для ветки 4.10
  • da3a46d017: Сложить тег '4.10.0-shim-comet-3' в staging-4.10
  • b6a6458b13: xen / arm: Flush TLB перед включением MMU во избежание устаревших записей
  • e3dfd5d1dd: xen / arm: vgic: Убедитесь, что число SPI кратно 32
  • a6780c122b: x86 / hvm: запретить создание доменов HVM без эмуляции локальной APIC
  • 16edf98e95: gnttab: не слепо освобождайте страницы статуса при изменении версии.
  • e2ceb2ed66: gnttab / ARM: не повреждать общий массив GFN
  • 1b1c059099: память: неявно отменить для уменьшения-резервирования
  • 5e91fc4d3b: xen / arm: cpuerrata: на самом деле проверить ошибки на не загрузочных CPU
  • 3921128fcb: xen / arm: vsmc: Не используйте идентификаторы функций, которые не существуют
  • cd2e1436b1: xen / arm: vpsci: удаление фиктивных MIGRATE и MIGRATE_INFO_UP_CPU
  • 3181472a5c: x86 / idle: очистить SPEC_CTRL в режиме ожидания
  • 5644514050: x86 / cpuid: предлагать гостям непрямые филиалы.
  • db12743f2d: x86 / ctxt: вызывать барьер спекуляции между контекстами vcpu
  • bc0e599a83: x86 / boot: рассчитать наиболее подходящее смягчение BTI для использования
  • fc81946cea: x86 / entry: избегать использования альтернатив в маршрутах NMI / # MC.
  • ce7d7c0168: x86 / entry: Организовать слияние записи RSB / RAS на Xen
  • a695f8dce7: x86 / запись: организация использования MSR_SPEC_CTRL в каждой точке ввода / выхода
  • 92efbe8658: x86 / hvm: разрешить гостям прямой доступ к MSR_ {SPEC_CTRL, PRED_CMD}
  • 8baba874d6: x86 / migrate: перемещение MSR_SPEC_CTRL при миграции
  • 79891ef944: x86 / msr: эмуляция MSR_ {SPEC_CTRL, PRED_CMD} для гостей
  • 641c11ef29: x86 / cpuid: Обработка IBRS / IBPB, STIBP и IBRS для гостей
  • 05eba93a0a: x86: исправить GET_STACK_END
  • a69cfdf0c1: x86 / acpi: обрабатывать softirq при печати данных ACPI CPU
  • 0f4be6e2c4: xen / x86: указать идентификатор домена домена cpuid
  • 0a7e6b50e0: x86 / svm: предлагать CPUID Ошибка для гостей AMD HVM, а также
  • 65ee6e043a: x86 / cmdline: введите параметр командной строки, чтобы отключить IBRS / IBPB, STIBP и IBPB
  • 129880dd8f: x86 / feature: Определения для непрямых ветвящихся элементов управления
  • c513244d8e: x86: Внедрение альтернативных косвенных трюков
  • 0e12c2c881: x86 / amd: попытайтесь установить lfence как «Сериализация отправки»
  • 6aaf353f2e: x86 / boot: сообщить подробности о спекулятивных смягчениях
  • 32babfc19a: x86: поддержка косвенных thunks из кода сборки
  • 47bbcb2dd1: x86: поддержка компиляции с непрямыми ветвями.
  • 8743fc2ef7: common / wait: Уточнения для ожидания инфраструктуры
  • 1830b20b6b: x86 / entry: стереть гостевое GPR-состояние при входе в Xen
  • ab95cb0d94: x86 / hvm: используйте SAVE_ALL для создания фрейма cpu_user_regs после VMExit
  • d02ef3d274: x86 / entry: переупорядочить RESTORE_ALL для восстановления регистра в порядке стека
  • e32f814160: x86: введите общий cpuid_policy_updated ()
  • c534ab4e94: x86 / hvm: переименовать update_guest_vendor () обратный вызов cpuid_policy_changed ()
  • be3138b6f6: x86 / alt: введите ALTERNATIVE {, _ 2} макросы
  • 79012ead93: x86 / alt: вывести альтернативный asm в отдельный файл заголовка
  • bbd093c503: xen / arm32: entry: Документируйте назначение r11 в обработчике ловушек
  • a69a8b5fdc: xen / arm32: Invalidate icache для гостевой системы существует для Cortex-A15
  • f167ebf6b3: xen / arm32: аннулировать BTB на гостевом выходе для Cortex A17 и 12
  • c4c0187839: xen / arm32: добавить скелет, чтобы усилить атаки сглаживания ветви.
  • 19ad8a7287: xen / arm32: entry: Добавить отсутствующую запись trap_reset
  • 3caf32c470: xen / arm32: добавьте отсутствующие значения MIDR для Cortex-A17 и A12
  • df7be94f26: xen / arm32: запись: Консолидация макросов DEFINE_TRAP_ENTRY_ *
  • f379b70609: SUPPORT.md: исправлена ​​версия и начальная-релиз
  • 728fadb586: xen / arm: cpuerrata: Удалить percpu.h включить
  • 928112900e: xen / arm64: выполнить усиление прогнозирования ветвления для затронутых процессоров Cortex-A.
  • cae6e1572f: xen / arm64: добавьте скелет, чтобы упростить атаки сглаживания ветви.
  • d1f4283a1d: xen / arm: cpuerrata: Добавить MIDR_ALL_VERSIONS
  • 0f7a4faafb: xen / arm64: добавьте отсутствующие значения MIDR для Cortex-A72, A73 и A75
  • b829d42829: xen / arm: ввести ответный вызов включения, чтобы включить возможности для каждого онлайн-процессора.
  • fa23f2aaa2: xen / pvh: поместите батут на страницу 0x1
  • 79f797c3f4: прошивка / прокладка: исправьте процесс сборки, чтобы использовать параметры поиска POSIX.
  • 69f4d872e5: x86 / guest: используйте область vcpu_info из shared_info
  • 7cccd6f748: x86: разрешить отключить ленту поддержки Meltdown.
  • 234f481337: x86: смягчающая лента против вредоносных 64-битных гостей PV.
  • 57dc197cf0: x86 / mm: всегда устанавливайте _PAGE_ACCESSED для обновлений L4e.
  • 7209b8bf08: x86: Не используйте потенциально неправильные значения CPUID для информации о топологии.
  • 910dd005da: x86 / entry: удалить поддержку частичных кадров cpu_user_regs
  • 50d24b9530: x86 / upcall: введите ложное событие после установки вектора upcall
  • c89c622b89: x86 / E820: не перегружать массив
  • 3b8d88d4fa: x86 / IRQ: условно сохранить права доступа на пути к ошибкам карты
  • 6f1979c8e4: -xen-attach необходим для загрузки pvh с qemu-xen
  • 0a515eeb96: xen / pvshim: карта vcpu_info ранее для AP
  • 0e2d64ae8f: xl: pvshim: предоставить и документировать xl config
  • ab9e3854dd: libxl: pvshim: ввести pvshim_extra
  • abdde49edc: libxl: pvshim: укажите параметры конфигурации первого класса, чтобы включить режим прокладки
  • 321ef983a0: xen / shim: разрешить DomU иметь как можно больше vcpus
  • c9083de0ae: xen / shim: авария вместо перезагрузки в режиме прокладки
  • b5be9c817d: xen / pvshim: используйте позицию по умолчанию для отображений m2p
  • 9d60bc96be: xen / shim: изменить поведение параметра shim_mem
  • 29dd3142bf: xen / pvshim: память hotplug
  • 5b6c3ffa1d: xen / pvshim: поддержка vCPU hotplug
  • 004646a1dd: xen / pvshim: установите max_pages в значение tot_pages
  • 7dcc20e0c8: xen / pvshim: добавить параметр cmdline shim_mem
  • 83c838c9f8: xen / pvshim: добавьте поддержку переноса.
  • cc7d96b98c: x86 / pv-shim: теневая страница панели PV для L2 DomU
  • 7f5eb7d04e: xen / pvshim: добавить операции таблицы расширений
  • bbad376ab1: xen / pvshim: forward evtchn ops между L0 Xen и L2 DomU
  • da4518c559: xen / pvshim: установить правильное значение домида
  • 1cd703979f: xen / pvshim: изменить конструктор Dom0 для создания DomU
  • 60dd95357c: xen: отметьте страницы xenstore / console как RAM
  • 0ba5d8c275: xen / pvshim: пропустите Domq-доменные компоненты для создания доменов
  • 4ba6447e7d: xen / pvh: не отмечайте низкий 1 МБ как IO mem
  • 2b8a95a296: xen / x86: возможность выбора VGA
  • cdb1fb4921: xen / arm: bootfdt: используйте правильные значения по умолчанию для # адресных ячеек и # size-cells
  • a40186478c: xen / arm: gic-v3: выйдите из системы, если gicv3_cpu_init fail
  • 3784256866: инструменты / прошивка: сборка и установка xen-shim
  • b5ead1fad3: x86 / shim: параметры Kconfig и командной строки
  • aa96a59dc2: x86 / guest: используйте консоль PV для ввода / вывода Xen / Dom0
  • 7477359b9a: x86 / guest: добавить код консоли PV.
  • cb5dc94ba7: x86 / guest: настройка канала upcall канала события
  • 3b058a3eab: x86: не проглатывайте первую командную строку в гостевом режиме
  • 5a543c6f39: x86: чтение стенограммы из Xen при работе в режиме pvh
  • 949eb11d58: x86: калибровка таймера APIC при работе в качестве гостя
  • f5ca36927e: x86: источник времени xen pv clock
  • 68e7a08436: x86 / guest: map per-cpu vcpu_info.
  • d2df09c92b: xen / guest: вывести идентификатор vCPU из Xen
  • efa15c993b: x86 / guest: карта shared_info страница
  • 83186a8e69: xen / pvshim: отслеживать используемые диапазоны PFN
  • 1fa5444834: xen: ввести rangeet_claim_range
  • 10128f33aa: xen / console: введите console = xen
  • 2f5a012143: x86 / pvh: извлечение карты памяти из Xen
  • 9752c7422b: x86 / shutdown: поддержка использования SCHEDOP_ {shutdown, reboot}
  • b38cc15b2f: x86 / гость: поддержка Hypercall
  • 3d1afab1f6: x86 / entry: Зонд для Xen в начале загрузки
  • 31b664a93f: x86 / boot: карта больше, чем первые 16 МБ.
  • db65173fe7: x86 / запись: ранний загрузочный код PVH
  • 51f937a39b: x86: создать двоичный файл, который можно загрузить как PVH
  • 887c705600: x86: введите макрос ELFNOTE
  • f575701f3c: x86 / link: переместить заголовки программ
  • af2f50b2b6: x86 / Kconfig: варианты поддержки Xen и PVH.
  • b538a13a68: x86: общая поддержка сбоев cpuid.
  • 57dc22b80d: x86 / fixmap: Изменить fix_to_virt (), чтобы вернуть указатель void
  • 48811d481c: tools / ocaml: Расширьте domain_create (), чтобы взять arch_domainconfig
  • 78898c9d1b: tools / ocaml: Expose arch_config в domaininfo
  • e7c8187b91: xen / domctl: возвращает arch_config через getdomaininfo
  • 9e46ae12ed: ACPICA: добавьте таймер управления питанием ACPI (таймер PM).
  • ff1fb8fe53: x86 / link: ввести и использовать SECTION_ALIGN
  • 92a6295c30: x86 / time: напечатайте более полезную ошибку, если таймер платформы не найден.
  • 78e9cc3488: xen / common: немного увеличить буфер регистрации гостей.
  • 667275050d: tools / libxc: поддержка нескольких модулей.
  • 4621c10f48: tools / libelf: исправить записи эльфов для гостей PVH
  • 40938b5d56: tools / libxc: удалить постороннюю новую строку в xc_dom_load_acpi
  • 5840f40e88: xen / x86: указать идентификатор домена домена cpuid
  • caff7f9b59: x86 / svm: предложение CPUID Ошибка для гостей AMD HVM, а также
  • 69e302e59c: x86 / upcall: введите ложное событие после установки вектора upcall
  • a87ec4833a: x86 / msr: Free msr_vcpu_policy во время уничтожения vcpu
  • 9dc5eda576: x86 / vmx: Не используйте hvm_inject_hw_exception () в long_mode_do_msr_write ()
  • 135b67e9bd: xen / efi: Исправить сборку с помощью clang-5.0
  • 682a9d8d37: gnttab: улучшить блокировку GNTTABOP_cache_flush
  • 19dcd8e47d: gnttab: корректное управление пакетной обработкой GNTTABOP_cache_flush
  • e5364c32c6: x86 / microcode: добавьте поддержку загрузки микрокода fam17h.
  • e2dc7b584f: x86 / mm: утверждение фальшивого пейджингового режима
  • c8f4f45e04: x86 / mb2: избегать изображения Xen при поиске модуля / позиции crashernel.
  • 4150501b71: x86 / vvmx: не разрешать затенение vmcs для вложенных гостей
  • ab7be6ce4a: xen / pv: правильно постройте GDT d0v0

Что нового в версии 4.10.1:

  • c30ab3d97c: SUPPORT.md: добавьте отсутствующую информацию о продолжительности жизни
  • 5f6000a985: адаптировать SUPPORT.md для соответствия 4.11
  • f9e1bddbc8: SUPPORT.md: исправить опечатку
  • 3614c7d949: SUPPORT.md: Документируйте новое правило упорядочения текста
  • 6f8e8bae87: SUPPORT.md: переместить описания до состояния.
  • 2e02212848: docs / Makefile: формат SUPPORT.md в верхний слой
  • 73c8c2c211: docs / Makefile: ввести GENERATE_PANDOC_RULE_RAW
  • c07d2195b0: docs / gen-html-index: документы поддержки на уровне верхнего уровня
  • 0609dd1c5e: docs / gen-html-index: Извлечение заголовков из документов HTML
  • a3459c741e: SUPPORT.md: Синтаксис: укажите заголовок, а не ложную пустую область
  • de3ccf0790: SUPPORT.md: Синтаксис: исправить опечатку «Штаты»
  • f7a7eeac29: SUPPORT.md: Синтаксис: исправить некоторые списки маркеров
  • cba8690ea8: x86: исправить медленный путь int80 после добавления XPTI
  • d27de97cd1: libxl: укажите формат вставленного cdrom
  • 656c14780c: x86 / msr: исправить поведение эмуляции MSR_PRED_CMD
  • 8d37ee1d10: x86 / VT-x: Исправить определение EFER.LMA в vmcs_dump_vcpu ()
  • 696b24dfe1: x86 / HVM: подавление завершения ввода / вывода для вывода порта
  • 41015e7945: x86 / pv: исправить ошибочные сегменты для записи в 32-битной записке
  • 4f12a18bc2: x86 / XPTI: уменьшить .text.entry
  • 649e617335: x86: состояние с включенным протоколом XPTI
  • bd26592fdf: x86: отключить XPTI, когда RDCL_NO
  • afece29fe9: x86 / pv: исправить передачу записей в файл% dr7
  • 2e34343fb2: xen / arm: Relax ARM_SMCCC_ARCH_WORKAROUND_1 обнаружение
  • d9756ca980: xen / arm: vpsci: исправить логику, чтобы запустить AArch32 vCPU в режиме Thumb.
  • e2ee191d3d: xen / arm: vpsci: ввести и использовать PSCI_INVALID_ADDRESS
  • 2efc116c68: xen / arm: psci: Консолидация печати версии PSCI
  • 51742fbc08: xen / arm: vpsci: удалить параметр 'ver' из do_common_cpu
  • 4fcd9d14b1: xen / arm64: Убейте PSCI_GET_VERSION как вариант-2 для решения
  • 1ef0574d3b: xen / arm64: Добавить ARM_SMCCC_ARCH_WORKAROUND_1 Поддержка упрощения BP
  • ee109adca7: xen / arm: smccc: внедрить встроенный примитив SMCCC v1.1
  • b2682eddc2: xen / arm: psci: обнаружение версии SMCCC
  • 9746779afb: xen / arm: smccc: добавить макросы SMCCC_VERSION, SMCCC_VERSION_ {MINOR, MAJOR}
  • 1d99ad5b35: xen / arm64: печать сообщения на процессор с использованием метода упрощения BP
  • 9beb8a4461: xen / arm64: выполнить быстрый путь для обработки SMCCC_ARCH_WORKAROUND_1
  • ef4b4d7ab0: xen / arm: Adapt smccc.h, чтобы иметь возможность использовать его в коде сборки
  • df71252060: xen / arm: vsmc: выполнить SMCCC_ARCH_WORKAROUND_1 Поддержка упрощения BP
  • 7f9ebebcec: xen / arm: vsmc: Внедрить SMCCC 1.1
  • 4eb96e3eda: xen / arm: vpsci: Добавить поддержку PSCI 1.1
  • 3087ba8278: xen / arm: psci: исправить определения PSCI
  • 76a6dddcf8: xen / arm: vpsci: Перемещение функции PSCI с vsmc.c на vpsci.c
  • 0f92968bcf: x86 / vlapic: очистить бит TMR после приема прерывания, вызванного краем, в IRR
  • 9e9185f661: SUPPORT.md: укажите поддержку различных форматов изображений.
  • e87e798673: SUPPORT.md: уточните, что протокол PV-клавиатуры включает поддержку мыши.
  • 6131a2c0ed: cpufreq / ondemand: исправить гонку при отключении процессора.
  • 47621a4ed1: x86: удалить CR-чтение из пути выхода к горю.
  • 489cfbc1b9: x86: немного уменьшить накладные расходы на ленту Meltdown
  • 860f470ba1: x86 / xpti: не отображайте страницы защиты стека
  • 8462c575d9: x86 / xpti: скрыть почти все .text и все .data / .rodata / .bss сопоставления
  • cee48d83cb: x86: игнорирование попыток загрузки гостевого микрокода
  • 20db434e90: ocaml: сборка исправлений.
  • 0d2f9c89f7: Объединить ветку 'merge-comet-staging-4.10-v1' в staging-4.10
  • a1189f93ef: libxl / pvh: заставить гостей PVH использовать остановку xenstore
  • c37114cbf8: x86 / HVM: не создавайте неправильное впечатление о том, что WRMSR преуспевает
  • 5ede9f9600: x86 / PV: исправление за один раз в контроле пределов бит-карты ввода-вывода
  • 7e0796d3fe: grant: освободить доменную блокировку на пути «map» в cache_flush
  • b9aa790d31: x86 / pv: Избегать утечки значений других пользователей MSR_TSC_AUX в контекст PV
  • 4867afbc95: x86 / nmi: запустить сторожевой таймер NMI на CPU0 после загрузки SMP
  • 3deb58f832: x86 / srat: исправить конец вычисления в узлах_cover_memory ()
  • 3376822f15: x86 / hvm / dmop: копировать только то, что нужно / от гостя.
  • 37dd90787e: x86 / entry: используйте 32-битные xors rater, чем 64-битные xors для очистки GPR.
  • 296705818c: x86 / emul: исправить декодирование переопределений сегментов в режиме 64 бит
  • 0857b09aae: x86 / spec_ctrl: исправить несколько ошибок в SPEC_CTRL_ENTRY_FROM_INTR_IST
  • 4195d40e31: x86 / srat: исправить окончание pfn check в valid_numa_range ()
  • ab62fc3171: x86: уменьшить накладные расходы IP-сети Meltdown.
  • 0e10f28586: x86 / NMI: инвертировать условие в nmi_show_execution_state ()
  • a05fc8e5be: x86 / emul: исправить эмуляцию invlpga
  • 083bd83354: ignores: update .hgignore
  • b0e975c822: игнорировать: обновить список игнорируемых файлов git
  • def29407de: прошивка / прокладка: лучшая фильтрация промежуточных файлов при настройке дерева Xen
  • 8c3bbc7c2b: прошивка / прокладка: лучшая фильтрация файлов зависимостей при настройке дерева Xen
  • cee8bb62ff: build: удалить цели, связанные с шайбой.
  • 08a941bdac: shim: разрешить создание только прокладки с компоновщиком, не совместимым с build-ID.
  • 7dc817b750: прошивка / прокладка: избегайте ошибки mkdir во время установки дерева Xen.
  • 21080841ae: прошивка / прокладка: правильно обрабатывать ошибки во время установки дерева Xen.
  • dc4a23b115: прошивка / прокладка: обновить Makefile
  • da7543dd32: x86 / shim: не используйте 32-разрядное сравнение по логической переменной
  • 9fd27db52a: xen / pvshim: исправить перенаправление гиперссылок GNTTABOP_query_size с помощью SMAP
  • 6d9b6bf418: Отменить «x86 / boot: карта больше, чем первая 16MB»
  • 79f04299ca: x86: переместить pvh_info
  • 9ce99ad413: xen / shim: адрес RSDP для драйвера ACPI
  • 186c2f57bd: libxl: сообщение, связанное с нижней строкой, до уровня DEBUG
  • 357bf02e49: x86 / shim: использовать кредитный планировщик
  • 81306edf86: x86 / guest: очистить гость / xen.h
  • 14e1a434f4: libxl: удалить пробелы, введенные в 62982da926
  • b869742c99: xen / pvshim: switch shim.c для использования typesafe mfn_to_page и virt_to_mfn
  • d691e41793: xen / pvshim: исправить проблемы с кодированием
  • ee478f4737: xen / pvshim: изменить порядок кода replace_va_mapping
  • f05a7c5148: xen / pvshim: идентификационные штырьки vCPUs для pCPU
  • 7027acfc1f: инструменты: исправить сборку после bdf693ee61b48
  • bc513e82ed: Не создавайте xen-shim для 32-битного узла сборки
  • af63193017: Отменить «x86 / guest: использовать область vcpu_info из shared_info»
  • a44e83b712: x86 / shim: зафиксировать изменения shim.config для ветки 4.10
  • da3a46d017: Сложить тег '4.10.0-shim-comet-3' в staging-4.10
  • b6a6458b13: xen / arm: Flush TLB перед включением MMU во избежание устаревших записей
  • e3dfd5d1dd: xen / arm: vgic: Убедитесь, что число SPI кратно 32
  • a6780c122b: x86 / hvm: запретить создание доменов HVM без эмуляции локальной APIC
  • 16edf98e95: gnttab: не слепо освобождайте страницы статуса при изменении версии.
  • e2ceb2ed66: gnttab / ARM: не повреждать общий массив GFN
  • 1b1c059099: память: неявно отменить для уменьшения-резервирования
  • 5e91fc4d3b: xen / arm: cpuerrata: на самом деле проверить ошибки на не загрузочных CPU
  • 3921128fcb: xen / arm: vsmc: Не используйте идентификаторы функций, которые не существуют
  • cd2e1436b1: xen / arm: vpsci: удаление фиктивных MIGRATE и MIGRATE_INFO_UP_CPU
  • 3181472a5c: x86 / idle: очистить SPEC_CTRL в режиме ожидания
  • 5644514050: x86 / cpuid: предлагать гостям непрямые филиалы.
  • db12743f2d: x86 / ctxt: вызывать барьер спекуляции между контекстами vcpu
  • bc0e599a83: x86 / boot: рассчитать наиболее подходящее смягчение BTI для использования
  • fc81946cea: x86 / entry: избегать использования альтернатив в маршрутах NMI / # MC.
  • ce7d7c0168: x86 / entry: Организовать слияние записи RSB / RAS на Xen
  • a695f8dce7: x86 / запись: организация использования MSR_SPEC_CTRL в каждой точке ввода / выхода
  • 92efbe8658: x86 / hvm: разрешить гостям прямой доступ к MSR_ {SPEC_CTRL, PRED_CMD}
  • 8baba874d6: x86 / migrate: перемещение MSR_SPEC_CTRL при миграции
  • 79891ef944: x86 / msr: эмуляция MSR_ {SPEC_CTRL, PRED_CMD} для гостей
  • 641c11ef29: x86 / cpuid: Обработка IBRS / IBPB, STIBP и IBRS для гостей
  • 05eba93a0a: x86: исправить GET_STACK_END
  • a69cfdf0c1: x86 / acpi: обрабатывать softirq при печати данных ACPI CPU
  • 0f4be6e2c4: xen / x86: указать идентификатор домена домена cpuid
  • 0a7e6b50e0: x86 / svm: предлагать CPUID Ошибка для гостей AMD HVM, а также
  • 65ee6e043a: x86 / cmdline: введите параметр командной строки, чтобы отключить IBRS / IBPB, STIBP и IBPB
  • 129880dd8f: x86 / feature: Определения для непрямых ветвящихся элементов управления
  • c513244d8e: x86: Внедрение альтернативных косвенных трюков
  • 0e12c2c881: x86 / amd: попытайтесь установить lfence как «Сериализация отправки»
  • 6aaf353f2e: x86 / boot: сообщить подробности о спекулятивных смягчениях
  • 32babfc19a: x86: поддержка косвенных thunks из кода сборки
  • 47bbcb2dd1: x86: поддержка компиляции с непрямыми ветвями.
  • 8743fc2ef7: common / wait: Уточнения для ожидания инфраструктуры
  • 1830b20b6b: x86 / entry: стереть гостевое GPR-состояние при входе в Xen
  • ab95cb0d94: x86 / hvm: используйте SAVE_ALL для создания фрейма cpu_user_regs после VMExit
  • d02ef3d274: x86 / entry: переупорядочить RESTORE_ALL для восстановления регистра в порядке стека
  • e32f814160: x86: введите общий cpuid_policy_updated ()
  • c534ab4e94: x86 / hvm: переименовать update_guest_vendor () обратный вызов cpuid_policy_changed ()
  • be3138b6f6: x86 / alt: введите ALTERNATIVE {, _ 2} макросы
  • 79012ead93: x86 / alt: вывести альтернативный asm в отдельный файл заголовка
  • bbd093c503: xen / arm32: entry: Документируйте назначение r11 в обработчике ловушек
  • a69a8b5fdc: xen / arm32: Invalidate icache для гостевой системы существует для Cortex-A15
  • f167ebf6b3: xen / arm32: аннулировать BTB на гостевом выходе для Cortex A17 и 12
  • c4c0187839: xen / arm32: добавить скелет, чтобы усилить атаки сглаживания ветви.
  • 19ad8a7287: xen / arm32: entry: Добавить отсутствующую запись trap_reset
  • 3caf32c470: xen / arm32: добавьте отсутствующие значения MIDR для Cortex-A17 и A12
  • df7be94f26: xen / arm32: запись: Консолидация макросов DEFINE_TRAP_ENTRY_ *
  • f379b70609: SUPPORT.md: исправлена ​​версия и начальная-релиз
  • 728fadb586: xen / arm: cpuerrata: Удалить percpu.h включить
  • 928112900e: xen / arm64: выполнить усиление прогнозирования ветвления для затронутых процессоров Cortex-A.
  • cae6e1572f: xen / arm64: добавьте скелет, чтобы упростить атаки сглаживания ветви.
  • d1f4283a1d: xen / arm: cpuerrata: Добавить MIDR_ALL_VERSIONS
  • 0f7a4faafb: xen / arm64: добавьте отсутствующие значения MIDR для Cortex-A72, A73 и A75
  • b829d42829: xen / arm: ввести ответный вызов включения, чтобы включить возможности для каждого онлайн-процессора.
  • fa23f2aaa2: xen / pvh: поместите батут на страницу 0x1
  • 79f797c3f4: прошивка / прокладка: исправьте процесс сборки, чтобы использовать параметры поиска POSIX.
  • 69f4d872e5: x86 / guest: используйте область vcpu_info из shared_info
  • 7cccd6f748: x86: разрешить отключить ленту поддержки Meltdown.
  • 234f481337: x86: смягчающая лента против вредоносных 64-битных гостей PV.
  • 57dc197cf0: x86 / mm: всегда устанавливайте _PAGE_ACCESSED для обновлений L4e.
  • 7209b8bf08: x86: Не используйте потенциально неправильные значения CPUID для информации о топологии.
  • 910dd005da: x86 / entry: удалить поддержку частичных кадров cpu_user_regs
  • 50d24b9530: x86 / upcall: введите ложное событие после установки вектора upcall
  • c89c622b89: x86 / E820: не перегружать массив
  • 3b8d88d4fa: x86 / IRQ: условно сохранить права доступа на пути к ошибкам карты
  • 6f1979c8e4: -xen-attach необходим для загрузки pvh с qemu-xen
  • 0a515eeb96: xen / pvshim: карта vcpu_info ранее для AP
  • 0e2d64ae8f: xl: pvshim: предоставить и документировать xl config
  • ab9e3854dd: libxl: pvshim: ввести pvshim_extra
  • abdde49edc: libxl: pvshim: укажите параметры конфигурации первого класса, чтобы включить режим прокладки
  • 321ef983a0: xen / shim: разрешить DomU иметь как можно больше vcpus
  • c9083de0ae: xen / shim: авария вместо перезагрузки в режиме прокладки
  • b5be9c817d: xen / pvshim: используйте позицию по умолчанию для отображений m2p
  • 9d60bc96be: xen / shim: изменить поведение параметра shim_mem
  • 29dd3142bf: xen / pvshim: память hotplug
  • 5b6c3ffa1d: xen / pvshim: поддержка vCPU hotplug
  • 004646a1dd: xen / pvshim: установите max_pages в значение tot_pages
  • 7dcc20e0c8: xen / pvshim: добавить параметр cmdline shim_mem
  • 83c838c9f8: xen / pvshim: добавьте поддержку переноса.
  • cc7d96b98c: x86 / pv-shim: теневая страница панели PV для L2 DomU
  • 7f5eb7d04e: xen / pvshim: добавить операции таблицы расширений
  • bbad376ab1: xen / pvshim: forward evtchn ops между L0 Xen и L2 DomU
  • da4518c559: xen / pvshim: установить правильное значение домида
  • 1cd703979f: xen / pvshim: изменить конструктор Dom0 для создания DomU
  • 60dd95357c: xen: отметьте страницы xenstore / console как RAM
  • 0ba5d8c275: xen / pvshim: пропустите Domq-доменные компоненты для создания доменов
  • 4ba6447e7d: xen / pvh: не отмечайте низкий 1 МБ как IO mem
  • 2b8a95a296: xen / x86: возможность выбора VGA
  • cdb1fb4921: xen / arm: bootfdt: используйте правильные значения по умолчанию для # адресных ячеек и # size-cells
  • a40186478c: xen / arm: gic-v3: выйдите из системы, если gicv3_cpu_init fail
  • 3784256866: инструменты / прошивка: сборка и установка xen-shim
  • b5ead1fad3: x86 / shim: параметры Kconfig и командной строки
  • aa96a59dc2: x86 / guest: используйте консоль PV для ввода / вывода Xen / Dom0
  • 7477359b9a: x86 / guest: добавить код консоли PV.
  • cb5dc94ba7: x86 / guest: настройка канала upcall канала события
  • 3b058a3eab: x86: не проглатывайте первую командную строку в гостевом режиме
  • 5a543c6f39: x86: чтение стенограммы из Xen при работе в режиме pvh
  • 949eb11d58: x86: калибровка таймера APIC при работе в качестве гостя
  • f5ca36927e: x86: источник времени xen pv clock
  • 68e7a08436: x86 / guest: map per-cpu vcpu_info.
  • d2df09c92b: xen / guest: вывести идентификатор vCPU из Xen
  • efa15c993b: x86 / guest: карта shared_info страница
  • 83186a8e69: xen / pvshim: отслеживать используемые диапазоны PFN
  • 1fa5444834: xen: ввести rangeet_claim_range
  • 10128f33aa: xen / console: введите console = xen
  • 2f5a012143: x86 / pvh: извлечение карты памяти из Xen
  • 9752c7422b: x86 / shutdown: поддержка использования SCHEDOP_ {shutdown, reboot}
  • b38cc15b2f: x86 / гость: поддержка Hypercall
  • 3d1afab1f6: x86 / entry: Зонд для Xen в начале загрузки
  • 31b664a93f: x86 / boot: карта больше, чем первые 16 МБ.
  • db65173fe7: x86 / запись: ранний загрузочный код PVH
  • 51f937a39b: x86: создать двоичный файл, который можно загрузить как PVH
  • 887c705600: x86: введите макрос ELFNOTE
  • f575701f3c: x86 / link: переместить заголовки программ
  • af2f50b2b6: x86 / Kconfig: варианты поддержки Xen и PVH.
  • b538a13a68: x86: общая поддержка сбоев cpuid.
  • 57dc22b80d: x86 / fixmap: Изменить fix_to_virt (), чтобы вернуть указатель void
  • 48811d481c: tools / ocaml: Расширьте domain_create (), чтобы взять arch_domainconfig
  • 78898c9d1b: tools / ocaml: Expose arch_config в domaininfo
  • e7c8187b91: xen / domctl: возвращает arch_config через getdomaininfo
  • 9e46ae12ed: ACPICA: добавьте таймер управления питанием ACPI (таймер PM).
  • ff1fb8fe53: x86 / link: ввести и использовать SECTION_ALIGN
  • 92a6295c30: x86 / time: напечатайте более полезную ошибку, если таймер платформы не найден.
  • 78e9cc3488: xen / common: немного увеличить буфер регистрации гостей.
  • 667275050d: tools / libxc: поддержка нескольких модулей.
  • 4621c10f48: tools / libelf: исправить записи эльфов для гостей PVH
  • 40938b5d56: tools / libxc: удалить постороннюю новую строку в xc_dom_load_acpi
  • 5840f40e88: xen / x86: указать идентификатор домена домена cpuid
  • caff7f9b59: x86 / svm: предложение CPUID Ошибка для гостей AMD HVM, а также
  • 69e302e59c: x86 / upcall: введите ложное событие после установки вектора upcall
  • a87ec4833a: x86 / msr: Free msr_vcpu_policy во время уничтожения vcpu
  • 9dc5eda576: x86 / vmx: Не используйте hvm_inject_hw_exception () в long_mode_do_msr_write ()
  • 135b67e9bd: xen / efi: Исправить сборку с помощью clang-5.0
  • 682a9d8d37: gnttab: улучшить блокировку GNTTABOP_cache_flush
  • 19dcd8e47d: gnttab: корректное управление пакетной обработкой GNTTABOP_cache_flush
  • e5364c32c6: x86 / microcode: добавьте поддержку загрузки микрокода fam17h.
  • e2dc7b584f: x86 / mm: утверждение фальшивого пейджингового режима
  • c8f4f45e04: x86 / mb2: избегать изображения Xen при поиске модуля / позиции crashernel.
  • 4150501b71: x86 / vvmx: не разрешать затенение vmcs для вложенных гостей
  • ab7be6ce4a: xen / pv: правильно постройте GDT d0v0

Что нового в версии:

  • Эти выпуски содержат множество исправлений и улучшений.

Что нового в версии 4.9.0:

  • Новые функции:
  • Загрузочный Xen на платформах EFI с использованием GRUB2 (x86): из Xen Project 4.9 и GRUB2 2.02 и далее Xen Project Hypervisor можно загружать с использованием протокола multiboot2 на устаревшей платформе BIOS и EFI x86. Частичная поддержка протокола multiboot2 также была введена в прошивку загрузки сети (iPXE). Это делает процесс загрузки Xen Project более гибким. Конфигурации загрузки могут быть изменены непосредственно из загрузчика (без использования текстовых редакторов), а конфигурации загрузки более переносимы на разных платформах.
  • Близкая латентность для встроенных и автомобильных сред: «нулевой» планировщик позволяет использовать прецеденты, где каждый виртуальный процессор может быть назначен физическому ЦП (обычно необходимо для встроенных и автомобильных сред), удаляя почти все накладные расходы планировщика в таких сред. Использование «нулевого» планировщика также гарантирует значительно меньшую задержку и более предсказуемую производительность. Новый параметр vwfi для ARM (virtual Wait For Interrupt) позволяет точно контролировать, как Xen Project Hypervisor обрабатывает инструкции WFI. Установка vwfi на «native» уменьшает задержку прерывания примерно на 60%. Тесты на Xilinx Zynq Ultrascale + MPSoC показали максимальную задержку прерывания менее 2 микросекунд, что крайне близко к аппаратным ограничениям и должно быть достаточно малым для подавляющего большинства встроенных случаев использования.
  • Xen 4.9 включает в себя новые стандартные ABI для обмена устройствами между виртуальными машинами (включая эталонные реализации) для ряда встроенных, автомобильных и облачных собственных приложений для использования.
  • Для встроенных / автомобильных добавлен виртуальный звук ABI, реализующий воспроизведение и захват аудио, а также управление громкостью и возможность отключения / включения звука аудиоисточников. Кроме того, был добавлен новый виртуальный дисплей ABI для сложных устройств отображения, отображающих несколько фреймбуферов и дисплеев. Поддержка Multi-Touch была добавлена ​​к виртуальному протоколу клавиатуры / мыши, позволяющему сенсорным экранам.
  • Xen 4.9 также представляет транспорт Xen для 9pfs, который представляет собой протокол удаленной файловой системы, первоначально написанный для Plan 9. Во время цикла Xen 4.9 фронт Xen 9pfs был включен в ядро ​​Linux и backend в QEMU. Теперь можно совместно использовать файловую систему (не обязательно блок-устройство) с виртуальной машины на другую, что является требованием для добавления поддержки Xen ко многим контейнерам, таким как CoreOS rkt.
  • Были введены PV-вызовы ABI, позволяющие пересылать запросы POSIX между гостями: вызов функции POSIX, происходящий из приложения в DomU, может быть перенаправлен и реализован в Dom0. Например, вызовы сокетов для гостевых сетей могут быть выполнены в Dom0, что позволяет создать новую сетевую модель, которая естественным образом подходит для облачных приложений.
  • Улучшения существующей функциональности:
  • Оптимизация Xenstored: демоны Xenstore позволяют Dom0 и гостям получить доступ к информации о конфигурации системы. Ограничения масштабируемости C-xenstored были увеличены, чтобы обеспечить эффективную работу больших хостов (около 1000 доменов). Улучшена обработка транзакций для лучшей производительности, меньшего объема памяти и меньше конфликтов транзакций. Добавлены возможности динамической отладки.
  • DMOP (Hypercall Operation Operation Operation Hypercall): в Xen 4.9 интерфейс между Xen и QEMU был полностью переработан и консолидирован. Теперь в Xen (гиперкайл DMOP) есть только одна гиперкалла, которая тщательно разработана, чтобы позволить драйверу privcmd проверять диапазоны и параметры памяти QEMU, которые передаются в Xen через DMOP. Драйвер privcmd Linux позволяет проводить аудит DMOP, что значительно ограничивает возможности скомпрометированного QEMU атаковать гипервизор.
  • Альтернативное исправление во время выполнения и поддержка GICv3 для ARM32: альтернативное исправление во время выполнения, которое позволяет гипервизору применять обходные пути для ошибок, влияющих на процессор, и применять оптимизацию, специфичную для процессора, и поддержку GICv3 была расширена для 32-разрядных платформ ARM, для встроенных прецедентов.
  • Поддержка функций Intel и x86: последняя версия гипервизора Xen Project добавляет поддержку инструкций Neural Network AVX512_4VNNIW и Multiply Accumulation Single precision AVX512_4FMAPS как подсемейства наборов инструкций AVX512. Если эти инструкции включены в Xen для гостей HVM и PV, программы в гостевых ОС могут в полной мере воспользоваться этими важными инструкциями, чтобы ускорить компьютерное обучение. Этот выпуск Xen также дополнительно улучшает оптимизацию VT-d с отложенным прерыванием (PI), обработку исключения обработки компьютера (MCE) и т. Д.
  • Обнаружение системных ошибок (ARM): Xen на ARM сделала шаг вперед в области надежности и удобства обслуживания с внедрением системной ошибки обнаружения и отчетности, что является ключевой функцией для клиентов с высокодоступными системами.
  • Поддержка GCOV: мы удалили старую реализацию GCOV и заменили ее обновленной версией, которая поддерживает больше форматов и предоставляет более общий интерфейс.
  • Повторная работа и упрощение кода эмуляции x86 для обеспечения безопасности: аппаратная виртуализация предоставляет гипервизорам возможность выполнять наиболее привилегированные инструкции изначально и безопасно. Однако для некоторых граничных случаев все еще необходимо эмулировать инструкции x86 в программном обеспечении. В Xen 4.9 проект полностью переработал код эмуляции x86, добавил поддержку новых инструкций, проверил код на уязвимости безопасности и создал тесты тестирования Fuzz на основе AFL, которые регулярно запускаются против эмулятора.
  • Обновленная поддержка функциональной спецификации Hyper-V Hyper-V для Microsoft Hyper-Vor (также известной как Провидения Виридиана): Xen реализует подмножество версии 5.0 Hyper-V Hypervisor TLFS, которая позволяет Xen запускать гостей Windows с такой же производительностью, как он будет работать на Hyper-V. Кроме того, эта работа закладывает основу для возможности запуска Hyper-V в Xen в будущем с использованием вложенной виртуализации.
  • Многолетняя разработка:
  • Переход от PVHv1 к PVHv2: Xen Project 4.8 заложил основу для повторной архитектуры и упрощения PVH, сосредоточив внимание на гостевой ABI DomU, что позволило разработчикам гостевой операционной системы начать переносить свои ОС в этот режим. Выполняется поддержка FreeBSD, в то время как поддерживается поддержка Linux. Xen 4.9 добавлена ​​поддержка Dom0 builder и поддержка нескольких виртуальных программируемых контроллеров прерываний ввода-вывода Intel (vIO APIC). PVHv2 для маршрутизации прерываний и эмуляции PCI в настоящее время рассматривается экспертами и может ожидаться в начале цикла выпуска Xen 4.10. Это закладывает основу для PVHv2 Dom0. Для поддержки PVHv2 DomU был запущен PCI Passthrough и большая переработка пользовательских интерфейсов xl / libxl и libvirt для PVH. Поддержка PVHv1 была удалена из Xen Codebase.
  • Переработка интеграции Xen-QEMU для защиты от уязвимостей безопасности QEMU: В Xen Project 4.8 мы приступили к работе по перестройке интеграции Xen-QEMU, которая представляет собой песочницу QEMU в Dom0. Значительный прогресс был достигнут в Xen 4.9 по достижению этой цели с внедрением DMOP. Другие изменения, такие как де-привилегия QEMU в Dom0 и изменения в Linux privcmd-драйвере, были в основном завершены в Xen 4.9. Изменения, которые в настоящее время разработаны, но еще не реализованы, являются необходимыми изменениями в использовании libxl и QEMU XenStore.

Что нового в версии 4.8.1 / 4.9.0 RC5:

  • обновить версию Xen до 4.8.1
  • oxenstored: история обрезки в функции часто задаваемых вопросов
  • конфликты со стойкими транзакциями: улучшите протоколирование
  • oxenstored: не проснуться, чтобы не вызывать конфликта-кредит
  • oxenstored: не выполнять транзакции только для чтения
  • oxenstored: разрешить самосогласования
  • oxenstored: обвинять соединение, вызвавшее конфликт транзакций
  • oxenstored: отслеживать историю фиксации
  • oxenstored: отменить старый commit-history на txn end
  • oxenstored: только записи операций с побочными эффектами в истории
  • oxenstored: отслеживание истории фиксации транзакций
  • oxenstored: добавьте информацию о транзакциях, относящуюся к отслеживанию истории.
  • oxenstored: игнорировать домены без конфликтов-кредитов
  • oxenstored: обработка доменного конфликта-кредита
  • oxenstored: комментарии, объясняющие некоторые переменные
  • xenstored: регистрируется при укушении лимита скорости транзакции записи
  • xenstored: применить ограничение скорости транзакции записи
  • tools / libxenctrl: исправить ошибку после открытия libxenforeignmemory
  • libxl: правильная запись xenstore для пустого cdrom
  • x86: используйте 64-битную маску при маскировке mfn-бит
  • память: корректно проверяйте диапазоны номеров гостевой комнаты в обработке XENMEM_exchange
  • xen: sched: не вызывать перехватчики неправильного планировщика через VCPU2OP
  • x86 / EFI: избегайте изображения Xen при поиске положения модуля / kexec.
  • x86 / EFI: избегайте ошибок IOMMU на [_end, __ 2M_rwdata_end)
  • x86 / EFI: избегать обхода mb_modules []
  • build / clang: исправить фиктивную политику XSM при использовании clang 4.0
  • x86: отказаться от ненужных атрибутов __packed
  • arm: xen_size должен быть paddr_t для согласованности
  • xen / arm: alternative: зарегистрировать повторно отображаемую область Xen как временную виртуальную область
  • Обновление QEMU_TAG
  • arm: чтение / запись rank- & gt; vcpu atomically
  • xen / arm: p2m: выполнить локальную недействительность TLB при миграции vCPU
  • xen / arm: введите INVALID_VCPU_ID
  • xen / arm: установите nr_cpu_ids на доступное количество процессоров
  • xen / arm: acpi: Переключить атрибуты отображения домена hw на p2m_mmio_direct_c
  • Отменить "xen / arm: Карта mmio-sram узлы как не кэшированная память"
  • xen / arm: dt: переназначить атрибуты отображения домена hw на p2m_mmio_direct_c
  • xen / arm: flush icache также, когда выдается XEN_DOMCTL_cacheflush
  • xen / arm: исправить GIC_INVALID_LR
  • Исправлено ограничение доступа к mode_strings
  • отсутствует vgic_unlock_rank в gic_remove_irq_from_guest
  • xen / arm: Fix macro для идентификации функции процессора ARM Jazelle
  • xen / arm: trap: Emulate ICC_SRE_EL1 как RAZ / WI
  • xen / arm: исправить неуместные скобки для проверки версии PSCI
  • arm / irq: проверка порядка, когда IRQ уже используется кем-то
  • Не очищать бит HCR_VM при обновлении VTTBR.
  • x86 / emul: исправить декодирование mov в / из cr / dr
  • x86emul: правильное декодирование vzero {all, upper}
  • xen: credit2: не пропустите учет при выполнении сброса кредита.
  • xen: credit2: всегда отмечайте щекочущуюся pCPU как ... щекотаемую!
  • x86 / layout: Исправьте идею Xen о своем собственном макете памяти.
  • x86 / vmx: Не просачивать состояние SSS-сервера хоста в гостевых HVM
  • xen / arm: исправить затронутый диапазон памяти по чистым функциям dcache.
  • xen / arm: ввести параметр vwfi
  • arm / p2m: удалите страницу из списка страниц p2m- & gt; перед ее освобождением.
  • Обновление QEMU_TAG
  • VMX: исправление гонки VMCS по пути контекстного переключения
  • xen / p2m: исправить p2m_flush_table для не вложенных случаев
  • x86 / ept: разрешить объединение записи на! mfn_valid () отображения MMIO снова
  • IOMMU: вызов callback разговора
  • x86 / emulate: не предполагайте, что addr_size == 32 подразумевает защищенный режим
  • xen: credit2: исправить выключение / приостановку при игре с помощью cpupools.
  • xen: credit2: никогда не рассматривайте CPU за пределами нашего cpupool.
  • xen: credit2: используйте правильную cpumask с нуля.
  • x86 / hvm: не устанавливайте msr_tsc_adjust на hvm_set_guest_tsc_fixed
  • x86emul: правильные ограничения на блокировку FPU asm ()
  • x86: настройки обработки атрибутов сегмента
  • x86emul: настройки контроля LOCK
  • x86emul: VEX.B игнорируется в режиме совместимости
  • x86 / xstate: исправление переполнения массива на оборудовании с помощью LWP
  • arm / p2m: Исправить регрессию при завершении работы домена с помощью активного mem_access
  • libxl: исправить libxl_set_memory_target
  • xen / arm: gic-v3: Убедитесь, что чтение из ICC_IAR1_EL1 отображается на перераспределителе
  • x86 / cpu: не обновляйте this_cpu для get_cpu_vendor (, gcv_guest)
  • x86 / emul: исправить обработку возвращаемого значения VMFUNC
  • x86 / boot: исправить сборку с некоторыми более старыми версиями gcc
  • x86emul: для CMPXCHG16B требуется выровненный операнд
  • VT-d: исправить dma_msi_set_affinity ()
  • x86emul: игнорировать большинство баз сегментов для 64-битного режима в is_aligned ()
  • x86emul: MOVNTI не разрешает префиксы REP
  • x86 / VPMU: очистить состояние переполнения, с которым счетчик переполняется
  • x86 / hvm: не следует безоговорочно создавать сервер ioreq по умолчанию.
  • libelf: индекс раздела 0 является специальным
  • x86emul: CMPXCHG {8,16} B игнорировать префиксы
  • xen: Исправить определение, когда создание домена завершено
  • x86emul: правильный PUSHF / POPF
  • init / FreeBSD: исправить неправильное использование $ rc_pids в xendriverdomain
  • init / FreeBSD: добавить переменные управления rc
  • init / FreeBSD: исправить xencommons, чтобы он мог запускаться только Dom0
  • init / FreeBSD: удалить xendriverdomain_precmd
  • init / FreeBSD: установите правильный PATH для xl devd
  • xsm: разрешить соответствующее разрешение во время переноса и gpu-passthrough.
  • libxl: init_acpi_config должен возвращать rc в пути выхода и установить 0 при успешном завершении
  • x86 / emul: добавьте вероятный () / маловероятный () тестовый жгут
  • x86 / HVM: добавьте отсутствующую проверку NULL перед использованием комбайна VMFUNC.
  • x86: принудительно активируйте EFLAGS.IF при выходе на гостевые ПК.
  • x86 / emul: исправить обработку флагов с помощью SYSCALL
  • Обновление QEMU_TAG
  • обновить версию Xen до 4.8.1-pre
  • Кроме того, этот выпуск также содержит следующие исправления для qemu-традиционных:
  • cirrus / vnc: zap удаляет битбельную поддержку из кода консоли.
  • cirrus: добавьте blit_is_unsafe вызов cirrus_bitblt_cputovideo
  • cirrus: проблема с исправлением oob (CVE-2017-2615)
  • qemu: ioport_read, ioport_write: защититесь от 32-разрядных адресов.

Комментарии к Xen

Комментарии не найдены
добавить комментарий
Включите картинки!