1

我是 Linux 内核的新手,想要为 x86 arcthitecture 提供 32 位 Linux 内核源代码,但是当我从 kernel.org 下载它时,它给了我 x86_64 的源代码,这不是我需要的。我特别在寻找 3.4.28 版本。

或者我必须仅使用 x86_64 源构建 32 位 x86 Linux。

4

4 回答 4

8

没有特定的 32 位 linux 内核源代码。所有架构都包含在同一个 tarball / git 存储库中。

大部分 linux 内核都是用可移植的 C 语言实现的,可用于所有架构。体系结构特定部分位于目录下方的单独子目录中arch。另请参阅https://github.com/torvalds/linux/tree/master/arch

x86_64机器上配置和编译时,默认会得到一个x86_64内核。如果要x86在同一台机器上构建 32 位内核,则需要进行交叉编译,例如:

# make ARCH=i386 menuconfig

将为您提供必要的选项来选择基于 x86 的处理器类型。

# make ARCH=i386

然后将构建基于 x86 的内核映像。

于 2013-03-15T14:46:42.503 回答
1

这是你要找的东西吗 http://stacklet.com/downloads/kernels/xen/xenU-2.6.31

或试试这个 http://rpmfind.net//linux/RPM/opensuse/updates/12.2/noarch/kernel-source-3.4.28-2.20.1.noarch.html

于 2013-03-15T14:44:37.543 回答
1

如果您在https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.4.28.tar.gz下载内核源代码,您可以为 x86 编译这些源代码以生成 32 位二进制文​​件。您可以使用相同的内核源代码为不同的架构(x86、x86_64、PPC 等)生成二进制文件。请参阅https://www.kernel.org/doc/index-old.html#Cross_compiling_vs_native_compiling

于 2013-03-15T14:47:51.580 回答
1

请参阅内核源代码。另外,看看阅读 Linux 内核源代码

于 2013-03-15T14:48:13.203 回答