使用 QEMU 进行嵌入式 Linux 仿真(在 NXP 的 LPC313X 上)

发布于 2024-11-08 12:57:35 字数 513 浏览 7 评论 0原文

我开始使用嵌入式 Linux,并且我有一个基于 LPC313x 的板(Embedded Artists)。我已经使用 ELDK 构建了顶点和内核(如下建议:http://www.lpclinux.com/LPC313x /LPC313x入门ELDK)。 使用默认设置正确构建内核(显然没有发生错误),并且我使用预制的 ramdisk,在同一链接中提供。

现在我想在加载物理板中的所有内容之前使用 QEMU 来模拟我的系统。为此,我使用命令:

qemu-system-arm -kernel kernel/work_2.6.28.2/arch/arm/boot/zImage -initrd ../eldk42/arm/images/ramdisk_image.gz

我无法让它工作! QEMU 启动,但模拟器屏幕保持黑屏,没有任何反应。我在这里缺少什么?

I'm starting to work with Embedded Linux and I've got a LPC313x based board (Embedded Artists). I've built apex and kernel with ELDK (as suggested here: http://www.lpclinux.com/LPC313x/LPC313xGettingstartedELDK).
The kernel is built correctly (apparently no error occurs) with the default settings, and I am using a pre-made ramdisk, provided at the same link.

Now I want to use QEMU to emulate my system prior to load all the stuff in the physical board. To do that, I'm using the command:

qemu-system-arm -kernel kernel/work_2.6.28.2/arch/arm/boot/zImage -initrd ../eldk42/arm/images/ramdisk_image.gz

I cannot get it work! QEMU starts but the emulator screen remains black, nothing happens. What am I missing here?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

三生路 2024-11-15 12:57:35

Qemu 不支持您的主板。如果您在互联网上找不到董事会支持包,则必须编写自己的董事会支持包。尝试检查内核源代码树,您可能会在那里找到一个。
另外,您还必须了解 SoC 和主板的确切内部细节。

You board is not supported by Qemu. You have to write your own Board Support Package, if you can't find one on the Internet. Try checking the kernel source tree, you might find one there.
Plus you have to know the exact internal details of your SoC and board.

把人绕傻吧 2024-11-15 12:57:35

试试这个:

qemu-系统-arm-内核
内核/work_2.6.28.2/arch/arm/boot/zImage
-initrd ../eldk42/arm/images/ramdisk_image.gz
-追加“root=/dev/ram”

尝试使用 -m:

qemu-system-arm -m 128 -kernel
内核/work_2.6.28.2/arch/arm/boot/zImage
-initrd ../eldk42/arm/images/ramdisk_image.gz
-追加“root=/dev/ram”

尝试使用 -M:

qemu-system-arm -M Versatilepb -m 128 -kernel
内核/work_2.6.28.2/arch/arm/boot/zImage
-initrd ../eldk42/arm/images/ramdisk_image.gz
-追加“root=/dev/ram”

您基本上将 /dev/ram (通过 -initrd 参数提供)作为系统的根目录。您可以在此处找到更多信息。

Try this:

qemu-system-arm -kernel
kernel/work_2.6.28.2/arch/arm/boot/zImage
-initrd ../eldk42/arm/images/ramdisk_image.gz
-append "root=/dev/ram"

Try with -m:

qemu-system-arm -m 128 -kernel
kernel/work_2.6.28.2/arch/arm/boot/zImage
-initrd ../eldk42/arm/images/ramdisk_image.gz
-append "root=/dev/ram"

Try with -M:

qemu-system-arm -M versatilepb -m 128 -kernel
kernel/work_2.6.28.2/arch/arm/boot/zImage
-initrd ../eldk42/arm/images/ramdisk_image.gz
-append "root=/dev/ram"

You are basically making /dev/ram (which you provide with -initrd argument) as your system's root directory. You can find more information here.

鸢与 2024-11-15 12:57:35

您可能对 Linux 选项 console=ttyS0 感兴趣,您可以将其添加到 qemu-append 中。

You're probably interested in the linux option console=ttyS0 which you can add to -append of qemu.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文