最简单的 x86 嵌入式 Linux 是什么?

发布于 2024-08-16 02:56:17 字数 141 浏览 13 评论 0原文

我想玩一些嵌入式Linux。我希望它能够在 x86 处理器上运行(首先,它将在我的普通 PC 上运行)。我在网上查看过,但我发现的那些似乎很难设置或缺乏适当的文档。那么,有哪些优秀的嵌入式 x86 兼容 Linux 发行版,它们易于设置,或者有关于如何设置的良好文档?

I want to play around with some embedded linux. I want it to be able to run on an x86 processor (for start, it will be running on my regular PC). I have looked online, but the ones I have found seem hard to setup or lack proper documentation. So what are some good embedded x86 compatible linux distros that are easy to setup or have good documentation on how to get things setup?

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

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

发布评论

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

评论(8

女中豪杰 2024-08-23 02:56:18

BusyBox

BusyBox 被设计为与 Linux 内核一起使用的小型可执行文件,这使得它非常适合与嵌入式设备。它为任何小型或嵌入式系统提供了一个相当完整的环境。

BusyBox

BusyBox is designed to be a small executable for use with the Linux kernel, which makes it ideal for use with embedded devices. It provides a fairly complete environment for any small or embedded system.

人│生佛魔见 2024-08-23 02:56:18

“嵌入式Linux”到底是什么意思?这取决于你想在上面运行什么。

例如,您可以使用 OpenWRT,但肯定还有其他可能更适合您的目的。

如果您想构建一些多媒体内容,Moblin 也可能是一个解决方案。

What do you actually mean by "Embedded Linux"? It depends what you want to run on that.

For example you can use OpenWRT, but there are surely others which might better fit your purpose.

If you want to build some multimedia thing, Moblin might be a solution as well.

毁虫ゝ 2024-08-23 02:56:18

您可能想查看Beagle Board

它不是 x86,而是体面的开发人员社区,它将提供如何构建和运行嵌入式 Linux 的好主意。(即闪存文件系统,有些有限的 RAM...)而且它真的很便宜!

我还可以推荐这两本书:

构建嵌入式Linux系统

嵌入式 Linux 入门

You might want to look at the Beagle Board.

It's not x86, but decent community of developers, and it will give a good idea how to build and run embedded Linux.(i.e. flash file system, somewhat limited RAM...) and its real cheap!

I can also recommend these two books:

Building Embedded Linux Systems and

Embedded Linux Primer

倚栏听风 2024-08-23 02:56:18

我首先看一下 busybox 附带的 buildroot 工具的输出。

您建议您想要制作自己的 Linux 发行版,这很好,但您确实需要首先知道如何使用现有发行版。我假设您完全了解 Linux 的基本启动和工作原理。您需要

  • 某种引导介质(在某些情况下,这可以是 ROM,但通常不是),固件可以从中引导(在大多数情况下,x86 上的固件是某种 BIOS,或类似 BIOS -除了 Mac 之类的东西)
  • 引导加载程序 - 我喜欢使用 syslinux,因为它很简单(并且从 dos 文件系统引导)
  • 内核
  • 某种根文件系统 - 您可以为此使用 initramfs,在这种情况下,它由引导加载程序并在启动时扩展。 Initramfs 很酷,它避免了对“真正的”根文件系统或块设备驱动程序等的需要(以一些 ram 为代价,但 ram 很容易)。
  • AC 库(除非你所有的 exe 都是静态链接的)
  • 一些用户空间软件

我强烈建议使用模拟器(例如 vmware)来测试它,它可以大大减少周转时间。开发系统需要有相当大的磁盘空间,因为您可能需要编译上面列表中的所有内容,可能还需要一些其他工具(例如 gcc 和 C 库),这些工具都不小。您的构建盒可能需要运行适当的 Linux 发行版。

我已经做到了这一点,它很有趣,但有时令人沮丧(调试本身就是一项任务)

快乐黑客:)

I'd start by having a look at the output of the buildroot tool which comes with busybox.

You are suggesting that you want to make your own Linux distribution, this is fine but you really need to know how to use an existing one first. I am assuming you understand fully how Linux boots and works on a basic level. You'll need

  • Some kind of boot media (in some cases this CAN be a rom, but usually isn't) that the firmware can boot from (in most cases the firmware on x86 is some kind of bios, or bios-like - except on things like Macs)
  • A boot loader - I like to use syslinux because it's easy (and boots from a dos filesystem)
  • A kernel
  • A root filesystem of some kind - you can use an initramfs for this in which case, it's loaded by the bootloader and expanded at boot time. Initramfs is cool, it avoids the need for a "real" root fs or block device drivers etc (at the expense of some ram, but ram is easy).
  • A C library (unless all your exes are static linked)
  • Some userspace software

I'd strongly recommend using an emulator (such as vmware) to test this, it reduces turnaround time a lot. A development system will need to have rather a lot of disc space, as you'll probably need to compile everything in the above list, and possibly some other tools as well (such as gcc and C library) which aren't small. Your build box will probably need to be running a proper Linux distribution.

I have done this and it's good fun, but frustrating at times (debugging can be a mission in itself)

Happy hacking :)

无法言说的痛 2024-08-23 02:56:18

Busybox + LFS、Gentoo、Arch 都很好地完成了这项工作

首先,你需要在开发计算机上的 chroot 监狱中编译你的东西,最后你不需要编译,但你需要镜像/保留你自己的存储库,因为你可以'不能从官方 arch 存储库获取旧包。

Busybox + LFS, Gentoo, Arch all do the job well

First to you'd compile your stuff in a chroot jail on dev computer, last you don't need to compile but you need to mirror/keep your own repository because you can't get old packages from official arch repositories.

愁以何悠 2024-08-23 02:56:18

我建议使用 debian

I suggest debian

可爱暴击 2024-08-23 02:56:17

由于“嵌入式”的定义因交谈对象的不同而有所不同,因此嵌入式 Linux 发行版的定义也会有所不同。

正如其他人所说,您可以使用发行版构建工具包,例如:

您还可以使用任何“标准”Linux 发行版,这通常可以针对嵌入式环境进行定制。它们的优点是在正常环境中经过严格的测试。因此,您可以选择以下任何一个:

最后,您还可以从源代码完全构建自己的。在这种情况下, BusyBox 可能会有所帮助,因为它提供了很多功能和通用应用程序。为了帮助您解决这个问题,有一个很好的 3 部分系列:使用 Busybox 构建微型 Linux 系统 (第 1 部分第 2 部分第 3 部分)

Since the definition of "embedded" vary depending on who you talk to, what is considered an embedded Linux distribution will also vary.

As other have said, you can go with distribution building tool kit, like :

You can also use any "standard" Linux distribution, which can often be customized for an embedded environment. They have the advantage of being heavily tested in their normal environment. So you can choose any of :

Finally, you can also build your own completely, from source. In that case, BusyBox will probably be helpful since it provide a lot of functionalities and common application. To help you with that, there is the nice 3 parts series : Building Tiny Linux Systems with Busybox (part 1, part 2, and part 3)

那些过往 2024-08-23 02:56:17

您可能想查看 OpenEmbedded 项目。它是一个元发行版,这意味着它更像是一个发行版构建工具包,而不是现成的发行版。但使用它可能需要您付出努力。但这同样适用于所有嵌入式解决方案。

You may want to take a look at the OpenEmbedded project. It is a meta-distribution, meaning it's more of a distribution construction kit rather than ready distribution. But using it may take effort on your part. The same applies to all embedded solutions, though.

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