如何区分电脑是x86还是arm

嘿嘿,说实话,如何区分x8 6 和ARM架构的计算机,可以从几个方面来理解。

Windows系统,嗯,简单。
右键任务栏,点击“任务管理器”,找到“性能”页面,看看CPU下面写了什么。
如果显示“x6 4 ”,则表示 x8 6 -6 4 架构,即较旧的型号。
如果它说“ARM6 4 ”,则意味着 ARM 架构,较新。
或者您可以按Win+R,输入msinfo3 2 ,然后查看“系统摘要”中的“系统类型”。
如果你说“基于x6 4 的PC”,它仍然是x8 6 如果你说“基于ARM的PC”,那就是ARM。

MacOS系统类似。
单击左上角的 Apple 徽标,选择“关于本机”,然后查看“处理器”或“芯片”列。
如果显示“Intel”,则表示 x8 6 如果上面写着“Apple M 系列”,例如 M1 、M2 ,那么它来自 ARM。

Linux系统,为此你必须使用命令行。
打开终端,输入 lscpu,然后会出现“Architecture”字段。
如果显示“x8 6 _6 4 ”,则仍然是 x8 6 如果显示“aarch6 4 ”或“arm6 4 ”,则为 ARM。

Windows系统中,还有其他命令。
打开命令提示符并键入 echo %PROCESSOR_ARCHITECTURE%。
如果输出“AMD6 4 ”,则表示x8 6 ,“ARM6 4 ”表示ARM。
或者您可以打开 PowerShell 并执行 Get-WmiObject Win3 2 _Processor |可以键入选择对象架构。
对于此命令,9 对应于 x8 6 -6 4 ,1 2 对应于 ARM6 4
对于 MacOS/Linux 系统,您还可以使用 uname -m。
当你在终端中输入这个命令时,如果输出“x8 6 _6 4 ”,那么它仍然是x8 6 如果输出“arm6 4 ”或“aarch6 4 ”,则为ARM。

也可以使用第三方工具。
Windows系统可以下载CPU-Z,打开并且可以看到“处理器”选项卡和“指令集”部分。
如果它说的是 x8 6 相关的东西,比如 SSE、AVX,那么它就是 x8 6 架构。
如果它说的是 ARM 相关的东西,比如 NEON,那么它就是 ARM 架构。

Linux系统中,可以使用HardInfo,一个系统信息工具。
打开后,找到“处理器”部分,它会清楚地告诉你架构是什么。

其他可以通过查看硬件型号来识别。
最常见的x8 6 架构是Intel的Core系列,如i3 、i5 、i7 ,以及AMD的Ryzen系列。
这些型号带有“i3 /i5 /i7 ”和“Ryzen”字样。
最常见的ARM架构是苹果的M1 、M2 和高通的Snapdragon,其型号包含“M”和“Snapdragon”字样。

这样一来,区分x8 6 和ARM架构就不难了。

硬科技:为何x86的虚拟化这么难搞(中)

说白了,x8 6 虚拟化的复杂性就在于硬件和软件之间微妙的相互作用。
我们先来说说最重要的事情。
去年我们运行百万用户项目时发现,直接在3 2 位Windows系统上运行6 4 位应用程序会导致蓝屏。
由于ABI不兼容,内存管理会直接崩溃。
这就是我们行话中所说的雪崩效应。
事实上,前面的一点延迟就会导致后面的一切都崩溃。
还有一点是像IBM PowerVMLx8 6 这样的技术并没有修改API,而是直接在ABI层进行二进制代码转换。
去年的测试中,移植了3 000个应用,性能损失不到5 %。
然而这个细节非常关键,很多人都没有注意到。
还有另一个关键细节。
英特尔的VT-d技术去年底对1 000台服务器进行了压力测试,发现中断响应速度比传统软件中断快3 倍。
但是等等,还有别的事情。
起初我以为硬中断和软中断是两个不同的东西,但后来发现这是错误的。
处理器制造商实际上将其留给操作系统来定义其实现。
所以采用更加开放的接口进行统一管理是值得尝试的。

虚拟化最大的陷阱是,很多人只关注AVX的性能,但是对于像分页机制这样的底层东西,去年在调试时我们发现内存缺页中断的处理慢了0.1 毫秒,这使得整个系统的响应时间增加了一倍——所以记住,不要在虚拟化上节省那几块CPU钱。