2009-06-19 44 views
6

如何以編程方式確定我的機器是x86,x64還是IA64?如何以編程方式確定我的處理器類型?

+1

你可以打開電腦,看看CPU。 你是否在尋找一個代表答案? – 2009-06-19 16:56:13

+0

也許你的意思是問「我怎麼知道我的機器類型是什麼?」 – belgariontheking 2009-06-19 16:57:13

+0

如果你在Linux上試試'uname -m' – 2009-06-19 16:58:16

回答

6

在Windows系統中,你可以得到環境變量PROCESSOR_ARCHITECTURE。這是一篇MSDN文章,解釋可以返回的值。

PROCESSOR_ARCHITECTURE=AMD64 
PROCESSOR_ARCHITECTURE=IA64 
PROCESSOR_ARCHITECTURE=x86 
0

CPU-Z是你想要的程序,它會告訴你,你有哪些處理器和哪些擴展支持

0

在C#:

using System; 
using Microsoft.Win32; 

    class Class1 
    { 
    static void Main(string[] args) 
    { 
     RegistryKey RegKey = Registry.LocalMachine; 
     RegKey = RegKey.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0"); 
     Object cpuSpeed = RegKey.GetValue("~MHz"); 
     Object cpuType = RegKey.GetValue("VendorIdentifier"); 
     Console.WriteLine("You have a {0} running at {1} MHz.",cpuType,cpuSpeed); 
    } 
    } 
0

執行cat/proc/cpuinfo中

0

什麼是通常比底層處理器更重要的是什麼模式,操作系統正在運行中,除了安裝在主機上的處理器。

檢查的「UNAME -p」輸出(或UNAME(2))

英特爾採用了AMD的擴展64位指令所以「x86_64的」值意味着你運行的是英特爾或AMD 64位處理器,否則你正在運行常規的x86 ISA。

0

在Java中,你不需要知道。 ;)

1

VBScript中,檢查PROCESSOR_ARCHITECTURE環境變量:

Set oShell = CreateObject("WScript.Shell") 
Set oEnv = oShell.Environment("System") 
Select Case LCase(oEnv("PROCESSOR_ARCHITECTURE")) 
    Case "x86" 
    ' x86 
    Case "amd64" 
    ' amd64 
    Case "ia64" 
    ' ia64 
    Case Else 
    ' other 
End Select 

VBScript中,使用WMI:

Const PROCESSOR_ARCHITECTURE_X86 = 0 
Const PROCESSOR_ARCHITECTURE_IA64 = 6 
Const PROCESSOR_ARCHITECTURE_X64 = 9 

strComputer = "." 

Set oWMIService = GetObject("winmgmts:" & _ 
    "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") 

Set colProcessors = oWMIService.ExecQuery("SELECT * FROM Win32_Processor") 

For Each oProcessor In colProcessors 
    Select Case oProcessor.Architecture 
    Case PROCESSOR_ARCHITECTURE_X86 
     ' x86 
    Case PROCESSOR_ARCHITECTURE_X64 
     ' x64 
    Case PROCESSOR_ARCHITECTURE_IA64 
     ' ia64 
    Case Else 
     ' other 
    End Select 
Next 
相關問題