Тег

x86

2 материалов

512-байтовый загрузочный сектор, который сбрасывает вашу RAM на USB-флешку (github.com)

BareMetal-RAM-Dumper загружается без ОС с 512-байтового сектора, переводит процессор x86 в unreal-режим, чтобы дотянуться до памяти выше 1 МБ, затем пишет физическую RAM на USB-диск блоками по 32 КБ. Заявка: криминалистика холодной загрузки и восстановление криптоключей.

Работает только на legacy BIOS, и тред быстро находит дыры. Один спрашивает, что именно тестировали; другой отмечает, что прошивка UEFI затрёт RAM ещё до того, как дампер запустится.

Не просто заголовок — разбор дискуссии

Главные треды HN: факты из обсуждений, разные стороны, голоса инсайдеров. Email, Telegram или RSS.

256 КБ кода, чтобы обнулить 64 КБ памяти — починили прямо в эмуляции (devblogs.microsoft.com)

Каждая инструкция записи байта занимала 4 байта. 65 536 штук — это 256 килобайт машинного кода ради инициализации 64 килобайт стека: соотношение кода к данным 4 к 1.

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

Оговорка из обсуждения: возможно, это вовсе не баг, и полностью развёрнутая версия на реальном железе работала быстрее.