linux如何同时32位和64位?或者是glibc处理的东西?

Cra*_*enz 6 linux 64-bit x86 libc 32bit-64bit

Linux如何同时32位和64位?或者是glibc处理的东西?

我运行CentOS 5.3,它是一个"64位"版本; 虽然我为64位和32位构建了东西.据我所知,Windows应该有一个32位模拟器.Linux做同样的事情吗?它是在用户空间还是内核空间?

如果libc处理它,它有点像模拟器说,我将链接32位应用程序,但说64位到内核?

ako*_*sch 5

cpu可以执行64位和32位指令,内核可以在模式之间切换.唯一的限制是您不能将32位程序与64位库链接,因此您必须安装32位和64位版本的libc等.

  • 为了更直接地回答这个问题,64位程序向内核"说"64位,而32位程序向内核"说"32位,并且内核理解两者,假设设置了`CONFIG_IA32_EMULATION`什么时候编译内核.实际上,64位程序甚至可以进行32位系统调用,尽管这有点不正常...... (5认同)