
Я ищу эмулятор x86, чтобы я мог запустить в нем свое ядро Linux. Я специально ищу эмулятор, который показывает все вызовы функций на уровне C/Assembly от загрузчика до загрузки ядра. Более того, он должен уметь показывать структуру оперативной памяти.
решение1
Существует ряд решений для отладки ядра; вот несколько из тех, которые я использовал:
- бохс, полноценный эмулятор системы, имеет приятныйвстроенный отладчик(с дополнительным графическим интерфейсом), а также поддержкаудаленная отладка с использованием
gdb
; - QEMU, другой полносистемный эмулятор (который также поддерживает эмуляцию только ЦП, на каждый процесс) также поддерживаетудаленная отладка с использованием
gdb
.
Оба они могут заморозить ЦП при запуске эмулируемой системы, что позволяет отлаживать bootstrap. При использовании в качестве целей для gdb
они также поддерживают присоединение исходного кода, чтобы вы могли следовать коду C (или теоретически всему, что gdb
поддерживает).