Рубрика «qemu»

Введение

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

Читать полностью »

Как устроена страничная организация памяти x86_64 - 1

В этом посте я буду говорить о страничной организации только в контексте PML4 (Page Map Level 4), потому что на данный момент это доминирующая схема страничной организации x86_64 и, вероятно, останется таковой какое-то время.

Окружение

Читать полностью »

С китайского языка я еще не переводил:) Но мимо статьи ребят из ByteDance, которые разработали технологию VDUSE, пройти не смог. И хотя в название авторы вынесли «технологии виртуализации сети», на самом деле эти технологии применимы и к другим типам устройств — например, к дискам и видеокартам. Статья последовательно разбирает, как и почему развивались технологии виртуализации устройств, параллельно объясняя, как эти технологии работают, какие у них есть сильные и слабые стороны. 

Мы готовим материал о создании CSI-драйвера для Deckhouse VirtualizationЧитать полностью »

Что делать, если у вас возникло желание или необходимость заняться разработкой под MacOS или iOS, но под рукой нет макбука, а покупать его только чтобы открыть Xcode кажется делом сомнительным? Недавно я столкнулся с такой проблемой в одном из своих пет-проектов и решил ее достаточно просто и быстро. После выполнения нескольких достаточно примитивных шагов, мне удалось запустить MacOS Monterey как на скриншоте ниже.

image

Никакого Virtualbox, никакого Virtual Machine Manager. Из требований — только 100 Гб свободного места на диске и хотя бы 16 Гб оперативной памяти. В рунете я встречал описание похожих путей установки, вроде Docker-OSX или Sosumi. Но я бы хотел поделиться способом, который позволяет использовать актуальную версию MacOS (Sosumi — сразу минус) и не потратить уйму свободного времени на возню с конфигами и терминалом. Поехали.
Читать полностью »

Blink: супербыстрый эмулятор x86_64 размером 119 КБ - 1

На Хабре когда-то писали про талантливую программистку Джастин Танни, автора маленьких и очень быстрых приложений. Приятно знать, что она не останавливает свою неординарную деятельность. Например, одна из её последних разработок — крошечный эмулятор под названием Blink размером всего 116 КБ, который очень быстро компилирует WASM и выполняет Linux-программы x86_64 под разными платформами и даже в браузере.
Читать полностью »

Идеальная рабочая станция Linux на процессоре Apple M1 (ARM64) - 1

Моё знакомство с Asahi Linux началось в марте прошлого года, когда на свет появилась альфа-версия Asahi. Я сразу же установил её на свой Mac Mini с 8-ядерным Apple M1 (ARM64). Asahi — это дистрибутив Linux, который нативно работает в «маках» на Apple Silicon благодаря хитрым хакам и реверс-инжинирингу от сообщества Open Source. Более того, запуск Asahi абсолютно легален, поскольку Apple официально разрешает загрузку отличных от macOS операционных систем на своей платформе Apple Silicon.

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

Зачем нужен эмулятор retrowin32 - 1

Самый популярный вопрос о моём эмуляторе Windows retrowin32 (после «Зачем вообще это нужно?») — это вопрос о том, как он работает. Сегодня ответ кажется мне очевидным, но прежде чем я разобрался, он представлял для меня огромную загадку. Поэтому я постараюсь объяснить так, чтобы вам тоже стало понятно.
Читать полностью »

В процессе обратной разработки прошивок иногда возникает задача по ее эмуляции, например, для фаззинг тестирования или детального изучения поведения в динамике. На практике обычно для этого хватает фреймворков avatar2, unicorn, qiling и подобных. Однако они поддерживают далеко не все платформы и имеют ряд ограничений для решения таких задач. При разработке эмулятора PLC я столкнулся с тем, что ни один фреймворк для эмуляции не поддерживал требуемую платформу.

Читать полностью »

После года разработки вышел эмулятор QEMU 6.0 - 1

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

Пример — выполнение приложения для ARM на ПК с процессором x86. Благодаря особенностям эмулятора приложение в изолированном окружении выполняется почти с той же эффективностью, что и в нативном окружении. Достигается это, в частности, за счет прямого выполнения инструкций на процессоре, а также за счет применения гипервизора Xen или модуля KVM. Сейчас эмулятор поддерживает 14 аппаратных архитектур и может эмулировать около 400 разных устройств. За год разработчики внесли свыше 3 тысяч изменений от 268 разработчиков.
Читать полностью »

image1.png

QEMU – достаточно известное приложение для эмуляции. Статический анализ может помочь разработчикам таких сложных проектов, как QEMU, отлавливать ошибки на раннем этапе и в целом повысить его качество и надёжность. В этой статье будет проверен исходный код приложения QEMU на потенциальные уязвимости и ошибки с помощью инструмента статического анализа PVS-Studio.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js