c - 64 位系统上的 32 位兼容库

标签 c linux ubuntu 64-bit

在运行 64 位操作系统的 64 位系统上,如果我想运行 32 位程序,Ubuntu 提供了一个 32 位兼容性库,ia32-libs。我猜其他操作系统会提供类似的兼容性库。

我很想知道 32 位兼容性库究竟做了什么来提供兼容性?

最佳答案

它实际上不做任何事情 - 它只包含您可能想要调用的库函数的 32 位实现。例如,您需要这样一个库,以便您要调用的函数位于适当的指令集中并使用适当的 ABI。

当您在 64 位系统上运行 32 位进程时,操作系统会先将处理器置于 32 位模式,然后再切换上下文以运行您的程序。

关于c - 64 位系统上的 32 位兼容库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17197924/

相关文章:

c++ - 在 Ubuntu 的终端上运行 C++ 文件

c - 在 x11 中记录多个按键

python - linux 上的两个版本的 python。如何将包安装到特定版本的python?

database - 在 Ubuntu 上的 Oracle XE 下创建新数据库

java - Ukrsotsbank 网上银行小程序错误 "Aplication Blocked by Security Settings"

linux - 信号如何工作

c - 我需要帮助编写对数组进行冒泡排序的代码

c - 解析 C 文件 I/O

c - 使用fopen/write时出现汉字问题

c - 子 PID 的执行和打印