2013-09-20 4 views
0

Я новичок в Linux Kernel Development. У меня есть исходный код linux и добавлен системный вызов Hello World, чтобы начать работу. Но теперь я не могу понять, как пройти тестирование этого кода. Как запустить измененное ядро?Как проверить скомпилированное ядро ​​Linux?

Я думаю, что могу использовать VirtualBox для проверки, но разве я не должен был бы создавать новый iso каждый раз, когда я делаю изменения и компилирую ядро?

Извините за вопрос такой наивный вопрос, но я здесь очень смущен

+1

"и добавил системный вызов Hello World, чтобы начать работу". **Какие**? – eepp

+0

Я имел в виду, я добавил системный вызов, который будет просто печатать Hello World. Извините, что не ясен – Poojan

+1

Да, это было ясно, но почему вы добавили _system call_? Мы этого не делаем. – eepp

ответ

0

Вы можете запустить qemu виртуальную машину с внешним ядром, так что вам не нужно, чтобы сохранить изменения образа диска, чтобы проверить ваше ядро , Например:

qemu-kvm -kernel arch/x86/boot/bzImage -initrd initramfs.gz -append "console=ttyS0" -nographic 

Этот пример взят из this article, который содержит много информации о том, как настроить среду разработки.

+0

Спасибо за ответ! Я загрузил последнюю версию QEMU и установил ее, но нет такой опции, как qemu-kvm – Poojan

+0

Вы не смогли найти QEMU и KVM, предварительно упакованные для вашей системы? Вы можете запускать ядро ​​только с помощью qemu, но он будет медленнее, поскольку он не использует аппаратную виртуализацию. Это может быть достаточно быстро; попробуй. – Joni

+0

Я использую qemu для запуска образа Linux. Я получаю монитор QEMU. Тем не менее, я хочу посмотреть, могу ли я использовать свой новый системный вызов и поэтому написать код C для него, но я не знаю, как написать код C на виртуальной машине, поскольку монитор QEMU не позволяет мне это делать – Poojan

Смежные вопросы