Как стать автором
Поиск
Написать публикацию
Обновить
4.5

UEFI *

Unified Extensible Firmware Interface

Сначала показывать
Порог рейтинга
Уровень сложности

Апгрейд домашнего железа с Gentoo/Win

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров4.4K

Рассказ об апгрейде со всякими приключениями. В главных ролях: память, Gentoo, UEFI и Dual Boot.

Читать далее

Перенос системы с MBR на UEFI

Время на прочтение5 мин
Количество просмотров34K

Недавно на работе возникла задача перенести рабочие места менеджеров со старых компов на новые. А человеки они такие - они привычны к своему годами выстроенному окружению. Поэтому я решил перенести систему "как есть". Благо везде 10ка, а она довольно либерально относится к таким миграциям с железки на железку, с семеркой такое не проканало бы...Вот только старые системы были установлены в MBR, а материнские платы с процами 11ого поколения MBR не очень то и поддерживают...

Если вкратце - то переносится раздел с виндой, перед ним создается EFI раздел размером в 100 МБ и MSR размером в 16... Последний оказался нужен. Для работы системы он не нужен, но вот обновления нормально на такую "перенесенную" систему без него не встанут совсем...

Читать далее

Написание ОС с нуля: Глава 2, Часть 3 — Терминал

Время на прочтение4 мин
Количество просмотров6.3K

В предыдущей статье мы написали простейший загрузчик, печатающий на экран "Hello, World!" и завершающийся по нажанию клавиши. Сегодня напишем терминал, у которого будет несколько комманд, обновим библиотеку и сделаем ещё пару вещей.

Читать

ОС с нуля: Глава 2, Часть 1 — Да зачем нам этот Legacy

Время на прочтение9 мин
Количество просмотров18K

Пару месяцев назад я решил начать серию статей про написание своей ОС с нуля. Описал написание Legacy MBR загрузчика и переход в защищенный режим (без прерываний) и ещё пару мелочей. Сегодня я решил, что попытаюсь "перезапустить" эту серию (сохранив нумерацию частей). Суть в том, что теперь будут использоваться актуальные на август 2022 года материалы, и разработанное ПО можно будет легко протестировать на своей (U)EFI-машине.

Читать

Что там у ReactOS?

Время на прочтение4 мин
Количество просмотров38K

16 декабря сего года, команда разработчиков ReactOS, спустя долгое время после последнего релиза (с последнего прошло почти полтора года) выпустила новую версию под номером 0.4.14. Это все еще альфа-версия.

В данной статье мы рассмотрим основные новшества как со стороны разработчиков, так и со стороны сообщества.

Читать далее

Добавляем GUI в EFI

Время на прочтение9 мин
Количество просмотров10K

В стандартном EDK нет поддержки графического интерфейса. Есть только из коробки пиксельный/текстовый вывод и TUI для HII интерфейса. А хочется капельку красоты и человеческий GUI. Дак добавим же! Даже не ради чего-то конкретного, а просто JUST FOR FUN!

Все элементарно: берем EDK, хватаем красивый язык для описания GUI и какую-нибудь не менее красивую библиотеку для вывода. Соединяем все это вместе и плавно перемешиваем на медленном огне. Все, готово, можно есть. Ну что, попробуем?

Читать далее

Слегка ржавое EFI-приложение

Время на прочтение11 мин
Количество просмотров13K
После двух твитов, оставленных на прошлой неделе, про мои игры с UEFI и Rust, несколько человек попросили опубликовать заметку, объясняющую как создать UEFI-приложение, полностью написанное на Расте и продемонстрировать тестовое окружение.

Так что сегодняшняя цель — это создание UEFI-приложения на Расте, которое распечатывает карту памяти, отфильтрованную по доступности для использования (такая память называется традиционной памятью в описании UEFI-спецификаций):

Читать дальше →

MKINITCPIO V31 и заглушки UEFI

Время на прочтение5 мин
Количество просмотров5.3K

Изображение взято из статьи «Linux Kernel EFI Boot Stub или «Сам себе загрузчик»»

Несколько месяцев назад я написал для скрипта mkinitcpio код, который позволяет ему создавать файлы UEFI с использованием заглушки systemd.

Само внесенное мной изменение можно найти на GitHub.

Далее я коротко продемонстрирую, чем эта возможность хороша, как она упрощает запуск системы, и как с ее помощью можно повысить безопасность, используя, например, Secure Boot.
Читать дальше →

Более удобная разработка 64-битного графического UEFI приложения

Время на прочтение6 мин
Количество просмотров8K

В предыдущей статье «Разработка 64-битного графического UEFI-приложения в Visual Studio 2019» VS задействовался лишь в двух аспектах: как редактор для кода — «продвинутый Блокнот» — и как отладчик для скомпилированного приложения. Всё остальное — управление зависимостями, настройки компиляции и т.д. — было отдано на откуп фреймворку edk2. Хотелось бы использовать мощь VS как IDE более полно: как минимум заиметь в редакторе кода автодополнение.

Бонусом получим более быструю компиляцию проекта: edk2 ищет изменившиеся файлы во всём своём полугигабайтном дереве, что, очевидно, излишне.
Читать дальше →

Разработка 64-битного графического UEFI-приложения в Visual Studio

Время на прочтение9 мин
Количество просмотров19K
Зимой в блоге RUVDS было несколько статей о написании загрузчиков для «классического» BIOS, в т.ч. симпатичная графическая демка, целиком помещающаяся в загрузочном секторе и работающая в VGA-режиме 320×200. Комментаторы справедливо отмечали, что в наступившем 2021 г. нет смысла осваивать это лютое легаси;
а вот статей про “Hello, World” на UEFI да с графикой действительно не хватает. Больше того — я таких вообще не припомню.» (MinimumLaw)
Под катом мы пошагово перепишем ту бутсекторную демку под UEFI, и она будет работать в полноцветном видеорежиме с высоким разрешением. С другой стороны, вместо 512 байт она будет занимать несколько десятков КБ.

Необычный дуалбут: ноутбук с «двойным дном»

Время на прочтение15 мин
Количество просмотров86K

Не так давно на Habr Q&A я наткнулся на интересный вопрос — как сделать, чтобы два жестких диска не видели друг друга? Чтобы вирус, попав на одну систему, никоим образом не мог заразить другую. В ответах предлагали достаточно стандартные способы — использовать полнодисковое шифрование, отключить диск в диспетчере устройств и даже поставить переключатель на питание. Но что если взглянуть на задачу совершенно с другого угла и сделать всё средствами самого HDD? Да-да, сегодня мы снова погружаемся в пучины модификации прошивок и реверс-инжиниринга!
Узнать подробности

Страшные сказки на ночь, о PCI шине

Время на прочтение3 мин
Количество просмотров23K
Всеобщая эйфория от появления на рынке новых процессоров, не дает достаточно времени кинуть взгляд, а что же там у них «под капотом». Те же их стороны, которыми обычно восхищаются кликатели и кнопкодавы, вовсе не отражают реальное положение дел на железном фронте.

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

Кто сейчас помнит такой архаизм как «Архитектура»? Мало кто. Слово в станкостроении стало в IT практически ругательным. А ведь когда-то, в былые времена, книга «PCI System Architecture „ и прочие, зачитывалась до дыр, на экране. И что же там такого страшного, в этом осколке прошлого, накарябано о PCI, что может нас ввести в глубокую задумчивость, полную вселенской грусти?
Читать дальше →

Bare-Metal Provisioning инфраструктура с нуля

Время на прочтение5 мин
Количество просмотров7.1K
Процесс заливки прошивки

Приветствую, Хабр. Меня зовут Роман, я разработчик встраиваемых систем в Getmobit. Хочу поделиться кейсом по развёртыванию программного обеспечения на большом количестве устройств на производственной линии с нуля. Заставлять людей на производстве бегать вдоль конвейера с флешкой не хотелось, а для автоматизации мне необходимо было четко понимать: на какие шаги можно поделить этот процесс, что на каждом этапе должно происходить, а главное – как модифицировать стандартный процесс, чтобы в итоге выполнять специфичные для нашего продукта операции. Основой для решения этой задачи стала технология загрузки устройств по сети (PXE). Об этом и расскажу.
Читать дальше →

Ближайшие события

Вы всё ещё меряете FSB сотнями?

Время на прочтение2 мин
Количество просмотров12K
Очень многие именно так и поступают последние 15-20 лет. Сотня или больше.

Что есть, Front Side Bus (FSB, системная шина)?
Шина, обеспечивающая соединение между x86/x86-64-совместимым центральным процессором и внутренними устройствами. Её опроная частота используется, с мультипликатором, процессором.

Весь инструментарий(я знаком с HwInfo64 и CPU-Z) именно на это (сотни) и заточен. Но вот, появился у меня процессор на котором я вижу частоту шины 25МГц.

image

Читать дальше →

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

Время на прочтение9 мин
Количество просмотров32K

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

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

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

Active Restore: С чего начать разработку в UEFI

Время на прочтение12 мин
Количество просмотров15K

Всем привет. В рамках проекта от компании Acronis со студентами Университета Иннополис (подробнее о проекте мы уже описали это тут и тут) мы изучали последовательность загрузки операционной системы Windows. Появилась идея исполнять логику даже до загрузки самой ОС. Следовательно, мы попробовали написать что-нибудь для общего развития, для плавного погружения в UEFI. В этой статье мы пройдем по теории и попрактикуемся с чтением и записью на диск в pre-OS среде.


cover

Читать дальше →

Проблематика и особенности реализации UEFI на различных платформах

Время на прочтение10 мин
Количество просмотров8.8K
С момента выпуска первой спецификации EFI в двухтысячном году прошло около девятнадцати лет. Десять лет понадобилось интерфейсу, чтобы выйти на пользовательский рынок и закрепиться на нем. На текущий момент редко где можно увидеть современный компьютер без UEFI в прошивке материнской платы. Стандарт интерфейса нарастил «мясо» и несколько тысяч страниц в официальной документации. Для обычного пользователя ничего не поменялось, кроме эпизодических столкновений с включённым Secure Boot. Но если плоскость работы смещается в разработку, всё становится интереснее.


Читать дальше →

Как я купил заблокированный ноутбук на eBay и попробовал сделать свой AntiTheft на базе IntelAMT

Время на прочтение10 мин
Количество просмотров69K


TL;DR


Absolute Computrace — технология, которая позволяет заблокировать машину(и не только), даже если на ней переустановили операционную систему или даже заменили жесткий диск, за $15 в год. Я купил ноутбук на eBay, который был залочен этой штукой. В статье описывается мой опыт, как я с ней боролся и пытался сделать то же самое на базе Intel AMT, но бесплатно.
Читать дальше →

Микрокод и уязвимости в процессорах

Время на прочтение2 мин
Количество просмотров7.5K
Отсутствие уязвимости в CPU лучшее что может быть, но как проверить есть ли они, эти уязвимости? Как выясняется в современных процессорах они буквально "пачками". И счастливому обладателю «уязвимостей» в лучшем случае предлагается ползать по таблицам и искать каким из них подвержен его процессор. А с течением времени количество найденных дыр только растет.

Простейшим решением предлагается обновление БИОСа/UEFI с установкой новой версии микрокода. Но решает ли оно все проблемы, или собственно хотябы их часть?
Читать дальше →

Active Restore: может ли аварийное восстановление происходить быстрее? Намного быстрее?

Время на прочтение6 мин
Количество просмотров6.8K
Резервное копирование важных данных – это хорошо. Но что если работу нужно продолжить сразу, и на счету каждая минута? Мы в Acronis решили проверить, насколько возможно решить задачу максимально быстрого запуска системы. И это первый пост из серии Active Restore, в котором я расскажу, как мы приступили к проекту вместе с Университетом Иннополис, какое нашли решение, и над чем работаем сегодня. Подробности – под катом.

image
Читать дальше →