Linux 小知识翻译 - 「i386」是什么?
i386是指 *CPU* 的种类,也可以指 *CPU* 的架构(architecture)。
现在的 CPU 一般都用 「Core 2 Duo」或者「Athlon」,「Xeon」,「Opteron」之类的比较酷的名称来称呼。
Linux诞生的时候,CPU作为一个重要的组件,一般用型号来称呼它。
i386的 i 代表 Intel。 Intel公司最先生产的,从4004开始的CPU系列中,386(80386)是第一个32位的CPU。
Linux刚开始就是作为386架构上兼容POSIX的内核来开发的。之后CPU的性能虽然越高,但是一直都兼容「386」架构的,
所以Linux上运行的各种程序,只要在「386」上编译之后,就可以在大部分的PC上运行了。
但是,「386」诞生于1985年,现在来看已经很古老了。
现在很多Linux发行版都是是针对「Pentium」之后的CPU的。
名称中包含「i586」的软件包就是针对「Pentium」架构的CPU的。
Linux中用 uname 命令看到的「i686」则是指「Pentium Pro」之后的架构。
可能我们会认为在「i586」或者「i686」架构CPU的机器上,使用针对「i586」或者「i686」编译的二进制应用程序会比兼容「386」架构的二进制应用程序更好。
但在实际使用中,在「i586」或者「i686」架构CPU的机器上,使用「i586」或者「i686」下编译的二进制应用程序并没有发现大幅度的性能提升。
因此,倒不如为了通用性,只在安装Linux时,选择和CPU架构相同的内核,而在Linux内核上运行的各种程序就可以直接使用在「i386」架构下编译好的软件包就行,
现在很多Linux发行版中的软件包就是这么做的,能够正常运行是最重要的。