Uefi csm что это

Содержание

Uefi csm что это

Это ошибочно. CSM не является кое-чем критически принципиальным для установки Windows 7 на UEFI, ведь вы сможете запустить эту систему в режиме UEFI на не поддерживающих CSM гипервизоре bhyve во FreeBSD либо на виртуальной машине VirtualBox, настроенной под Windows 8 x64, за ранее интегрировав в установочный образ паравиртуальные драйвера VirtualBox VBoxVGA и VBoxSVGA. А раз так, провернуть всё это можно и на железе, главное — знать, как сделать это верно.

Как установить Windows 7 на компьютер с UEFI без поддержки CSM с помощью FlashBoot

Сделанная более 30 годов назад, называемая BIOS базисная система ввода-вывода порядком устарела, и всё большее количество компов сейчас выпускается на базе UEFI — расширяемом интерфейсе прошивки, который можно условно именовать новым поколением BIOS. И хотя UEFI появился не вчера и даже не позавчера, для многих юзеров он остаётся ещё кое-чем новым и практически непонятным, что приводит к различного рода недоразумениям. К примеру, почему-либо считается, что на ПК с UEFI принципно нельзя установить Windows 7 x64, если он не поддерживает режим CSM, в каком «семёрка» указывает наилучшую производительность.

Как установить Windows 7 на компьютер с UEFI без поддержки CSM с помощью FlashBoot

Это ошибочно. CSM не является кое-чем критически принципиальным для установки Windows 7 на UEFI, ведь вы сможете запустить эту систему в режиме UEFI на не поддерживающих CSM гипервизоре bhyve во FreeBSD либо на виртуальной машине VirtualBox, настроенной под Windows 8 x64, за ранее интегрировав в установочный образ паравиртуальные драйвера VirtualBox VBoxVGA и VBoxSVGA. А раз так, провернуть всё это можно и на железе, главное — знать, как сделать это верно.

Что такое CSM

Если не вдаваться глубоко в технические подробности, CSM — это модуль сопоставимости, режим, позволяющий устанавливать и загружать старенькые операционные системы на компьютерах с UEFI так же, как если б заместо UEFI в их употреблялся традиционный BIOS, примером чему может служить загрузка с MBR-дисков на UEFI. Эта функция в интерфейсе UEFI (зависимо от версии) может называться CMS Boot, UEFI and Legacy OS либо CMS OS. При её использовании обычно приходится отключать Secure Boot, работающий только с «чистой» UEFI. Неувязка в том, что в самых новых материнских платах CSM может и не поддерживаться, ведь и эта разработка равномерно уходит в прошедшее.

В поиске решения

Из примера с установкой 64-разрядной Windows 7 на VirtualBox в режиме UEFI можно созидать, что VGA-совместимый GPU с верно сопоставленными портами ввода-вывода и обработчиком INT 10H вправду нужен, причём INT 10H обычно предоставляется прошивкой при включённом режиме CSM. Начиная с Windows 8, обработчик INT 10H закончил употребляться для загрузки системы, а совместно с ним были удалены эмулятор BIOS и драйвер минипорта VGA, а заместо последнего стал употребляться встроенный видеодрайвер на базе протокола вывода графики UEFI, также узнаваемый как GOP.

Так может быть для загрузки Windows 7 на UEFI будет довольно интегрировать измененный обработчик INT 10H, умеющий использовать тот же протокол GOP? Как досадно бы это не звучало, опыты проявили, что этого оказалось недостаточно, потому что кроме вызова VGA через INT 10H, через порт ввода-вывода VGA происходит воззвание к ядру операционной системы (файл NTOSKRNL.EXE). Чтоб решить делему загрузки, разработчикам пришлось сделать патч для NTOSKRNL.EXE, создающий особый подпроцесс при каждой загрузке Windows.

FlashBoot как результат решения задачи

«Видимым» результатом усилий разработчиков стала утилита FlashBoot Pro — обычный и интуитивно понятный инструмент для сотворения загрузочных флешек с пропатчиванием Windows 7 x64, по этому эту систему можно устанавливать на новые компы с UEFI без поддержки режима сопоставимости CSM. Не считая того, FlashBoot и ее проф версия FlashBoot Pro может быть применена для «создания» переносных, загружающихся с флешки систем Windows, создания образов флешек (в том числе загрузочных) и восстановления из них на других переносных накопителях, также их форматирования и полной очистке. FlashBoot Pro дополнительно поддерживается создание клонов Windows 7, 8, 8.1 и 10 с возможностью интеграции драйверов USB 3.0, NVMe и AHCI/RAID, создание загрузочных флешек с Windows XP и «живых» дисков BartPE (мини-версия XP), также самораспаковывающихся архивов.

Создание загрузочной флешки в FlashBoot

Приведём пример создания загрузочной флешки с Windows 7 x64 с пропатченными файлами загрузки для последующей установки системы на новые ПК с UEFI без поддержки CSM. Сперва находим Free-версию программы на официальном сайте www.prime-expert.com/flashboot (Pro-версию можно только купить), устанавливаем и запускаем. Подключаем к компьютеру флешку и жмём в открывшемся окне приложения «Next».
Uefi csm что этоВ следующем окне выбираем опцию записи дистрибутива на флешку «OS installer → USB». Далее программа предложит выбрать метод создания загрузочного носителя.
Uefi csm что этоПоскольку нам нужна загрузочная UEFI-флешка без поддержки CSM выбираем опцию «Windows Vista/7/8/8.1/10 installer with added drivers (for UEFI-based Computers)», доступную исключительно в Pro-версии. Она же позволяет интегрировать в процессе создания загрузочного накопителя драйвера. Если нужна UEFI-флешка с поддержкой CSM, подойдёт и «Windows Vista/7/8/8.1/10 installer (for BIOS-based Computers)».
Uefi csm что этоСледующий шаг — выбор источника, которым может служить как установочный ISO-файл, так и записанный на DVD-диск дистрибутив системы.
Uefi csm что этоЖмём «Next» и видим, что FlashBoot уже включила интеграцию драйверов USB 3.x и NVMe, также пропатчивание загрузочных файлов. Активировав пункт «Custom drivers from the specified folder…», можно добавить свои драйвера, указав файлы INF, SYS и CAT.
Uefi csm что этоПосле очередного нажатия «Next» выбираем в выпадающем списке подключённую флешку и снова нажимаем «Next».
Uefi csm что этоНа следующем этапе можно дать метку тома и указать в дополнительных настройках «Set advanced options» нужно ли добавлять в конец флешки нераспределённое пространство, чего мы делать не станем.
Uefi csm что этоВ конечном итоге перед вами предстанет список запланированных операций, запускаем их нажатием «Format Now». Процедура записи довольно длительная, копирование файлов образа размером 5,5 Гб на флешку объёмом 7,5 Гб, подключённую по интерфейсу USB 2.0 у нас заняла почти два часа!
Uefi csm что этоЗа прогрессом записи вы можете наблюдать в окошке мастера. По успешном завершении процедуры вы получите сообщение «Completed successfully. Click OK to exit». Готово, можете использовать флешку для установки Windows.
Uefi csm что этоFlashBoot Pro со скидкой 40% или как мы пытались получить бесплатную версию программы для создания загрузочных флешек.
Читайте наш специальный раздел об установке Windows 7 на новые ноутбуки и ПК с интерфейсом UEFI

Как запускается сервер: UEFI

Uefi csm что это

Ранее мы уже разбирали последовательность запуска сервера на примере устаревшего Legacy. Пришло время познакомиться с UEFI поближе.

Первая версия того, что сейчас известно как Unified Extensive Firmware Interface (UEFI), разрабатывалась в 90-е годы прошлого тысячелетия специально под системы на Intel® Itanium® и называлась Intel Boot Initiative, а позже — EFI.

Желание «обновить» процесс загрузки было ожидаемо. PC-BIOS, именуемый ныне Legacy, предлагает работать в 16-битном real mode, адресует всего 1 МБ оперативки, а загрузчик вместе с таблицей разделов должен размещаться в первых 512 байтах накопителя. Более того, PC-BIOS передает управление первому найденному загрузчику без возможности возврата назад. При всем этом обработку случаев с несколькими операционными системами возлагают на плечи загрузчика.

Ограничение на размер загрузчика диктует использование разметки Master Boot Record (MBR), появившийся в 1983 году. MBR не стандартизирован, однако множество производителей придерживаются «сложившихся традиций». У MBR есть серьезные ограничения: по дефлоту поддерживается только 4 раздела и объем накопителя менее 2.2 ТБ.

В декабре 2000 года была выпущена первая широко распространенная спецификация EFI под версией 1.02. Спустя пять лет Intel передали EFI в UEFI Forum, добавив Unified в название, чтобы подчеркнуть изменения. Спецификация UEFI лежит в открытом доступе и состоит из нескольких документов:

  • ACPI Specification;
  • UEFI Specification;
  • UEFI Shell Specification;
  • UEFI Platform Initialization Specification;
  • UEFI Platform Initialization Distribution Packaging Specification.

UEFI универсален, но в данной статье мы будем опираться на стандарт, поглядывая в сторону процессоров на архитектуре x86_64.

Wake up, Neo!

Uefi csm что это

Последовательность фаз загрузки UEFI (источник UEFI Platform Initialization Specification)
После инициации включения платформы блок питания ждет, пока не завершатся переходные процессы, и после устанавливает сигнал на линию Power_Good. И первым начинает работу не центральный процессор, а автономная подсистема Intel® Management Engine (ME) или аналогичная ей AMD Secure Technology (ST). Эта подсистема проводит собственные операции, а затем подготавливает и запускает первое ядро одного процессора, именуемое Bootstrap Processor (BSP).

В соответствии с принятой терминологией ядро/поток процессора здесь и далее будет называться процессором: начальным (bootstrap processor) или прикладным (application processor).

Как и в Legacy, процессор начинает выполнять первую инструкцию в конце адресного пространства по адресу 0xFFFFFFF0. Эта инструкция — прыжок на первую фазу инициализации платформы — SEC.

Фаза SEC (Security)

В данной фазе должны быть решены следующие задачи:

  • обработка события включения;
  • инициализация достаточного количества памяти для следующей фазы;
  • становление корня доверия системы;
  • передача необходимой информации и управления на следующую фазу.

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

Во время фазы SEC не происходит инициализация оперативки. Вместо этого свободный кэш процессора помечается как несбрасываемый, и он превращается во временную оперативку. Такой режим называется no-eviction mode (NEM). В выделенной памяти создается стек, что позволит модулям из следующих фаз использовать стековые языки программирования до инициализации основной оперативки.

Далее происходит инициализация всех прикладных процессоров (Application Processor, AP) с отправкой им специальной последовательности межпроцессорных прерываний (Inter-Processor Interrupt, IPI). Последовательность Init IPI — Start-up IPI — пробуждает прикладной процессор и запускает на нем самотестирование — Built-In Self-Test (BIST). Результаты тестирования записываются и передаются далее для анализа.

В конце фазы Security необходимо найти раздел Boot Firmware Volume (BFV), на котором располагается исполняемый код следующей фазы, также по возможности найти другие, неосновные, разделы с кодом (Firmware Volume, FV).

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

В конце выполнения SEC собрана следующая информация:

Uefi csm что это
  • размер и адрес Boot Firmware Volume (BFV);
  • размер и адреса других Firmware Volume (FV);
  • размер и адрес временной оперативки;
  • размер и адрес стека.

Фаза PEI (Pre EFI Initialization)

Uefi csm что это

Фаза PEI на материнской плате SuperMicro
Задача фазы Pre EFI Initialization заключается в сборе информации о подключенных устройствах и подготовке минимально необходимого количества оборудования для запуска процесса полной инициализации.

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

Данная фаза состоит из ядра, называемого PEI Foundation, и подключаемых модулей PEI Module (PEIM). Центральной частью ядра является диспетчер модулей, PEI Dispatcher, который управляет порядком исполнения модулей, также организует межмодульное взаимодействие (PEIM-to-PEIM Interface, PPI).

Отметим, что фаза SEC исполнялась с флэш-памяти на материнской плате, и исключительно в начале PEI необходимый для этой фазы исполняемый код копируется во временную оперативку.

Далее к работе приступает PEI Dispatcher. Он запускает PEI модули в конкретном порядке: сначала модули без зависимостей, затем зависящие от первых и так до того времени, пока модули не закончатся.

Архитектура фазы PEI позволяет разрабатывать собственные модули, которые могут передавать результаты своей деятельности в следующую фазу. Передача информации происходит через специальную структуру данных Hand-off Block (HOB).

В процессе запуска PEI модулей отметим следующие:

  • CPU PEIM — инициализация процессоров;
  • Platform PEIM — инициализация северного (в т.ч. Memory Controller Hub) и южного (I/O Controller Hub) мостов;
  • Memory Initialization PEIM — инициализация основной оперативки и перенос данных из временной памяти в RAM.

Состояние S3 (Suspend to RAM) — это состояние сна, при котором процессор и часть чипсета отключаются с потерей контекста. При пробуждении из такого состояния процессор начинает выполнение как при обычном включении. Но вместо полной инициализации и прохождения всех тестов система ограничивается восстановлением состояния всех устройств.

Что такое CMS?

При запуске из любого другого состояния управление передается в фазу Driver Execution Environment.

Фаза DXE (Driver eXecution Environment)

Uefi csm что это

Инициализация механизма AHCI в фазе DXE
Задача фазы Driver Execution Environment (DXE) сводится к инициализации оставшихся устройств. К моменту старта фазы DXE процессор и основная память готовы к работе, а на драйверы DXE не накладываются строгие ограничения по потребляемым ресурсам.

Аналогично PEI Foundation в данной фазе есть собственное ядро — DXE Foundation. Ядро создает необходимые интерфейсы и загружает три вида DXE сервисов:

  • UEFI Boot Services — сервисы времени загрузки;
  • UEFI Runtime Services — сервисы времени исполнения;
  • DXE Services — специальные сервисы, необходимые ядру DXE.

В UEFI нет специализированной фазы, где оборудование проходит POST (Power-On Self-Test). Вместо этого каждый модуль PEI и DXE фазы проводит свой набор тестов и сообщает об этом при помощи POST-кодов пользователю и при помощи HOB в следующие фазы.

Среди множества загружаемых драйверов на процессорах x86_64 стоит уделить внимание драйверу System Management Mode Init (SMM Init). Этот драйвер подготавливает все для работы режима системного управления (System Management Mode, SMM). SMM — это особый привилегированный режим, который позволяет приостановить выполнение текущего кода (в т.ч. операционную систему) и выполнить программу из защищенной области памяти SMRAM в собственном контексте.

Режим SMM неофициально считается кольцом защиты с номером -2. Ядро ОС работает на 0 кольце, а более ограниченные в правах кольца защиты имеют номер от 1 до 3. Официально нулевое кольцо считается наиболее привилегированным. Все же, гипервизор с аппаратной виртуализацией условно называют кольцом -1, а Intel ME и AMD ST — кольцом -3.

Дополнительно отметим модуль Compatibility Support Module (CSM), который обеспечивает совместимость с Legacy и позволяет загружать ОС без поддержки UEFI. Позднее мы рассмотрим этот модуль подробнее.

После инициализации всего оборудования наступает время выбора загрузочного устройства.

Фаза BDS (Boot Device Select)

В фазе Boot Device Select реализуется политика загрузки приложений UEFI. Несмотря на то, что это отдельная фаза, все сервисы, включая диспетчера, созданные на фазе DXE, остаются доступны.

Цель фазы BDS сводится к выполнению следующих задач:

  • инициализация консольных устройств;
  • поиск устройств, с которых можно загрузиться;
  • попытка загрузиться с найденных устройств в порядке приоритета.

Uefi csm что это

PCIe BIOS карты расширения LSI
Поиском загружаемых областей на устройствах занимается Boot Manager. На некоторых картах расширения, например, на сетевых картах и RAID-контроллерах, может находиться собственный «BIOS», называемый Option ROM, или OpROM. Содержимое OpROM устройств запускаются сразу после обнаружения, а после выполнения управление возвращается в Boot Manager.

Все разделы, на которых находятся загружаемые области, сохраняются в памяти менеджера загрузки и упорядочиваются в соответствии с порядком загрузки. Если ни одного приложения не нашлось, Boot Manager может вызвать диспетчера DXE, на случай если за время поисков диспетчер загрузил дополнительные драйвера и менеджеру загрузки могут «открыться» новые устройства.

Как отмечалось ранее, использование разметки Master Boot Record накладывает ограничения на размер разделов и их количество на накопителе, также вызывает определенные неудобства в содержании нескольких операционных систем. Решение всех этих проблем является частью спецификации UEFI — GUID Partition Table.

GPT (GUID Partition Table)

GUID Partition Table — это стандартизированный формат размещения таблиц разделов, пришедший на замену устаревшей MBR.

Во-первых, GPT использует адресацию логических блоков (Logical Block Addressing, LBA) вместо адресации «Цилиндр — Головка — Сектор» («Cylinder, Head, Sector», CHS). Смена способа адресации позволяет GPT работать с накопителями объемом до 9.4 ЗБ (9.4 * 10 21 байт) против 2.2 ТБ у MBR.

Во-вторых, таблица разделов претерпела изменения, и теперь в пределах одного накопителя можно создать до 2 64 разделов, хотя операционные системы поддерживают менее 128 в случае Microsoft Windows и 256 в случае Linux.

Uefi csm что это

В-третьих, каждый раздел имеет свой идентификатор типа, который описывает назначение раздела. Так, например, идентификатор C12A7328-F81F-11D2-BA4B-00A0C93EC93B однозначно указывает на системный раздел EFI (EFI System Partition, ESP), с которого Boot Manager может попробовать загрузить приложение.

При разработке GPT не обошли стороной и совместимость с MBR. Дисковые утилиты могли не распознать GPT диск и затереть его. Чтобы избежать этого, при разметке GPT первые 512 байт заполняются защитной MBR (Protective MBR) — разметкой из одного раздела на весь накопитель с системным идентификатором 0xEE. Такой подход позволяет UEFI понимать, что перед ним не настоящий MBR, а старому программному обеспечению без поддержки GPT — видеть раздел с данными неизвестного типа.

В GPT отказались от загрузочной области в пользу ESP-разделов, которые распознаются как загрузочные. Boot Manager собирает информацию обо всех ESP на диске, что позволяет без конфликтов иметь несколько загрузчиков на накопителе, по одному на каждый ESP.

Загрузка операционной системы

После опроса всех устройств и поиска загрузочных областей Boot Manager начинает загружать в порядке приоритета загрузки. В общем случае управление передается в UEFI-приложение, которое начинает выполнять свою логику. Однако для систем с совместимостью с Legacy режимом в списке загрузочных областей может найтись накопитель с разметкой MBR и придется обращаться к CSM, модулю поддержки совместимости.

Модуль CSM позволяет запускать операционные системы, которые не поддерживают UEFI. Для загрузки таких ОС модуль CSM эмулирует окружение, в которое попадает «классическая» ОС:

  • загружает Legacy-драйвер;
  • загружает Legacy BIOS;
  • переводит видеовывод в совместимый с Legacy режим;
  • создает в памяти необходимые для Legacy структуры данных, отсутствующие в UEFI;
  • загружает драйвер CompatibilitySmm для работы SMM в Legacy.

Фаза RT (Run Time)

Начало загрузки ОС или Legacy-загрузчика приводит к началу фазы Run Time. В данной фазе все сервисы DXE (кроме UEFI Runtime Services) перестают быть доступны.

Содержимое фазы RT может быть разным. Здесь может быть привычный по Legacy загрузчик ОС — например, GRUB2 или Windows Boot Manager, который переводит процессор в 64-битный режим и запускает ОС. Но могут быть и самостоятельные приложения или сразу ядро операционной системы.

Ядро Linux начиная с версии 3.3 при наличии флага CONFIG_EFI_STUB превращается в обычное UEFI-приложение и может быть запущено из UEFI без использования сторонних загрузчиков.

Как и в случае с Legacy, загрузчику или самому ядру необходимо перевести процессор в 64-битный режим, загрузить все драйвера, настроить планировщик и запустить init. Init, в свою очередь, запускает процессы в пространстве пользователя, после этого появляется окно логина в ОС.

Заключение

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

Как Вы думаете, как скоро получится полностью уйти от Legacy?
Пишите свое мнение в комментариях.

UEFI with CSM что это в биосе?

Вот еще на форуме читаю, чел пишет что он вынужден был поставить режим UEFI with CSM, ибо в чистом UEFI не работала загрузка с USB-DVD.

Кстати, когда перевел UEFI with CSM на русский, ну просто для интереса, то вот какой результат:

Uefi csm что это

Другими словами так и написано — UEFI с CSM

Так, постараюсь еще инфы накопать.

Еще нашел такую инфу, гляньте:

Uefi csm что это

Короч я немного понял. Смотрите, опция UEFI with CSM позволяет включить функции современного биоса и старого.. но вот какие именно функции? Я думаю что имеется ввиду как раз загрузочные функции. Ну я уже писал выше — чел не мог загрузиться с USB-DVD, поставил режим UEFI with CSM — и все нормалек. Я точно не знаю — но что-то типа мол современный биос может не поддерживать загрузку некоторых устройств, а вот старый — поддерживать может. И вот режим UEFI with CSM это как раз поддержка функций старого биоса и нового. Вот так я думаю ребята.

Вот очередной чел написал про UEFI with CSM, смотрите:

Uefi csm что это

А вот вам картинка по поводу отличия UEFI биоса от обычного:

Uefi csm что это

Ну это просто вам на заметку.

Еще я вот заметил, что если есть какие-то траблы с установкой винды — то стоит попробовать включить режим UEFI with CSM, может помочь.

Ну а вот этот пункт в биосе, видите ли он идет в разделе Boot mode select (но в другом биосе может быть иначе):

Uefi csm что это

Короче ребята.. почитал еще.. почитал.. и понял — UEFI with CSM не совсем понятно что это. Уверен исключительно в одном, что этот режим совмещает функции внутри себя из современного биоса и старого. Какие функции? Как я писал.. вроде загрузочные. Если выставить просто UEFI — то какое-то устройство может не определиться на этапе загрузки.. или например если винда была поставлена в режиме UEFI with CSM, а вы потом выставите режим UEFI — то винда может не загрузиться.. Вы уж извините, но честно сложно понять В общем если все работает четко — трогать этот пункт не советую

На этом все друзья, извините если что не так — удачи вам и будьте счастливы, договорились?!

Похожие статьи

  • Uefi флешка что это

    Содержание Uefi — что это такое?Загрузочная флешка Uefi. Установка Uefi Что такое UEFI Отличия BIOS от UEFI Новая технология безопасности Преимущества…

  • Uefi only media

    Содержание Загрузочная флешка не отображается в Boot Menu — BIOS Загрузка Legacy и EFI, Secure Boot Дополнительные причины того, что флешка не…

  • Uefi bios hp

    Содержание Загрузка средства HP PC Hardware Diagnostics (UEFI) на устройство USB Настольный пк hp elite HP HP Elite Slice Обновление BIOS: по шагам…

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Что будем искать? Например,Человек

Мы в социальных сетях