Якщо чіпсет і материнська плата LGA 775 теоретично можуть підтримувати XEON 771, але рідний BIOS не підтримує його, а модифікованого немає - можна модифікувати BIOS самостійно.

ВАЖЛИВО

1. Всі зміни в BIOS прошивки (.ROM файл зазвичай) Ви робите на свій страх і ризик. При помилці з материнської плативиходить гарантована «цегла»
2. Розмір файлу оригінальної прошивки та зміненого варіанта повинні збігатися до байта.

3. Прошивка зміненого файлу BIOS назад у мікросхему виконується лише за допомогою фірмової утиліти від розробника материнської плати (необхідно завантажити із сайту виробника).
4. У топових материнських платах у самому BIOS є вбудований модуль оновлення прошивки (наприклад, EZ Flash 2 utility для ASUS P5Q у розділі Tools) – найкращий варіант.

Як краще зробити:
1. Все-таки пошукати в інтернеті готовий варіант із підтримкою XEON?
2. Завантажити з офіційного сайту останню версію прошивки та додати мікрокоди?

Як бачиться - другий варіант безпечніше, Ви в будь-якому випадку завантажуєте оригінальну прошивку із сайту виробника материнської плати, тобто. гарантується остання версія та відсутність помилок (точніше виправлення всіх знайдених раніше помилок). При завантаженні готового варіанта зі сторонніх ресурсів (з цілком очевидних причин на оригінальному сайті його не буде) - Ви можете отримати криву версію та вбити BIOS.

Попередньо можна оцінити наявність мікрокодів XEON у прошивці BIOS.

- Отримуємо поточний образ AMI BIOS через Universal BIOS Backup ToolKit 2.0
- Дивимося вміст отриманого ROM-файлу через AMIBCP V 3.37

Варіант для BIOS AMI (American Megatrends Inc).

1. Завантажуємо останню версію BIOSіз сайту виробника вашої материнської плати

3. Завантажуємо мікрокоди для процесорів XEON 771: lga771_microcodes

4. Дізнаємося CPUID вашого процесора за допомогою AIDA64або аналогічною програмою (він виглядає як cpu0001067Ah). Якщо BIOSбуде зашиватися до встановлення процесора, то пропускаємо цей пункт.

5. Розпаковуємо архіви MMToolі lga771_microcodesта залишаємо з файлів з розширенням .binтільки ті файли, початок яких збігається з CPUID комп'ютера (наприклад, cpu0001067a_plat00000044_ver00000a0b_date20100928.bin)

Якщо не знаємо якийсь код, то зашиваємо все.

A.Запускаємо MMTool. Тиснемо кнопку (1) Load ROMі завантажуємо в програму останній BIOS для вашої матплати. Якщо у вас новий BIOS, то можна так само злити утилітою бекап BIOS з ПК і правити його.

B.Переходимо на вкладку (2) CPU Patch, потім кнопкою (3) Browse, відкрийте файл .binвідповідний вашому CPUID.

C.В опціях залиште значення за замовчуванням "Insert a Patch data"та натисніть кнопку (4) Apply.

Після оновлення модифікованим біосом необхідно зробити скидання налаштуваньчерез кнопку скидання або перемички, якщо матплата підтримує такий скидання, або витягуванням на пару хвилин батарейки BIOS. Далі процесор вже коректно сприймається комп'ютером і працює як слід.

Basic Input Output System – базова система введення-виводу, скорочено BIOS. Маленька мікросхема на материнській платі, яка перша отримує управління при включенні ПК. Забезпечуються: базові налаштування ПК - перевірка компонентів ПК при старті...

Здрастуйте дорогі друзі, з вами Артем.

Ще в січні цього року з'явилися повідомлення про нові апаратні вразливості в процесорах Intel та AMD.

Нещодавно вийшли оновлення мікрокоду для процесорів Intel(ревізія 84), і я вирішив перевірити як же справи на практиці.

Хоча інформація вже всім давно відома, я таки розповім коротку передісторію.

Апаратні вразливості процесорів отримали назви Meltdown та Spectre, а виявили їх дослідники із групи Google Project Zero.

Spectre має два варіанти атаки під кодовими іменами CVE-2017-5753 та CVE-2017-5715.

Meltdown має один варіант атаки під кодовим ім'ям CVE-2017-5754.

P. S. CVE це скорочення від англійської Common Vulnerabilities and Exposures» – база даних загальновідомих уразливостей інформаційної безпеки.

Бачачи ці позначення до описів патчів, ви відразу зрозумієте, що до чого і для чого.

Причому найлегше на практиці експлуатувати саме Meltdown, якому піддаються всі сучасні процесори Intel.

Для того, щоб позбавитися Meltdown потрібно оновити мікрокод процесора або пропатчити ядро операційної системи.

Spectre ж складніше втілити в реальність, проте для усунення вразливості потрібно окремо латати кожну програму, що використовується.

Чіпи від AMD меншою мірою схильні до вразливості типу Meltdown (хоча спочатку стверджувалося, що не схильні зовсім).

Шкідливий код цього типу працює на них вкрай повільно, але все ж таки працює.

Уразливості типу Spectre схильні до процесорів і AMD, і Intel, тут вже без варіантів.

Цим же уразливості схильні і процесори з ARM архітектурою, проте зараз мова піде тільки про комп'ютери з процесорами сімейства x86-64.

P. S. Дослідження в галузі безпеки ніколи не зупиняються і завжди може з'явитися щось ще, в тому числі і в процесорах AMDта Intel.

Важливе зауваження! Поки відео було у монтажі та писався тактовий матеріал на сайт, з'явилися нові дослідження в галузі безпеки процесорів.

Виявились нові варіанти реалізації уразливості Spectre, які отримали кодові імена CVE-2018-3640 (так званий варіант атаки 3a) та CVE-2018-3639 (варіант атаки 4).

Нагадаю, що Spectre виправляється оновленням використовуваного програмного забезпеченнянаприклад браузерів і так далі.

Однак від останнього варіанта атаки CVE-2018-3639 потрібно ще й оновити мікрокод процесора на чіпах Intel, що, можливо, трохи знизить продуктивність.

В AMD стверджують, що чіпам компанії не потрібно новий мікрокодвід зазначених атак і все обійдеться звичайними патчами Windows та іншого софту.

Ці вразливості мають низький пріоритет небезпеки для звичайних домашніх комп'ютерів.

Оскільки нових оновлень поки що немає, я зосереджуся на початковій темі свого відео.

Йтиметься про мікрокод процесорів Intel, але мікрокод поки що інший і не виправляє варіант атаки Spectre 4.

Якщо ви використовуєте операційні системи сімейства Windows, вам будуть корисні ці посилання:

Тут ви зможете знайти всі актуальні патчі (та їх імена), які виправляють уразливість цієї групи.

Наприклад найперша латка для Windows 10 вийшла 3 січня 2018 під іменем KB4056892 .

Проте існувала проблема, що програмні виправлення Meltdown знижували продуктивність систем з урахуванням процесорів Intel.

У мене якось не було вільного часу провести свої невеликі тести.

Однак тепер з виходом нових версій прошивок для материнських плат мені стало цікаво, як же справи в цій сфері.

Я використовую материнську плату ASRock Z370 Gaming K6 і відповідно звертаюся до офіційного сайту виробника, для завантаження свіжого BIOS.

Оновлений мікрокод для процесорів Intel з'явився у BIOS версії 1.60, яка вийшла у 2 березня 2018 року.

Я ж ставитиму ще свіжішу версію BIOS версії 1.80, яка побачила світ 26 березня 2018 року.

Для початку мені цікаво протестувати виправлення щодо мікрокоду процесора, без додаткових програмних латок.

Як операційна система використовується Windows 10 версії 16299.371 без додаткових встановлених патчів від апаратних уразливостей Meltdown і Spectre.

P. S. Усі зроблені висновки стосуватимуться лише нових процесорів Intel, тому що для старих материнських плат нові версії BIOSнавряд чи з'являться.

Якщо вам буде цікаво, то можна зробити тести з програмними латками і на старіших процесорах Intel.

Повна конфігурація мого комп'ютера:

Процесор: Intel Core i5 8600K.

Кулер процесора: Arctic Cooling Liquid Freezer 240

Материнська плата: ASRock Fatal1ty Z370 Gaming K6.

Оперативна пам'ять: GoodRam Iridium DDR4 2400 МГц (2х8 Гб IR-2400D464L15S/8G).

Відеокарта: Asus Dual GTX 1060 6 Гб (DUAL-GTX1060-O6G).

Накопичувачі: Sata-3 SSD Plextor M5S та Sata-3 HDD Seagate 1 Тб (ST1000DM003).

Корпус: Fractal Design Define R5.

Блок харчування: Fractal Design Edison M 750 Ватт.

Перший тест - це продуктивність кешів центрального процесора та оперативної пам'ятівAida 64 Cache & Memory Benchmark.

Як ви бачите, якихось суттєвих відмінностей у роботі підсистеми оперативної пам'яті та кешів процесора немає.

Наступний тест торкнеться роботи дискової підсистеми.

На жаль, у мене немає швидкісного M.2 SSD накопичувача, тому я тестуватиму свій Plextor M5S на звичайному SATA-3.

У результаті тесті ATTO Disk Benchmark виходять практично ідентичні результати.

Те саме стосується і показників у тесті CrystalDiskMark 5.2.1.

Тест продуктивності в CrystalDiskMark та новий мікрокод процесора Intel. Spectre та Meltdown

Принаймні, для SATA-3 падіння продуктивності при операціях читання та запису не спостерігається.

Наступний тест 7zip, який покаже продуктивність при упаковці та розпакуванні архівів.

Тут спостерігається все та ж картина, різниці в продуктивності при встановленні нового виправленого BIOS немає ніякої.

Так як я створюю контент, то я не міг залишити осторонь монтаж відео роликів.

Як монтажна програма я використовую Vegas Pro 13 і незалежно від використовуваної версії BIOS, час рендеру не змінився.

Вихідники відео мають роздільну здатність 1080p, бітрейт 50 мегабіт/c і з частотою 50 кадрів в секунду.

Як профіль для рендера був вибраний Sony AVC/MVC з бітрейтом в 16 Мегабіт/c, решту налаштувань профілю ви бачите на своїх екранах.

Тепер трохи поговоримо про ігри.

У тестах брали участь ті проекти, які були в мене встановлені на комп'ютері даний моментчасу (Assassin's Creed Origins, FarCry 4 та Crysis 3).

Усі показники кадрів знімали за допомогою програми MSI Afterburner 4.4.2.

Загалом, результати не потребують коментування.

Тести продуктивності в іграх Assassin Creed Origins. Spectre та Meltdown

Якщо використовувати нову версію мікропроцесора за ревізією 84, то різницю в продуктивності неможливо помітити - все працює також швидко і спритно.

Єдино цікаво було подивитися на роботу M.2 SSD накопичувачівз інтерфейсом NVMe

Можливо, у майбутньому я проведу ще ряд тестів із програмними латками для Windows 10 і з одночасно встановленим виправленим мікрокодом центрального процесора.

Я сподіваюся, що вам було цікаво. Якщо так, то поділіться моєю заміткою в соціальних мережахз друзями.

Таким чином таких нотаток буде виходити значно більше:)

Також не забувайте вступати до групи Вконтакте та підписуватись на YouTube канал.

Сучасні процесори є комплексними пристроями, які можуть бути захищені. У подальшомубільше, продовжує виконувати x86 інструкції безпосередньо, сучасні x86 процесори, які містять міжнародний код, що реалізує підтримку для x86 інструкційного набору. The internal code називається microcode. Microcode може бути updated до fix або mitigate CPU bugs.

Кожен CPU bugs може зробити Firefox crash. Для прикладу, Firefox 57 і останній є відомий в останній раз на Broadwell-U CPUs з old microcode in manner not seen with newer Broadwell-U microcode versions.

Microcode updates може бути завантажений на CPU firmware (зазвичай називається BIOS навіть на комп'ютерах що technically має UEFI firmware instead of old-style BIOS) or by the operating system. Microcode updates не може перевищувати ступінь reboot, якщо в випадку з двостороннім системою, якщо microcode update не є виправлений через BIOS, але operating systems має здійснювати update.

На Mac, має up-to-date system, apply all OS X system updates and Apple firmware updates offered in the Updates pane of the App Store app.

Для того, щоб завантажити Windows для завантаження updated microcode onto CPU, make sure Windows Update is enabled and set to install updates.

Для того, щоб процесор microarchitecture і який microcode revision is in use, run the command reg query HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\CentralProcessor\0 в Windows command prompt. ( Ви можете Open the command prompt by pressing Windows + R , typing cmd and pressing Return .) Line labeled "VendorIdentifier" показує CPU vendor (GenuineIntel for Intel або AuthenticAMD for AMD). Лінія спрямована на "Identifier", що веде до microarchitecture як три номери: "Family", "Model" і "Stepping". Вони є важливими в identifying, якщо конкретні CPU Bug можуть бути відповідними до CPU в своєму комп'ютері. На лінію стисненого "Update Revision" зображено поточний мікрокод перегляду (для особливих microarchitecture) з зернами на одних кутах. Для прикладу, Update Revision REG_BINARY 000000001E000000 means that the revision is 1E (hexadecimal). Лінія розроблена "Попередній Update Revision" показує, що мікрокорисний revision loaded з BIOS.

Якщо в vendor є GenuineIntel, родина є 6, модель є 61 і розгортається є 4, щоб стріляти з Firefox 57 або останнім, microcode revision потребує бути 1A або higher.

Всі microcode updates є в use by default depends on Linux distribution and can different for Intel and AMD CPUs.

  • На Debian-базованих distributions, включаючи Ubuntu, microcode updates for Intel processors are provided by the intel-microcode package and microcode updates for AMD processors are provided by the amd64-microcode package.
  • On Arch, AMD microcode updates are installed by default, але Intel microcode updates require special steps .
  • На Fedora, microcode updates are installed by default.

Для того, щоб процесор microarchitecture і який microcode revision is in use, run the command less /proc/cpuinfo in terminal. Line labeled "vendor_id" показує CPU vendor (GenuineIntel для Intel або AuthenticAMD для AMD). Мікроархітектура ведеться як три номери на ліниях, що стисли "cpu family", "model" і "stepping". Вони є важливими в identifying, якщо конкретні CPU Bug можуть бути відповідними до CPU в своєму комп'ютері. Лінія окреслена "мікрокодом" показує, що мікрокод кодування номера (для особливої ​​microarchitecture) в hexadecimal.

Ви можете оптимізувати роботу встановленого у комп'ютері центрального процесора виробництва Intel або AMD, встановивши новітню версію його мікрокоду. Оптимізація досягається головним чином за рахунок виправлення помилок стандартного мікрокоду, що отримується від прошивки материнської плати.

Оновлення прошивок BIOS/UEFI вашої материнської плати зазвичай містять нові версії мікрокодів для підтримуваних материнською платоюцентральних процесорів Тому в першу чергу слід переконатися в тому, що використовується найновіша версія BIOS/UEFI.

Даний посібник дозволяє оптимізувати роботу лише тих центральних процесорів, які були розроблені компаніями Intel та AMD.

Примітки:

  • Інсталяція пакета програмного забезпечення з мікрокодами може призвести до нестабільної роботи комп'ютера. З цієї причини слід встановлювати пакет лише тоді, коли спостерігаються будь-які проблеми, пов'язані з функціонуванням центрального процесора вашого комп'ютера!
  • Не встановлюйте пакет програмного забезпечення з мікрокодами центральних процесорів, якщо він випущений раніше, ніж прошивка BIOS/UEFI материнської плати вашого комп'ютера!

1. Центральні процесори виробництва компанії Intel

У разі використання центрального процесора виробництва компанії Intel ви можете діяти таким чином.

Примітка:вам потрібен пакет програмного забезпечення з мікрокодами центральних процесорів виробництва компанії Intel, новий, ніж той, що знаходиться в офіційному репозиторії дистрибутива? У цьому випадку ви можете завантажити файл пакета програмного забезпечення з розширенням .debз

Менеджер пакетів Synaptic Software

Менеджер пакетів Synaptic«Пошук на комп'ютері»), ввести запит «Synaptic» Менеджер пакетів Synaptic Менеджер пакетів Synaptic «Пошук» «microcode»та натиснути кнопку «Пошук»поряд із ним.

3.201501106.1 (У даному випадку версія 3 пакета була створена 6 листопада 2015).

« intel-microcode»та натиснути кнопку «Застосувати»

dmesg | grep microcode

Enter

2. Центральні процесори виробництва компанії AMD

У разі використання процесорів виробництва компанії AMD цей посібник буде актуальним лише для тих з них, які були випущені після 2006 року (AMD K10 і новіші). Якщо на комп'ютері встановлено один із таких центральних процесорів, ви можете діяти таким чином.

Примітка:вам потрібен пакет програмного забезпечення з мікрокодами центральних процесорів виробництва компанії AMD, новий, ніж той, що знаходиться в офіційному репозиторії дистрибутива? У цьому випадку ви можете завантажити файл пакета програмного забезпечення з розширенням .debз репозиторію дистрибутива Debian , до якого розміщуються пакети нових версій. Після закінчення завантаження файлу пакета слід знайти його за допомогою менеджера файлів та використовувати подвійний клік для встановлення мікрокодів у систему. Після завершення інсталяції необхідно перезавантажити комп'ютер.

A. У разі використання дистрибутива Ubuntu вам доведеться встановити Менеджер пакетів Synaptic(це можна зробити за допомогою програми Software). У Linux Mint даний менеджерпакетів присутній відразу ж після установки.

B. Насамперед слід запустити Менеджер пакетів Synaptic. У дистрибутиві Ubuntu для цього потрібно натиснути на білий логотип Ubuntu у верхній частині бічної панелі ( «Пошук на комп'ютері»), ввести запит «Synaptic»та вибрати перший із запропонованих варіантів додатків Менеджер пакетів Synaptic. Не потрібно використовувати поле швидкого пошукупакетів програмного забезпечення головного вікна Менеджер пакетів Synaptic, оскільки відповідний механізм ненадійний; натомість слід натиснути кнопку «Пошук»на панелі інструментів, в полі пошуку діалогового вікна ввести запит «amd64-microcode»та натиснути кнопку «Пошук»поряд із ним.

C. Тепер слід перевірити дату створення пакета програмного забезпечення з мікрокодами центральних процесорів: цей пакет має бути створений пізніше, ніж прошивка BIOS/UEFI материнської плати комп'ютера! Дата створення пакета, що розглядається, відображена в його номері версії, наприклад 2.20160316.1 (В даному випадку версія 2 пакета була створена 2 березня 2016).

D. Настав час встановити прапорець навпроти назви пакета програмного забезпечення «amd64-microcode»та натиснути кнопку «Застосувати»на панелі інструментів програми.

E. Після завершення інсталяції пакета програмного забезпечення потрібно перезавантажити комп'ютер.

F. Після перезавантаження варто перевірити коректність завантаження одного із встановлених мікрокодів шляхом введення наступної команди у вікні терміналу (використовуйте функції копіювання/вставки для того, щоб уникнути помилок):

dmesg | grep microcode

Після введення команди слід натиснути клавішу Enterдля її виконання. Якщо мікрокод успішно завантажено, ви побачите кілька повідомлень про це.

Бажаєте дізнатися про інші налаштування та прийоми роботи з Linux-системами? На цьому веб-сайті розміщено велика кількістьподібних матеріалів.

Власне, оригінальний спосіб, оснащення та мікрокоди можна знайти (безпосередньо інструкція з AMI), і в більшості випадків використання цього способу не несе жодних проблем і не має. підводного каміння, але я у своїй практиці регулярно стикався з такою проблемою:

Тобто. мала місце банальна нестача вільного місцявсередині зображення. Коли модифікуєш BIOS собі під конкретний процесор, це можна не звертати уваги, т.к. завжди можна завантажити всього один мікрокод саме під свій процесор, або видалити якийсь старий мікрокод для звільнення місця, але коли модифікуєш потоком, потрібно шукати інше компромісне рішення.

Як компромісне я вибрав наступне рішення — беремо останні версіїмікрокодів для всіх процесорів покоління CORE у всіх конструктивах (Celeron E, Pentium E, Core 2 Duo, Core 2 Quad, Xeon *3xxx/*5xxx) і підмінюємо ними все, що було до того. Набір мікрокодів вийшов наступним:

Обсяг цього набору – всього 76 кілобайт. Цей файлвийшов шляхом об'єднання цих файлів:

cpu00010676_plat00000001_ver0000060f_date20100929.bin
cpu00010676_plat00000004_ver0000060f_date20100929.bin
cpu00010676_plat00000010_ver0000060f_date20100929.bin
cpu00010676_plat00000040_ver0000060f_date20100929.bin
cpu00010677_plat00000010_ver0000070a_date20100929.bin
cpu0001067a_plat00000011_ver00000a0b_date20100928.bin
cpu0001067a_plat00000044_ver00000a0b_date20100928.bin
cpu000006f2_plat00000001_ver0000005d_date20101002.bin
cpu000006f6_plat00000001_ver000000d0_date20100930.bin
cpu000006f6_plat00000004_ver000000d2_date20101001.bin
cpu000006f7_plat00000010_ver0000006a_date20101002.bin
cpu000006f7_plat00000040_ver0000006b_date20101002.bin
cpu000006fb_plat00000001_ver000000ba_date20101003.bin
cpu000006fb_plat00000004_ver000000bc_date20101003.bin
cpu000006fb_plat00000010_ver000000ba_date20101003.bin
cpu000006fb_plat00000040_ver000000bc_date20101003.bin
cpu000006fd_plat00000001_ver000000a4_date20101002.bin

Сама процедура модифікації теж трохи змінилася і стала якщо не простіше, то швидше:

Крок 1- відкриваємо образ BIOS у програмі MMTool:



Крок 2- Для перевірки переходимо на останню вкладку(CPU PATCH) і дивимося кількість мікрокодів. Тут їх, наприклад, 31 штука:

Крок 3- Переходимо на вкладку Replace і шукаємо на ній пункт "P6 Micro Code":

Крок 4- Вибравши пункт «P6 Micro Code» тиснемо кнопку Ікщціу, вибираємо файл ncpucode.bin, описаний вище і замінюємо його кнопкою Replace:





Крок 5- Для перевірки переходимо на останню вкладку (CPU PATCH) і бачимо кількість мікрокодів. Після заміни мікрокодів залишилося 17, версія остання:

Фундаментальної різниці із порядком модифікації, описаним на delidded.com немає. У більшості випадків на виході виходить звичайно не те саме, але процесор отримує потрібний мікрокод. З суб'єктивних позитивних моментів я хотів би звернути увагу лише на те, що гарантовано оновлюються мікрокоди на всі актуальні процесори, чи то «цивільні», чи то «серверні», а також практично немає ризику отримати повідомлення про брак місця. Хоча, в моїй практиці навіть на такий набір мікрокодів кілька разів місця не вистачало, це було з BIOS для ECS P4M900T-M і ECS P4M900T-M2, які загалом сумісні з Xeon E5450.

За традицією публікую посилання на архів з інструментами (zip, 234KB). Архів містить виконуваний файл MMTOL.exe(версія 3.22 BKMOD), файл з мікрокодами на всі 45/65nm процесори покоління core/xeon ncpucode.bin, а також два файли 45nm.binі 65nm.binз мікрокодами лише на 45nm процесори і лише на 65нм. Використання цих файлів може бути корисним у тих випадках, коли необхідно звільнити додатковий об'єм у BIOS, наприклад, для нового firmware якогось контролера, мережевого, дискового та ін.

!NB: Ні у файлі ncpucode.bin, ні у файлах 45nm.bin/65nm.bin немає підтримки процесорів Pentium 4, Celeron (без буквених індексів), Pentium D, Celeron D та Xeon W (Xeon 5080 наприклад). Це процесори покоління NetBrust.