问题 Windows的Node.js x86和x64安装程序有什么区别?


它们都将node.exe安装到C:\ Program Files中 (x86)的......所以我想知道实际的差异是什么。我知道有一些因为 node-sqlserver 模块在我们的机器上失败,它以不同的方式为x86和x64版本的Node做到了。

有人能为我解释一下这个区别吗?谢谢。


12400
2017-09-20 10:34


起源

fyi,现在(大约2015年)x64版本没有安装到C:\ Program Files(x86)...... - JasonS
如果你已经安装了,那么被调用的那个是PATH环境变量的第一个... - Schwarzie2478


答案:


x64安装程序安装64位版本的节点,该节点是针对64位版本的V8编译的。 node-sqlserver包是一个本机模块,这意味着它需要针对匹配的节点版本进行编译。 IE:如果您对64位版本的节点使用预编译的32位版本的模块,它将失败。

除了32位和64位应用程序之间的典型差异(更大的地址空间,使用8个字节用于地址而不是4个字节)之外,两个版本之间的节点没有区别。


15
2017-09-21 00:14



嗯,有一个关于安装路径的事情是开放的(至少在干净的安装上不会发生这种情况): github.com/nodejs/node/issues/2951 - SamB


这个链接 对x86和x64处理器体系结构之间的主要差异进行了很好的总结,可以帮助您理解您的问题。

本质上,x86和x64具有不同的指令集,因此以某种方式以不同方式安装它可能更好,以便更好地利用每个指令集提供的功能。


-5
2017-09-21 00:22